Example usage for org.springframework.core.type AnnotationMetadata getClassName

List of usage examples for org.springframework.core.type AnnotationMetadata getClassName

Introduction

In this page you can find the example usage for org.springframework.core.type AnnotationMetadata getClassName.

Prototype

String getClassName();

Source Link

Document

Return the name of the underlying class.

Usage

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 av  a  2  s  .c  o  m*/
    }

    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:me.yanaga.winter.data.jpa.spring.config.metadata.EnableRepositoriesMetadata.java

public static EnableRepositoriesMetadata of(AnnotationMetadata annotationMetadata) {
    List<String> packageAttributes = getPackageAttributes(annotationMetadata);
    if (packageAttributes.stream().allMatch(l -> l.isEmpty())) {
        return new EnableRepositoriesMetadata(
                ImmutableList.of(obtainPackageName(annotationMetadata.getClassName())));
    }//from  www  . j  a  v  a 2 s .c  o m
    return new EnableRepositoriesMetadata(packageAttributes);
}

From source file:com.github.yulechen.springannotation.test.ConfigurationClassUtils.java

/**
 * Check the given metadata for a lite configuration class candidate (e.g. a
 * class annotated with {@code @Component} or just having {@code @Import}
 * declarations or {@code @Bean methods}).
 * /*from  w w  w  .  java  2  s .c  om*/
 * @param metadata
 *            the metadata of the annotated class
 * @return {@code true} if the given class is to be processed as a lite
 *         configuration class, just registering it and scanning it for
 *         {@code @Bean} methods
 */
public static boolean isLiteConfigurationCandidate(AnnotationMetadata metadata) {
    // Do not consider an interface or an annotation...
    if (metadata.isInterface()) {
        return false;
    }

    // Any of the typical annotations found?
    for (String indicator : candidateIndicators) {
        if (metadata.isAnnotated(indicator)) {
            return true;
        }
    }

    // Finally, let's look for @Bean methods...
    try {
        return metadata.hasAnnotatedMethods(Bean.class.getName());
    } catch (Throwable ex) {
        if (logger.isDebugEnabled()) {
            logger.debug(
                    "Failed to introspect @Bean methods on class [" + metadata.getClassName() + "]: " + ex);
        }
        return false;
    }
}

From source file:com.icfcc.cache.annotation.AbstractCachingConfiguration.java

public void setImportMetadata(AnnotationMetadata importMetadata) {
    this.enableCaching = importMetadata.getAnnotationAttributes(EnableCaching.class.getName(), false);
    Assert.notNull(this.enableCaching,
            "@EnableCaching is not present on importing class " + importMetadata.getClassName());
}

From source file:com.developmentsprint.spring.breaker.annotations.AbstractCircuitBreakerConfiguration.java

@Override
public void setImportMetadata(AnnotationMetadata importMetadata) {
    this.enableCircuitBreakers = AnnotationAttributes
            .fromMap(importMetadata.getAnnotationAttributes(EnableCircuitBreakers.class.getName(), false));
    Assert.notNull(this.enableCircuitBreakers,
            "@EnableCircuitBreakers is not present on importing class " + importMetadata.getClassName());
}

From source file:org.zalando.stups.spring.cloud.netflix.feign.OAuth2FeignClientsRegsitrar.java

private BeanDefinitionHolder createBeanDefinition(final AnnotationMetadata annotationMetadata) {
    Map<String, Object> attributes = annotationMetadata
            .getAnnotationAttributes(FeignClient.class.getCanonicalName());

    String className = annotationMetadata.getClassName();
    BeanDefinitionBuilder definition = BeanDefinitionBuilder
            .genericBeanDefinition(TokensFeignClientFactoryBean.class);

    validate(attributes);/*from   ww  w . j  a  va2s . c o m*/
    definition.addPropertyValue("url", getUrl(attributes));
    definition.addPropertyValue("name", getServiceId(attributes));
    definition.addPropertyValue("type", className);

    String beanName = StringUtils.uncapitalize(className.substring(className.lastIndexOf(".") + 1));
    return new BeanDefinitionHolder(definition.getBeanDefinition(), beanName);
}

From source file:com.ryantenney.metrics.spring.config.annotation.MetricsConfigurationSupport.java

