protected ClassAnnotationInformationFactory(final Class<A> annotationType, final Class<?> multiAnnotationType) { this.annotationType = annotationType; this.annotationDotName = DotName.createSimple(annotationType.getName()); this.multiAnnotationType = multiAnnotationType; if (multiAnnotationType != null) { this.multiAnnotationDotName = DotName.createSimple(multiAnnotationType.getName()); } else { this.multiAnnotationDotName = null; } }
private FacesAnnotation(Class<? extends Annotation> annotationClass) { this.annotationClass = annotationClass; this.indexName = DotName.createSimple(annotationClass.getName()); } }
public AnnotationType(Class<? extends Annotation> annotation) { this.name = DotName.createSimple(annotation.getName()); this.inherited = annotation.isAnnotationPresent(Inherited.class); }
@Override public boolean containsAnnotation(Class<? extends Annotation> annotation) { return containsAnnotation(classInfo, DotName.createSimple(annotation.getName()), annotation); }
private boolean isAnnotationDeclared(ClassInfo classInfo, Class<? extends Annotation> annotation) { return isAnnotationDeclared(classInfo, DotName.createSimple(annotation.getName())); }
private SessionType determineSessionType(final String ejbClass, final CompositeIndex compositeIndex) { if(ejbClass == null) { return null; } final ClassInfo info = compositeIndex.getClassByName(DotName.createSimple(ejbClass)); if (info == null) { return null; } if(info.annotations().get(STATEFUL_ANNOTATION) != null) { return SessionType.Stateful; } else if(info.annotations().get(STATELESS_ANNOTATION) != null) { return SessionType.Stateless; } else if(info.annotations().get(SINGLETON_ANNOTATION) != null) { return SessionType.Singleton; } return null; }
private Set<String> findPersistenceTypeNames(PersistenceUnitMetadata pu) { synchronized (CACHED_TYPENAMES) { Set<String> typeNames = CACHED_TYPENAMES.get(pu); if (typeNames != null) { return typeNames; } } Set<String> persistenceTypeNames = new HashSet<String>(); for (Map.Entry<URL, Index> entry : pu.getAnnotationIndex().entrySet()) { List<AnnotationInstance> instances = entry.getValue().getAnnotations(DotName.createSimple(Entity.class.getName())); for (AnnotationInstance instance : instances) { AnnotationTarget target = instance.target(); if (target instanceof ClassInfo) { ClassInfo classInfo = (ClassInfo) target; persistenceTypeNames.add(classInfo.name().toString()); } } } synchronized (CACHED_TYPENAMES) { CACHED_TYPENAMES.put(pu, persistenceTypeNames); } return persistenceTypeNames; }
private DotName getPackageName(DotName name) { if (name.isComponentized()) { while (name.isInner()) { name = name.prefix(); if (name == null) { throw new IllegalStateException("Could not determine package from corrupted class name"); } } return name.prefix(); } else { final int lastIndex = name.local().lastIndexOf("."); if (lastIndex == -1) { return name; } return DotName.createSimple(name.local().substring(0, name.local().lastIndexOf("."))); } }
@Override public void deploy(DeploymentPhaseContext phaseContext) throws DeploymentUnitProcessingException { final DeploymentUnit unit = phaseContext.getDeploymentUnit(); final ModuleLoader moduleLoader = Module.getBootModuleLoader(); final ModuleSpecification moduleSpec = unit.getAttachment(Attachments.MODULE_SPECIFICATION); moduleSpec.addSystemDependency(new ModuleDependency(moduleLoader, TRANSACTION_API, false, false, true, false)); moduleSpec.addSystemDependency(new ModuleDependency(moduleLoader, ModuleIdentifier.fromString("org.wildfly.transaction.client"), false, false, true, false)); final CompositeIndex compositeIndex = unit.getAttachment(Attachments.COMPOSITE_ANNOTATION_INDEX); if (compositeIndex == null) { return; } final List<AnnotationInstance> transactionalAnnotations = compositeIndex.getAnnotations(DotName.createSimple(Transactional.class.getName())); final List<AnnotationInstance> transactionScopedAnnotations = compositeIndex.getAnnotations(DotName.createSimple(TransactionScoped.class.getName())); if (transactionalAnnotations.size() > 0 || transactionScopedAnnotations.size() > 0) { addJTSModuleDependencyToDeployment(unit); } }
ClassInfo classInfo = index.getClassByName(DotName.createSimple(name)); allKnownClasses.add(name); if (classInfo != null && hasBeanDefiningAnnotation(classInfo, beanDefiningAnnotations)) {
public Components(DeploymentUnit deploymentUnit, Map<ResourceRoot, Index> indexes) { componentDescriptionProcessors = ServiceLoader.load(ComponentDescriptionProcessor.class, WildFlySecurityManager.getClassLoaderPrivileged(BeanArchiveProcessor.class)); for (ComponentDescription component : deploymentUnit.getAttachment(org.jboss.as.ee.component.Attachments.EE_MODULE_DESCRIPTION).getComponentDescriptions()) { ResourceRoot resourceRoot = null; DotName componentClassName = DotName.createSimple(component.getComponentClassName()); for (Entry<ResourceRoot, Index> entry : indexes.entrySet()) { final Index index = entry.getValue(); if (index != null) { if (index.getClassByName(componentClassName) != null) { resourceRoot = entry.getKey(); break; } } } if (resourceRoot == null) { implicitComponentDescriptions.add(component); } if (resourceRoot == null || isClassesRoot(resourceRoot)) { // special handling resourceRoot = deploymentUnit.getAttachment(Attachments.DEPLOYMENT_ROOT); } componentDescriptions.put(resourceRoot, component); // Process component descriptions for (ComponentDescriptionProcessor processor : componentDescriptionProcessors) { processor.processComponentDescription(resourceRoot, component); } } }
/** * * @param className * @param index * @param annotationClassAnnotationsCache */ public WeldClassFileInfo(String className, CompositeIndex index, ComputingCache<DotName, Set<String>> annotationClassAnnotationsCache, ClassLoader classLoader) { this.index = index; this.annotationClassAnnotationsCache = annotationClassAnnotationsCache; this.classInfo = index.getClassByName(DotName.createSimple(className)); if (this.classInfo == null) { throw WeldLogger.ROOT_LOGGER.nameNotFoundInIndex(className); } this.isVetoed = isVetoedTypeOrPackage(); this.hasCdiConstructor = this.classInfo.hasNoArgsConstructor() || hasInjectConstructor(); this.classLoader = classLoader; }
DotName annotation = DotName.createSimple(annClass.getName()); List<AnnotationInstance> classesWithAnnotation = index.getAnnotations(annotation); Set<Class<?>> classesForAnnotation = new HashSet<Class<?>>();
@Override public Collection<Annotation> getAnnotation(Class<?> annotationClass) { List<AnnotationInstance> instances = backingRepository.getAnnotations(DotName.createSimple(annotationClass .getName())); ArrayList<Annotation> annotations = new ArrayList<Annotation>(instances.size());
DotName className = DotName.createSimple(type.getName()); Set<ClassInfo> classInfos = new HashSet<>(); classInfos.addAll(processHandlesType(className, type, index, parent));
if (compositeIndex.getClassByName(DotName.createSimple(clazz)) == null) { boolean found = false; for (String pack : BUILTIN_TAGLIBS) {
return; List<AnnotationInstance> applicationExceptionAnnotations = compositeIndex.getAnnotations(DotName.createSimple(ApplicationException.class.getName())); if (applicationExceptionAnnotations == null || applicationExceptionAnnotations.isEmpty()) { return;
processApplicationAnnotations = compositeIndex.getAnnotations(DotName.createSimple(ProcessApplication.class.getName())); postDeployAnnnotations = compositeIndex.getAnnotations(DotName.createSimple(PostDeploy.class.getName())); preUndeployAnnnotations = compositeIndex.getAnnotations(DotName.createSimple(PreUndeploy.class.getName())); servletProcessApplications = compositeIndex.getAllKnownSubclasses(DotName.createSimple(ServletProcessApplication.class.getName())); } else { return null;
processApplicationAnnotations = compositeIndex.getAnnotations(DotName.createSimple(ProcessApplication.class.getName())); postDeployAnnnotations = compositeIndex.getAnnotations(DotName.createSimple(PostDeploy.class.getName())); preUndeployAnnnotations = compositeIndex.getAnnotations(DotName.createSimple(PreUndeploy.class.getName())); servletProcessApplications = compositeIndex.getAllKnownSubclasses(DotName.createSimple(ServletProcessApplication.class.getName())); } else { return null;
processApplicationAnnotations = compositeIndex.getAnnotations(DotName.createSimple(ProcessApplication.class.getName())); postDeployAnnnotations = compositeIndex.getAnnotations(DotName.createSimple(PostDeploy.class.getName())); preUndeployAnnnotations = compositeIndex.getAnnotations(DotName.createSimple(PreUndeploy.class.getName())); servletProcessApplications = compositeIndex.getAllKnownSubclasses(DotName.createSimple(ServletProcessApplication.class.getName())); } else { return null;