Package org.jboss.seam.solder.literal

Examples of org.jboss.seam.solder.literal.NamedLiteral


         return authenticators.select(authenticatorClass).get();
      }     
     
      if (!Strings.isEmpty(authenticatorName))
      {
         Instance<Authenticator> selected = authenticators.select(new NamedLiteral(authenticatorName));
         if (selected.isAmbiguous())
         {
            log.error("Multiple Authenticators found with configured name [" + authenticatorName + "]");
            return null;
         }
View Full Code Here


      // support for @Named packages
      Named namedFromPackage = null;
      if (pkg != null && pkg.isAnnotationPresent(Named.class) && !annotatedType.isAnnotationPresent(Named.class))
      {
         builder = initializeBuilder(builder, annotatedType);
         namedFromPackage = new NamedLiteral();
         builder.addToClass(namedFromPackage);
      }
     
      FullyQualified qualifiedOnPackage = null;
      if (pkg != null)
      {
         qualifiedOnPackage = pkg.getAnnotation(FullyQualified.class);
      }
     
      // support for @FullyQualified bean names on type (respect @Named if added by previous operation)
      if ((namedFromPackage != null || annotatedType.isAnnotationPresent(Named.class)) &&
            (qualifiedOnPackage != null || annotatedType.isAnnotationPresent(FullyQualified.class)))
      {
         builder = initializeBuilder(builder, annotatedType);
         String name = (namedFromPackage != null ? namedFromPackage.value() : annotatedType.getAnnotation(Named.class).value());
         if (name.length() == 0)
         {
            name = deriveBeanNameForType(javaClass);
         }
         Package targetPackage = resolveTargetPackage(annotatedType.getAnnotation(FullyQualified.class), qualifiedOnPackage, pkg);
         builder.removeFromClass(Named.class); // add w/o remove was failing in cases
         builder.addToClass(new NamedLiteral(qualify(targetPackage, name)));
      }

      // support for @Exact fields
      // support for @FullyQualified @Named producer fields
      for (AnnotatedField<? super X> f : annotatedType.getFields())
      {
         if (f.isAnnotationPresent(Exact.class))
         {
            Class<?> type = f.getAnnotation(Exact.class).value();
            builder = initializeBuilder(builder, annotatedType);
            builder.overrideFieldType(f, type);
         }
        
         if (f.isAnnotationPresent(Produces.class) && f.isAnnotationPresent(Named.class) &&
               (qualifiedOnPackage != null || f.isAnnotationPresent(FullyQualified.class)))
         {
            String name = f.getAnnotation(Named.class).value();
            if (name.length() == 0)
            {
               name = f.getJavaMember().getName();
            }
            Package targetPackage = resolveTargetPackage(f.getAnnotation(FullyQualified.class), qualifiedOnPackage, pkg);
            builder.removeFromField(f, Named.class); // add w/o remove was failing in cases
            builder.addToField(f, new NamedLiteral(qualify(targetPackage, name)));
         }
      }
      // support for @Exact method parameters
      // support for @FullyQualified @Named producer methods
      for (AnnotatedMethod<? super X> m : annotatedType.getMethods())
      {
         for (AnnotatedParameter<? super X> p : m.getParameters())
         {
            if (p.isAnnotationPresent(Exact.class))
            {
               Class<?> type = p.getAnnotation(Exact.class).value();
               builder = initializeBuilder(builder, annotatedType);
               builder.overrideParameterType(p, type);
            }
         }
        
         if (m.isAnnotationPresent(Produces.class) && m.isAnnotationPresent(Named.class) &&
               (qualifiedOnPackage != null || m.isAnnotationPresent(FullyQualified.class)))
         {
            String name = m.getAnnotation(Named.class).value();
            if (name.length() == 0)
            {
               if (Properties.isProperty(m.getJavaMember()))
               {
                  name = Properties.createProperty(m.getJavaMember()).getName();
               }
               else
               {
                  name = m.getJavaMember().getName();
               }
            }
            Package targetPackage = resolveTargetPackage(m.getAnnotation(FullyQualified.class), qualifiedOnPackage, pkg);
            builder.removeFromMethod(m, Named.class); // add w/o remove was failing in cases
            builder.addToMethod(m, new NamedLiteral(qualify(targetPackage, name)));
         }
      }
      // support for @Exact constructor parameters
      for (AnnotatedConstructor<X> c : annotatedType.getConstructors())
      {
View Full Code Here

TOP

Related Classes of org.jboss.seam.solder.literal.NamedLiteral

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.