List of usage examples for org.springframework.core.type.filter AnnotationTypeFilter AnnotationTypeFilter
public AnnotationTypeFilter(Class<? extends Annotation> annotationType)
From source file:org.elasticsoftware.elasticactors.runtime.ElasticActorsBootstrapper.java
public void init() { // annotation configuration context applicationContext = new AnnotationConfigApplicationContext(); // set the correct configurations // ensure the EA annotations are scanned applicationContext.addIncludeFilters(new AnnotationTypeFilter(ServiceActor.class)); // generate correct names for ServiceActor annotated actors applicationContext.setBeanNameGenerator(new ActorAnnotationBeanNameGenerator()); // find all the paths to scan applicationContext.scan(ScannerHelper.findBasePackagesOnClasspath(CONFIGURATION_BASEPACKAGE)); // load em up applicationContext.refresh();/* w w w . j a v a2s .c o m*/ // add shutdown hook Runtime.getRuntime().addShutdownHook(new Thread("SHUTDOWN-HOOK") { @Override public void run() { applicationContext.destroy(); } }); }
From source file:org.owasp.webgoat.application.WebGoatServletListener.java
private void loadServlets(ServletContextEvent sce) { final ServletContext servletContext = sce.getServletContext(); ClassPathScanningCandidateComponentProvider provider = new ClassPathScanningCandidateComponentProvider( false);//from w ww. j a v a 2 s . c o m provider.addIncludeFilter(new AnnotationTypeFilter(LessonServletMapping.class)); Set<BeanDefinition> candidateComponents = provider.findCandidateComponents("org.owasp.webgoat"); try { for (BeanDefinition beanDefinition : candidateComponents) { Class controllerClass = Class.forName(beanDefinition.getBeanClassName()); LessonServletMapping pathAnnotation = (LessonServletMapping) controllerClass .getAnnotation(LessonServletMapping.class); final ServletRegistration.Dynamic dynamic = servletContext .addServlet(controllerClass.getSimpleName(), controllerClass); dynamic.addMapping(pathAnnotation.path()); } } catch (Exception e) { logger.error("Error", e); } }
From source file:fr.gael.dhus.gwt.GWTWebapp.java
@Override public void init() { this.name = ""; this.servlets = new ArrayList<WebServlet>(); this.welcomeFiles = new ArrayList<String>(); servlets.add(new GWTClientWebServlet("home", "/home")); welcomeFiles.add("home"); ClassPathScanningCandidateComponentProvider scan = new ClassPathScanningCandidateComponentProvider(false); scan.addIncludeFilter(new AnnotationTypeFilter(RPCService.class)); logger.info(" Initializing RPC services"); for (BeanDefinition bd : scan.findCandidateComponents("fr.gael.dhus.gwt.services")) { logger.info(" - service : " + bd.getBeanClassName()); try {// ww w .j a v a 2s .c o m Class<?> servletClass = GWTWebapp.class.getClassLoader().loadClass(bd.getBeanClassName()); RPCService annotation = AnnotationUtils.findAnnotation(servletClass, RPCService.class); servlets.add(new RPCServlet((Servlet) (servletClass.newInstance()), annotation.value(), "/" + annotation.value())); } catch (ClassNotFoundException e) { System.err.println("Cannot load service : '" + bd.getBeanClassName() + "'"); e.printStackTrace(); } catch (InstantiationException e) { e.printStackTrace(); } catch (IllegalAccessException e) { e.printStackTrace(); } } }
From source file:com.foilen.smalltools.tools.Hibernate51Tools.java
/** * Generate the SQL file. This is based on the code in {@link LocalSessionFactoryBuilder#scanPackages(String...)} * * @param dialect//from w w w . ja v a 2 s .c o m * the dialect (e.g: org.hibernate.dialect.MySQL5InnoDBDialect ) * @param outputSqlFile * where to put the generated SQL file * @param useUnderscore * true: to have tables names like "employe_manager" ; false: to have tables names like "employeManager" * @param packagesToScan * the packages where your entities are */ public static void generateSqlSchema(Class<? extends Dialect> dialect, String outputSqlFile, boolean useUnderscore, String... packagesToScan) { BootstrapServiceRegistry bootstrapServiceRegistry = new BootstrapServiceRegistryBuilder().build(); MetadataSources metadataSources = new MetadataSources(bootstrapServiceRegistry); ClassPathScanningCandidateComponentProvider scanner = new ClassPathScanningCandidateComponentProvider( false); scanner.addIncludeFilter(new AnnotationTypeFilter(Entity.class)); scanner.addIncludeFilter(new AnnotationTypeFilter(Embeddable.class)); scanner.addIncludeFilter(new AnnotationTypeFilter(MappedSuperclass.class)); for (String pkg : packagesToScan) { for (BeanDefinition beanDefinition : scanner.findCandidateComponents(pkg)) { metadataSources.addAnnotatedClassName(beanDefinition.getBeanClassName()); } } StandardServiceRegistryBuilder standardServiceRegistryBuilder = new StandardServiceRegistryBuilder( bootstrapServiceRegistry); standardServiceRegistryBuilder.applySetting(AvailableSettings.DIALECT, dialect.getName()); StandardServiceRegistryImpl ssr = (StandardServiceRegistryImpl) standardServiceRegistryBuilder.build(); MetadataBuilder metadataBuilder = metadataSources.getMetadataBuilder(ssr); if (useUnderscore) { metadataBuilder.applyImplicitNamingStrategy(new SpringImplicitNamingStrategy()); metadataBuilder.applyPhysicalNamingStrategy(new SpringPhysicalNamingStrategy()); } new SchemaExport() // .setHaltOnError(true) // .setOutputFile(outputSqlFile) // .setFormat(true) // .setDelimiter(";") // .execute(EnumSet.of(TargetType.SCRIPT), SchemaExport.Action.CREATE, metadataBuilder.build()); }
From source file:com.mmnaseri.dragonfly.runtime.lookup.impl.AbstractAnnotatedObjectLookupSource.java
@Override protected AbstractTypeHierarchyTraversingFilter getFilter() { return new AnnotationTypeFilter(getAnnotation()); }
From source file:com.ocs.dynamo.ui.auth.DefaultPermissionCheckerImpl.java
@PostConstruct public void postConstruct() { // scan the class path for all classes annotated with @SpringView ClassPathScanningCandidateComponentProvider provider = new ClassPathScanningCandidateComponentProvider( true);// ww w . j av a2s. c o m provider.addIncludeFilter(new AnnotationTypeFilter(SpringView.class)); Set<BeanDefinition> views = provider.findCandidateComponents(basePackage); for (BeanDefinition d : views) { try { Class<?> clazz = Class.forName(d.getBeanClassName()); SpringView view = clazz.getAnnotation(SpringView.class); // store the permissions both under the bean name and the view // name - unfortunately these // don't always have to match but there is no way to tell this // to the authentication framework! Authorized auth = clazz.getAnnotation(Authorized.class); if (auth != null && auth.roles().length > 0) { int p = d.getBeanClassName().lastIndexOf("."); permissions.put(d.getBeanClassName().substring(p + 1), Arrays.asList(auth.roles())); editOnly.put(d.getBeanClassName().substring(p + 1), auth.editOnly()); permissions.put(view.name(), Arrays.asList(auth.roles())); editOnly.put(view.name(), auth.editOnly()); } } catch (ClassNotFoundException e) { LOG.error(e.getMessage(), e); } } }
From source file:hwolf.spring.boot.servlet.ClassPathScanner.java
@SuppressWarnings("unchecked") private ClassPathScanningCandidateComponentProvider buildClassPathScanner() { ClassPathScanningCandidateComponentProvider scanner = new ClassPathScanningCandidateComponentProvider( false);//from w w w . j a v a2 s . c o m for (Class<?> type : types) { if (type.isAnnotation()) { if (debug) { LOGGER.debug("Search for classes annotated with " + type); } scanner.addIncludeFilter(new AnnotationTypeFilter((Class<Annotation>) type)); } else { if (debug) { LOGGER.debug("Search for classes assignable to " + type); } scanner.addIncludeFilter(new AssignableTypeFilter(type)); } } return scanner; }
From source file:org.magtured.common.component.MemoryIdManager.java
private static Set<Class<WithId>> findAutonomousWithIdClassesInPackage(Class<?> packageClass) throws ClassNotFoundException { String basePackage = packageClass.getPackage().getName(); TypeFilterSet filters = new TypeFilterSet(new AssignableTypeFilter(WithId.class), new AnnotationTypeFilter(IdConfiguration.class)); return PackageUtil.findClassesInPackage(basePackage, filters); }
From source file:com.springinpractice.ch11.oxm.ClasspathScanningJaxb2Marshaller.java
/** * @return//from ww w . j a v a2s . c o m * @throws Exception */ private Class<?>[] getXmlRootElementClasses() throws Exception { ClassPathScanningCandidateComponentProvider scanner = new ClassPathScanningCandidateComponentProvider( false); scanner.addIncludeFilter(new AnnotationTypeFilter(XmlRootElement.class)); List<Class<?>> classes = new ArrayList<Class<?>>(); for (String basePackage : basePackages) { Set<BeanDefinition> definitions = scanner.findCandidateComponents(basePackage); for (BeanDefinition definition : definitions) { String className = definition.getBeanClassName(); log.info("Found class: {}", className); classes.add(Class.forName(className)); } } return classes.toArray(new Class<?>[0]); }
From source file:edu.rit.flick.config.FileArchiverExtensionRegistry.java
/** * Constructs the file archiver extension registry and scans for * FileArchiver classes./*from w w w . j a va 2 s . c o m*/ */ private FileArchiverExtensionRegistry() { registry = new HashMap<String, FileDeflatorInflator>(); deflationOptionSets = new ArrayList<DeflationOptionSet>(); inflationOptionSets = new ArrayList<InflationOptionSet>(); final ClassPathScanningCandidateComponentProvider scanner = new ClassPathScanningCandidateComponentProvider( false) { @Override protected boolean isCandidateComponent(AnnotatedBeanDefinition beanDefinition) { return beanDefinition.getMetadata().isIndependent(); } }; scanner.addIncludeFilter(new AnnotationTypeFilter(RegisterFileDeflatorInflator.class)); for (final BeanDefinition bd : scanner.findCandidateComponents("*")) { try { final Class<?> cl = Class.forName(bd.getBeanClassName()); final RegisterFileDeflatorInflator fileDIP = cl.getAnnotation(RegisterFileDeflatorInflator.class); if (fileDIP != null) registerFileArchiverExtensions(fileDIP); } catch (Exception e) { } } }