Package org.jboss.beans.metadata.spi

Examples of org.jboss.beans.metadata.spi.ParameterMetaData


         else
         {
            parameters = new Object[size];
            for (int i = 0; i < size; i++)
            {
               ParameterMetaData pmd = params.get(i);
               TypeInfo typeInfo = null;
               if (signature[i] != null)
               {
                  typeInfo = configurator.getClassInfo(signature[i], classLoader);
               }
               // typeInfo might be null, but we can still get value in some cases
               ValueMetaData vmd = pmd.getValue();
               if (unget)
                  vmd.ungetValue(typeInfo, classLoader);
               else
                  parameters[i] = vmd.getValue(typeInfo, classLoader);
            }
View Full Code Here


   public TypeInfo getType(MetaDataVisitor visitor, MetaDataVisitorNode previous) throws Throwable
   {
      if (previous instanceof ParameterMetaData == false)
         throw new IllegalArgumentException("Previous node is not ParameterMetaData as expected: " + previous);
     
      ParameterMetaData parameter = (ParameterMetaData) previous;
      KernelControllerContext context = visitor.getControllerContext();
      String method = (methodName != null ? methodName : type);
      String[] parameterTypes = Configurator.getParameterTypes(false, parameters);
      MethodInfo methodInfo = Configurator.findMethodInfo(getClassInfo(context), method, parameterTypes);
      return applyCollectionOrMapCheck(methodInfo.getParameterTypes()[parameter.getIndex()]);
   }
View Full Code Here

         }
         // should be parameter
         if (previous instanceof ParameterMetaData == false)
            throw new IllegalArgumentException("Previous node is not ParameterMetaData as expected: " + previous);

         ParameterMetaData parameter = (ParameterMetaData) previous;
         String[] parameterTypes = Configurator.getParameterTypes(false, parameters);
         MethodInfo methodInfo = Configurator.findMethodInfo(classInfo, factoryMethod, parameterTypes, factoryClassName != null, true);
         return applyCollectionOrMapCheck(methodInfo.getParameterTypes()[parameter.getIndex()]);
      }
      else
      {
         KernelControllerContext context = visitor.getControllerContext();
         BeanInfo beanInfo = context.getBeanInfo();
         // find matching parameter
         if (previous instanceof ParameterMetaData)
         {
            ParameterMetaData parameter = (ParameterMetaData) previous;
            String[] paramTypes = Configurator.getParameterTypes(false, parameters);
            ConstructorInfo ci = Configurator.findConstructorInfo(beanInfo.getClassInfo(), paramTypes);
            return applyCollectionOrMapCheck(ci.getParameterTypes()[parameter.getIndex()]);
         }
         else
         {
            // currently value constructor supports only values that are instances of class itself
            // this will add another instance with the same class to context
View Full Code Here

         else
         {
            classInfo = configurator.getClassInfo(factoryClassName, cl);
         }
         // should be parameter
         ParameterMetaData parameter = (ParameterMetaData) previous;
         String[] parameterTypes = Configurator.getParameterTypes(false, parameters);
         MethodInfo methodInfo = Configurator.findMethodInfo(classInfo, factoryMethod, parameterTypes, factoryClassName != null, true);
         return applyCollectionOrMapCheck(methodInfo.getParameterTypes()[parameter.getIndex()]);
      }
      else
      {
         KernelControllerContext context = visitor.getControllerContext();
         BeanInfo beanInfo = context.getBeanInfo();
         // find matching parameter
         if (previous instanceof ParameterMetaData)
         {
            ParameterMetaData parameter = (ParameterMetaData) previous;
            String[] paramTypes = Configurator.getParameterTypes(false, parameters);
            ConstructorInfo ci = Configurator.findConstructorInfo(beanInfo.getClassInfo(), paramTypes);
            return applyCollectionOrMapCheck(ci.getParameterTypes()[parameter.getIndex()]);
         }
         else
         {
            // currently value constructor supports only values that are instances of class itself
            // this will add another instance with the same class to context
View Full Code Here

         {
            parameters = new Object[size];
            ClassLoader classLoader = context.getClassLoader();
            for (int i = 0; i < size; i++)
            {
               ParameterMetaData pmd = params.get(i);
               TypeInfo typeInfo = null;
               if (signature[i] != null)
               {
                  typeInfo = configurator.getClassInfo(signature[i], classLoader);
               }
               // typeInfo might be null, but we can still get value in some cases
               parameters[i] = pmd.getValue().getValue(typeInfo, classLoader);
            }

         }
      }
      return context.invoke(methodName, parameters, signature);
View Full Code Here

         children.addAll(parameters);
   }

   public TypeInfo getType(MetaDataVisitor visitor, MetaDataVisitorNode previous) throws Throwable
   {
      ParameterMetaData parameter = (ParameterMetaData) previous;
      KernelControllerContext context = visitor.getControllerContext();
      String method = (methodName != null ? methodName : type);
      String[] parameterTypes = Configurator.getParameterTypes(false, parameters);
      MethodInfo methodInfo = Configurator.findMethodInfo(getClassInfo(context), method, parameterTypes);
      return applyCollectionOrMapCheck(methodInfo.getParameterTypes()[parameter.getIndex()]);
   }
View Full Code Here

      if (fstSize != sndSize)
         return true;

      for(int i = 0; i < fstSize; i++)
      {
         ParameterMetaData fstParameter = fstParameters.get(i);
         ParameterMetaData sndParameter = sndParameters.get(i);
         // types
         if (notEqual(fstParameter.getType(), sndParameter.getType()))
            return true;
         // values
         ValueMetaData fstValue = fstParameter.getValue();
         ValueMetaData sndValue = sndParameter.getValue();
         Class fstClass = fstValue != null ? fstValue.getClass() : null;
         Class sndClass = sndValue != null ? sndValue.getClass() : null;
         // class guess
         if (notEqual(fstClass, sndClass))
            return true;
View Full Code Here

      if (params.isEmpty() == false)
      {
         int x = 0;
         for (Iterator i = params.iterator(); i.hasNext();)
         {
            ParameterMetaData pdata = (ParameterMetaData) i.next();
            paramTypes[x++] = pdata.getType();
         }
      }
      return findConstructorInfo(info.getClassInfo(), paramTypes);
   }
View Full Code Here

      String[] paramTypes = new String[parameters.size()];
      int x = 0;
      for (Iterator i = parameters.iterator(); i.hasNext();)
      {
         ParameterMetaData pmd = (ParameterMetaData) i.next();
         paramTypes[x++] = pmd.getType();
      }
      return paramTypes;
   }
View Full Code Here

      Object[] params = new Object[parameters.size()];
      int x = 0;
      for (Iterator i = parameters.iterator(); i.hasNext();)
      {
         ParameterMetaData pdata = (ParameterMetaData) i.next();
         ValueMetaData vmd = pdata.getValue();
         params[x] = vmd.getValue(pinfos[x], cl);
         x++;
      }
      return params;
   }
View Full Code Here

TOP

Related Classes of org.jboss.beans.metadata.spi.ParameterMetaData

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.