@Override
public void setImportMetadata(AnnotationMetadata importMetadata) {
    final AnnotationAttributes enableMetrics = AnnotationAttributes
            .fromMap(importMetadata.getAnnotationAttributes(EnableMetrics.class.getName(), false));
    Assert.notNull(enableMetrics, "@" + EnableMetrics.class.getSimpleName()
            + " is not present on importing class " + importMetadata.getClassName());

    this.proxyConfig = new ProxyConfig();
    this.proxyConfig.setExposeProxy(enableMetrics.getBoolean("exposeProxy"));
    this.proxyConfig.setProxyTargetClass(enableMetrics.getBoolean("proxyTargetClass"));
}

From source file:us.swcraft.springframework.cache.aerospike.config.annotation.AerospikeCacheConfiguration.java

public void setImportMetadata(AnnotationMetadata importMetadata) {
    Map<String, Object> enableAttrMap = importMetadata
            .getAnnotationAttributes(EnableAerospikeCacheManager.class.getName());
    AnnotationAttributes enableAttrs = AnnotationAttributes.fromMap(enableAttrMap);
    if (enableAttrs == null) {
        // search parent classes
        Class<?> currentClass = ClassUtils.resolveClassName(importMetadata.getClassName(), beanClassLoader);
        for (Class<?> classToInspect = currentClass; classToInspect != null; classToInspect = classToInspect
                .getSuperclass()) {/*www .j  av a 2s.com*/
            EnableAerospikeCacheManager enableWebSecurityAnnotation = AnnotationUtils
                    .findAnnotation(classToInspect, EnableAerospikeCacheManager.class);
            if (enableWebSecurityAnnotation == null) {
                continue;
            }
            enableAttrMap = AnnotationUtils.getAnnotationAttributes(enableWebSecurityAnnotation);
            enableAttrs = AnnotationAttributes.fromMap(enableAttrMap);
        }
    }
    defaultTimeToLiveInSeconds = enableAttrs.getNumber("defaultTimeToLiveInSeconds");
    defaultNamespace = enableAttrs.getString("defaultNamespace");
    defaultCacheName = enableAttrs.getString("defaultCacheName");
    compression = enableAttrs.getEnum("compression");
    serializerClass = enableAttrs.getClass("serializerClass");

    cachesConfiguration = enableAttrs.getAnnotationArray("caches");
}

From source file:us.swcraft.springframework.session.aerospike.config.annotation.web.http.AerospikeHttpSessionConfiguration.java

public void setImportMetadata(AnnotationMetadata importMetadata) {
    Map<String, Object> enableAttrMap = importMetadata
            .getAnnotationAttributes(EnableAerospikeHttpSession.class.getName());
    AnnotationAttributes enableAttrs = AnnotationAttributes.fromMap(enableAttrMap);
    if (enableAttrs == null) {
        // search parent classes
        Class<?> currentClass = ClassUtils.resolveClassName(importMetadata.getClassName(), beanClassLoader);
        for (Class<?> classToInspect = currentClass; classToInspect != null; classToInspect = classToInspect
                .getSuperclass()) {/*from   www  . jav  a  2 s  .c  om*/
            EnableAerospikeHttpSession enableWebSecurityAnnotation = AnnotationUtils
                    .findAnnotation(classToInspect, EnableAerospikeHttpSession.class);
            if (enableWebSecurityAnnotation == null) {
                continue;
            }
            enableAttrMap = AnnotationUtils.getAnnotationAttributes(enableWebSecurityAnnotation);
            enableAttrs = AnnotationAttributes.fromMap(enableAttrMap);
        }
    }
    maxInactiveIntervalInSeconds = enableAttrs.getNumber("maxInactiveIntervalInSeconds");
    namespace = enableAttrs.getString("namespace");
    setname = enableAttrs.getString("setname");
}

From source file:com.github.ljtfreitas.restify.spring.configure.RestifyConfigurationRegistrar.java

@Override
public void registerBeanDefinitions(AnnotationMetadata metadata, BeanDefinitionRegistry registry) {
    EnableRestifyAnnotationAttributes attributes = new EnableRestifyAnnotationAttributes(
            metadata.getAnnotationAttributes(EnableRestify.class.getName(), true));

    RestifyableTypeScanner scanner = RestifyableTypeScanner.excluding(filters(attributes.exclude()));

    String[] packages = attributes.packages().length == 0 ? new String[] { packageOf(metadata.getClassName()) }
            : attributes.packages();//from w  w  w . j  a  v a2 s.co  m

    doScan(Arrays.asList(packages), scanner, registry);
}