Package org.jboss.beans.metadata.spi

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


      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();
         Object param = vmd.getValue(pinfos[x], cl);
         params[x++] = param;
      }
      return params;
   }
View Full Code Here


   {
      ClassLoader tcl = Thread.currentThread().getContextClassLoader();
      ClassLoader cl = null;
      if (metaData != null)
      {
            ValueMetaData clVMD = metaData.getClassLoader();
            if (clVMD != null)
            {
               Object object = clVMD.getValue(null, tcl);
               if (object != null && object instanceof ClassLoader == false)
                  throw new IllegalArgumentException("Configured object is not a classloader " + metaData);
               cl = (ClassLoader) object;
            }
      }
View Full Code Here

      else
      {
         map = (AbstractMapMetaData) properties.getValue();
      }
     
      ValueMetaData valueMetaData = property.getValue();
      valueMetaData = new AbstractValueMetaData(valueMetaData);
      map.put(new AbstractValueMetaData(property.getName()), valueMetaData);
   }
View Full Code Here

   public MetaValue getValue(BeanInfo beanInfo, ManagedProperty property, AbstractBeanMetaData attachment)
   {
      String name = property.getName();
      PropertyMetaData pmd = getExactPropertyMetaData(attachment, name);
      PropertyInfo propertyInfo = beanInfo.getProperty(name);
      ValueMetaData valueMetaData = pmd.getValue();
      try
      {
         Object value = valueMetaData.getValue(propertyInfo.getType(), getClassLoader(attachment));
         return metaValueFactory.create(value, propertyInfo.getType());
      }
      catch (Throwable t)
      {
         throw new UndeclaredThrowableException(t);
View Full Code Here

            // right now, our criteria is simple - if blocking is desired or if core threads can time out, use the queue executor instead
            if (metaData.isAllowCoreTimeout() || "block".equals(policyName)) {
                // use SimpleQueueExecutor
                executorBuilder = BeanMetaDataBuilder.createBuilder(SimpleQueueExecutor.class.getName());
                final RejectionPolicy rejectionPolicy;
                final ValueMetaData handoffExecutorValue;
                if ("abort".equals(policyName)) {
                    rejectionPolicy = RejectionPolicy.ABORT;
                    handoffExecutorValue = executorBuilder.createNull();
                } else if ("block".equals(policyName)) {
                    rejectionPolicy = RejectionPolicy.BLOCK;
                    handoffExecutorValue = executorBuilder.createNull();
                } else if ("caller-runs".equals(policyName)) {
                    rejectionPolicy = RejectionPolicy.HANDOFF;
                    handoffExecutorValue = executorBuilder.createValue(JBossExecutors.directExecutor());
                } else if ("discard".equals(policyName)) {
                    rejectionPolicy = RejectionPolicy.DISCARD;
                    handoffExecutorValue = executorBuilder.createNull();
                } else if ("discard-oldest".equals(policyName)) {
                    rejectionPolicy = RejectionPolicy.DISCARD_OLDEST;
                    handoffExecutorValue = executorBuilder.createNull();
                } else if ("handoff".equals(policyName)) {
                    rejectionPolicy = RejectionPolicy.HANDOFF;
                    handoffExecutorValue = executorBuilder.createInject(rejectPolicyMetaData.getExecutorName());
                } else {
                    throw new IllegalStateException();
                }
                final Queue<Runnable> queue;
                if (queueLength == null) {
                    queue = new LinkedList<Runnable>();
                } else {
                    queue = new ArrayQueue<Runnable>(queueLength.intValue());
                }
                executorBuilder.addConstructorParameter(String.class.getName(), name);
                executorBuilder.addConstructorParameter("int", Integer.valueOf(corePoolSize));
                executorBuilder.addConstructorParameter("int", Integer.valueOf(maxPoolSize));
                executorBuilder.addConstructorParameter("long", Long.valueOf(time));
                executorBuilder.addConstructorParameter(TimeUnit.class.getName(), unit);
                executorBuilder.addConstructorParameter(Queue.class.getName(), executorBuilder.createValue(queue));
                executorBuilder.addConstructorParameter(ThreadFactory.class.getName(), executorBuilder.createInject(threadFactory));
                executorBuilder.addConstructorParameter(RejectionPolicy.class.getName(), rejectionPolicy);
                executorBuilder.addConstructorParameter(Executor.class.getName(), handoffExecutorValue);
                if (metaData.isAllowCoreTimeout()) {
                    executorBuilder.addPropertyMetaData("allowCoreTimeout", Boolean.TRUE);
                }
            } else {
                // use ThreadPoolExecutor
                executorBuilder = BeanMetaDataBuilder.createBuilder(JBossThreadPoolExecutor.class.getName());
                final ValueMetaData policyValue;
                if ("abort".equals(policyName)) {
                    policyValue = executorBuilder.createValue(JBossExecutors.abortPolicy());
                } else if ("block".equals(policyName)) {
                    throw new IllegalStateException();
                } else if ("caller-runs".equals(policyName)) {
View Full Code Here

      Set<PropertyMetaData> properties = bmd.getProperties();
      for (PropertyMetaData pmd : properties)
      {
         if ("bean".equals(pmd.getName()))
         {
            ValueMetaData value = pmd.getValue();
            if (value != null && value.getUnderlyingValue() != null)
            {
               String className = value.getUnderlyingValue().toString();
               return getBeanClass(className, kcc);
            }
            else
            {
               return null;
View Full Code Here

   {
      if (value == null)
         setValue(null);
      else
      {
         ValueMetaData valueMetaData = getValue();
         if (valueMetaData instanceof StringValueMetaData)
         {
            ((StringValueMetaData) valueMetaData).setValue(value);
         }
         else
View Full Code Here

   {
      String name = getName();
      if (name == null || name.trim().length() == 0)
         throw new IllegalArgumentException("Null or empty property name.");

      ValueMetaData vmd = getValue();
      if (vmd != null && vmd instanceof AbstractInjectionValueMetaData)
         ((AbstractInjectionValueMetaData) vmd).setPropertyMetaData(this);

      if (vmd != null && vmd instanceof StringValueMetaData)
      {
View Full Code Here

    * @param previous the previous / parent node
    * @param bean     the bean to replace
    */
   private static void replaceWithInjection(MetaDataVisitorNode previous, BeanMetaData bean)
   {
      ValueMetaData injection = new AbstractDependencyValueMetaData(bean.getName());

      if (previous instanceof ValueMetaDataAware)
      {
         ValueMetaDataAware vmda = (ValueMetaDataAware)previous;
         vmda.setValue(injection);
View Full Code Here

      factoryBuilder.addUninstall("uninstall", aspectBuilder.getBeanMetaData().getName());
   }
  
   private void configureNoDependencies(BeanMetaDataBuilder aspectBuilder)
   {
      ValueMetaData inject = aspectBuilder.createInject(name);
      aspectBuilder.addPropertyMetaData("advice", inject);
   }
View Full Code Here

TOP

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

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.