List of usage examples for org.springframework.core.type.filter AssignableTypeFilter AssignableTypeFilter
public AssignableTypeFilter(Class<?> targetType)
From source file:org.lightadmin.core.config.bootstrap.scanning.AdministrationClassScanner.java
public AdministrationClassScanner() { super(new AnnotationTypeFilter(Administration.class), new AssignableTypeFilter(AdministrationConfiguration.class)); }
From source file:io.acme.solution.application.conf.CommandHandlerUtils.java
public static Map<String, CommandHandler> buildCommandHandlersRegistry(final String basePackage, final ApplicationContext context) { final Map<String, CommandHandler> registry = new HashMap<>(); final ClassPathScanningCandidateComponentProvider scanner = new ClassPathScanningCandidateComponentProvider( false);/*from w ww . j av a2 s . c o m*/ final AutowireCapableBeanFactory beanFactory = context.getAutowireCapableBeanFactory(); scanner.addIncludeFilter(new AssignableTypeFilter(CommandHandler.class)); CommandHandler currentHandler = null; for (BeanDefinition bean : scanner.findCandidateComponents(basePackage)) { currentHandler = (CommandHandler) beanFactory.createBean( ClassUtils.resolveClassName(bean.getBeanClassName(), context.getClassLoader()), AutowireCapableBeanFactory.AUTOWIRE_BY_TYPE, true); registry.put(currentHandler.getInterest(), currentHandler); } return registry; }
From source file:org.web4thejob.util.converter.JobletScanner.java
public JobletScanner() { super(false); addIncludeFilter(new AssignableTypeFilter(Joblet.class)); }
From source file:org.codehaus.grepo.core.config.GenericRepositoryBeanDefinitionScanner.java
/** * @param genericRepositoryType The generic repository interface. *//*from www .j av a 2s . c o m*/ public GenericRepositoryBeanDefinitionScanner(Class<?> genericRepositoryType) { super(false); if (genericRepositoryType != null) { // Note: we add default type filter which finds repositories which are of approriate // interface type and annotated with the Repository annotation CompositeTypeFilter typeFilter = new CompositeTypeFilter(); typeFilter.addTypeFilters(new AssignableTypeFilter(genericRepositoryType), new AnnotationTypeFilter(Repository.class)); addIncludeFilter(typeFilter); } }
From source file:com.github.dbourdette.glass.web.util.JobPathScanner.java
@PostConstruct protected void scanPaths() { ClassPathScanningCandidateComponentProvider provider = new ClassPathScanningCandidateComponentProvider( false);/*from w ww .j av a 2s . co m*/ provider.addIncludeFilter(new AssignableTypeFilter(Job.class)); for (BeanDefinition definition : provider.findCandidateComponents(configuration.getJobBasePackage())) { jobPaths.add(definition.getBeanClassName()); } Collections.sort(jobPaths); }
From source file:com.zergiu.tvman.shows.ShowsProviderFactoryBean.java
/** * //from w ww . jav a 2 s .c o m */ private void findProviders(String packageName) { ClassPathScanningCandidateComponentProvider scanner = new ClassPathScanningCandidateComponentProvider( false); scanner.addIncludeFilter(new AssignableTypeFilter(ShowProvider.class)); for (BeanDefinition bd : scanner.findCandidateComponents(packageName)) { ShowProvider provider = getProvider(bd); if (provider != null) { providers.put(provider.getProviderId(), provider); } } }
From source file:podd.model.visitor.VisitorAdapterUnitTest.java
@Test public void testCoversAllClasses() throws Exception { ClassPathScanningCandidateComponentProvider provider = new ClassPathScanningCandidateComponentProviderAllowInterface( true);/* w w w . ja v a 2 s . co m*/ provider.addIncludeFilter(new AssignableTypeFilter(Entity.class)); Set<BeanDefinition> components = provider.findCandidateComponents("podd/model"); resolveAndCheckPackage(components); }
From source file:org.openmrs.module.kenyaemr.calculation.CalculationManager.java
/** * Refreshes registered calculation classes *//*from w w w . j a va 2 s .c o m*/ public synchronized void refresh() { clear(); ClassPathScanningCandidateComponentProvider scanner = new ClassPathScanningCandidateComponentProvider( false); scanner.addIncludeFilter(new AssignableTypeFilter(BaseEmrCalculation.class)); for (BeanDefinition bd : scanner.findCandidateComponents(CalculationManager.class.getPackage().getName())) { try { Class clazz = Class.forName(bd.getBeanClassName()); calculationClasses.put(bd.getBeanClassName(), clazz); } catch (ClassNotFoundException e) { e.printStackTrace(); } log.info("Found calculation class :" + bd.getBeanClassName()); } }
From source file:org.opentides.bean.factory.support.BaseEntityRegistry.java
@Override public void afterPropertiesSet() throws Exception { if (packagesToScan == null) packagesToScan = new ArrayList<String>(); packagesToScan.add("org.opentides.bean"); baseEntities = new ArrayList<String>(); BeanDefinitionRegistry registry = new SimpleBeanDefinitionRegistry(); ClassPathBeanDefinitionScanner s = new ClassPathBeanDefinitionScanner(registry); TypeFilter tf = new AssignableTypeFilter(BaseEntity.class); s.resetFilters(false);//from w w w. j a v a2s . com s.addIncludeFilter(tf); s.scan(packagesToScan.toArray(new String[packagesToScan.size()])); for (String name : registry.getBeanDefinitionNames()) { Class<?> clazz = Class.forName(registry.getBeanDefinition(name).getBeanClassName()); if (BaseEntity.class.isAssignableFrom(clazz)) baseEntities.add(registry.getBeanDefinition(name).getBeanClassName()); } }
From source file:com.googlecode.flyway.core.migration.java.JavaMigrationResolver.java
public Collection<Migration> resolveMigrations() { Collection<Migration> migrations = new ArrayList<Migration>(); ClassPathScanningCandidateComponentProvider provider = new ClassPathScanningCandidateComponentProvider( false);/*w w w . j a v a2s .com*/ provider.addIncludeFilter(new AssignableTypeFilter(JavaMigration.class)); Set<BeanDefinition> components = provider.findCandidateComponents(basePackage); for (BeanDefinition beanDefinition : components) { ClassLoader classLoader = Thread.currentThread().getContextClassLoader(); Class<?> clazz = ClassUtils.resolveClassName(beanDefinition.getBeanClassName(), classLoader); JavaMigration javaMigration = (JavaMigration) BeanUtils.instantiateClass(clazz); migrations.add(new JavaMigrationExecutor(javaMigration)); } return migrations; }