List of usage examples for org.springframework.core.type.classreading SimpleMetadataReaderFactory SimpleMetadataReaderFactory
public SimpleMetadataReaderFactory()
From source file:org.wallride.tools.Hbm2ddl.java
public static void main(String[] args) throws Exception { String locationPattern = "classpath:/org/wallride/domain/*"; final BootstrapServiceRegistry registry = new BootstrapServiceRegistryBuilder().build(); final MetadataSources metadataSources = new MetadataSources(registry); final StandardServiceRegistryBuilder registryBuilder = new StandardServiceRegistryBuilder(registry); registryBuilder.applySetting(AvailableSettings.DIALECT, ExtendedMySQL5InnoDBDialect.class.getCanonicalName()); registryBuilder.applySetting(AvailableSettings.GLOBALLY_QUOTED_IDENTIFIERS, true); registryBuilder.applySetting(AvailableSettings.PHYSICAL_NAMING_STRATEGY, PhysicalNamingStrategySnakeCaseImpl.class); final PathMatchingResourcePatternResolver resourcePatternResolver = new PathMatchingResourcePatternResolver(); final Resource[] resources = resourcePatternResolver.getResources(locationPattern); final SimpleMetadataReaderFactory metadataReaderFactory = new SimpleMetadataReaderFactory(); for (Resource resource : resources) { MetadataReader metadataReader = metadataReaderFactory.getMetadataReader(resource); AnnotationMetadata metadata = metadataReader.getAnnotationMetadata(); if (metadata.hasAnnotation(Entity.class.getName())) { metadataSources.addAnnotatedClass(Class.forName(metadata.getClassName())); }/*from ww w .j a v a2 s . com*/ } final StandardServiceRegistryImpl registryImpl = (StandardServiceRegistryImpl) registryBuilder.build(); final MetadataBuilder metadataBuilder = metadataSources.getMetadataBuilder(registryImpl); new SchemaExport().setHaltOnError(true).setDelimiter(";").create(EnumSet.of(TargetType.STDOUT), metadataBuilder.build()); }
From source file:org.duracloud.account.db.util.security.impl.AnnotationParserImpl.java
private MetadataReader getMetadataReader(Class<?> targetClass) { MetadataReaderFactory metadataReaderFactory = new SimpleMetadataReaderFactory(); try {/*from w w w.j a va2 s .co m*/ return metadataReaderFactory.getMetadataReader(targetClass.getName()); } catch (IOException e) { log.warn("Error reading metadata. {}", e.getMessage()); throw new DuraCloudRuntimeException(e); } }
From source file:org.codehaus.mojo.gwt.webxml.ServletAnnotationFinder.java
/** * @param packageName//from w w w.j a va 2 s . c om * @return cannot return <code>null</null> * @throws IOException */ public Set<ServletDescriptor> findServlets(String packageName, String startPath, ClassLoader classLoader) throws IOException { Set<ServletDescriptor> servlets = new LinkedHashSet<ServletDescriptor>(); PathMatchingResourcePatternResolver pathMatchingResourcePatternResolver = new PathMatchingResourcePatternResolver( classLoader); String patternFinder = ResourcePatternResolver.CLASSPATH_ALL_URL_PREFIX + ClassUtils.convertClassNameToResourcePath(packageName) + "/**/*.class"; Resource[] resources = pathMatchingResourcePatternResolver.getResources(patternFinder); SimpleMetadataReaderFactory simpleMetadataReaderFactory = new SimpleMetadataReaderFactory(); getLogger().debug("springresource " + resources.length + " for pattern " + patternFinder); for (Resource resource : resources) { getLogger().debug("springresource " + resource.getFilename()); MetadataReader metadataReader = simpleMetadataReaderFactory.getMetadataReader(resource); if (metadataReader.getAnnotationMetadata().hasAnnotation(RemoteServiceRelativePath.class.getName())) { Map<String, Object> annotationAttributes = metadataReader.getAnnotationMetadata() .getAnnotationAttributes(RemoteServiceRelativePath.class.getName()); getLogger().debug("found RemoteServiceRelativePath annotation for class " + metadataReader.getClassMetadata().getClassName()); if (StringUtils.isNotBlank(startPath)) { StringBuilder path = new StringBuilder(); if (!startPath.startsWith("/")) { path.append('/'); } path.append(startPath); String annotationPathValue = (String) annotationAttributes.get("value"); if (!annotationPathValue.startsWith("/")) { path.append('/'); } path.append(annotationPathValue); ServletDescriptor servletDescriptor = new ServletDescriptor(path.toString(), metadataReader.getClassMetadata().getClassName()); servlets.add(servletDescriptor); } else { StringBuilder path = new StringBuilder(); String annotationPathValue = (String) annotationAttributes.get("value"); if (!annotationPathValue.startsWith("/")) { path.append('/'); } path.append(annotationPathValue); ServletDescriptor servletDescriptor = new ServletDescriptor(path.toString(), metadataReader.getClassMetadata().getClassName()); servlets.add(servletDescriptor); } } } return servlets; }