List of usage examples for org.springframework.core.type.filter AnnotationTypeFilter AnnotationTypeFilter
public AnnotationTypeFilter(Class<? extends Annotation> annotationType, boolean considerMetaAnnotations)
From source file:com.sdl.odata.datasource.jpa.JpaPostProcessor.java
@PostConstruct public void setProvider() { if (provider == null) { provider = new ClassPathScanningCandidateComponentProvider(false); provider.addIncludeFilter(new AnnotationTypeFilter(Entity.class, false)); }/*from w w w. j ava 2s . c o m*/ }
From source file:com.zht.common.generator.util.LoadPackageClasses.java
/** * //from ww w.j ava 2 s. c o m * @param packagesToScan ???,?"package.a,package.b"?? * @param annotationFilter ???bean,? */ @SafeVarargs public LoadPackageClasses(String[] packagesToScan, Class<? extends Annotation>... annotationFilter) { if (packagesToScan != null) { for (String packagePath : packagesToScan) { this.packagesList.add(packagePath); } } if (annotationFilter != null) { for (Class<? extends Annotation> annotation : annotationFilter) { typeFilters.add(new AnnotationTypeFilter(annotation, false)); } } }
From source file:cn.wanghaomiao.seimi.core.SeimiScanner.java
@SafeVarargs public final Set<Class<?>> scan(String[] confPkgs, Class<? extends Annotation>... annotationTags) { Set<Class<?>> resClazzSet = new HashSet<>(); List<AnnotationTypeFilter> typeFilters = new LinkedList<>(); if (ArrayUtils.isNotEmpty(annotationTags)) { for (Class<? extends Annotation> annotation : annotationTags) { typeFilters.add(new AnnotationTypeFilter(annotation, false)); }//from www. j a va 2 s.c o m } if (ArrayUtils.isNotEmpty(confPkgs)) { for (String pkg : confPkgs) { String pattern = ResourcePatternResolver.CLASSPATH_ALL_URL_PREFIX + String.format(RESOURCE_PATTERN, ClassUtils.convertClassNameToResourcePath(pkg)); try { Resource[] resources = this.resourcePatternResolver.getResources(pattern); MetadataReaderFactory readerFactory = new CachingMetadataReaderFactory( this.resourcePatternResolver); for (Resource resource : resources) { if (resource.isReadable()) { MetadataReader reader = readerFactory.getMetadataReader(resource); String className = reader.getClassMetadata().getClassName(); if (ifMatchesEntityType(reader, readerFactory, typeFilters)) { Class<?> curClass = Thread.currentThread().getContextClassLoader() .loadClass(className); context.register(curClass); resClazzSet.add(curClass); } } } } catch (Exception e) { logger.error("?????[{}][{}]", pattern, StringUtils.join(typeFilters, ",")); } } } if (!context.isActive()) { context.refresh(); } return resClazzSet; }