/** * constructs a Reflections instance and scan according to given {@link * org.reflections.Configuration} * * <p>it is preferred to use {@link ConfigurationBuilder} */ public Reflections(final Configuration configuration) { this.configuration = configuration; store = new Store(configuration); if (configuration.getScanners() != null && !configuration.getScanners().isEmpty()) { // inject to scanners for (Scanner scanner : configuration.getScanners()) { scanner.setConfiguration(configuration); scanner.setStore(store.getOrCreate(scanner.getClass().getSimpleName())); } scan(); if (configuration.shouldExpandSuperTypes()) { expandSuperTypes(); } } }