Package org.jboss.metatype.api.types

Examples of org.jboss.metatype.api.types.CompositeMetaType


      }
      else if(mv instanceof CompositeValue)
      {
         CompositeValue cv = CompositeValue.class.cast(mv);
         HashMap<String, Object> itemsMap = new HashMap<String, Object>();
         CompositeMetaType cmt = cv.getMetaType();
         String[] items = new String[cmt.itemSet().size()];
         Object[] itemValues = new Object[items.length];
         cmt.itemSet().toArray(items);
         for(int n = 0; n < items.length; n ++)
         {
            String item = items[n];
            MetaValue itemMV = cv.get(item);
            Object itemValue = null;
View Full Code Here


         itemTypes[n] = getMetaType(ot);
      }
     
      String typeName = type.getTypeName();
      String description = type.getDescription();
      CompositeMetaType cmt = new ImmutableCompositeMetaType(typeName, description, itemNames, itemDescriptions, itemTypes);
      return cmt;
   }
View Full Code Here

         itemValues[n] = mv;
      }
     
      String typeName = ct.getTypeName();
      String description = ct.getDescription();
      CompositeMetaType cmt = new ImmutableCompositeMetaType(typeName, description, itemNames, itemDescriptions, itemTypes);
      CompositeValueSupport cv = new CompositeValueSupport(cmt, itemNames, itemValues);
      return cv;
   }
View Full Code Here

      if(object == null)
         return null;
      if(metaType instanceof CompositeMetaType)
      {
         // Extract the meta types
         CompositeMetaType composite = (CompositeMetaType) metaType;
         EnumMetaType enumMetaType= (EnumMetaType) composite.getType(DeploymentTypeName);
         // Create the composite value
         CompositeValueSupport securityDomain = new CompositeValueSupport(composite);
         // Set a default deplooymentType
         SecurityDeploymentType deploymentType = object.getSecurityDeploymentType();
         if(deploymentType == null)
View Full Code Here

    */
   public TableMetaType createMapType(TypeInfo keyType, TypeInfo valueType)
   {
      String name = Map.class.getName();
      MetaType[] itemTypes = { resolve(keyType), resolve(valueType) };
      CompositeMetaType entryType = createMapEntryType(itemTypes);
      return new ImmutableTableMetaType(name, name, entryType, MAP_INDEX_NAMES);
   }
View Full Code Here

         return null;
     
      TableValueSupport table = new TableValueSupport(type);
      mapping.put(value, table);
     
      CompositeMetaType entryType = type.getRowType();
      MetaType keyType = entryType.getType(DefaultMetaTypeFactory.MAP_KEY);
      MetaType valType = entryType.getType(DefaultMetaTypeFactory.MAP_VALUE);
     
      for (Iterator<Map.Entry> i = value.entrySet().iterator(); i.hasNext();)
      {
         Map.Entry entry = i.next();
         MetaValue key = internalCreate(entry.getKey(), null, keyType);
View Full Code Here

    * @param typeInfo expected type info
    * @return unwrapped value
    */
   protected Object unwrapComposite(CompositeValue compositeValue, TypeInfo typeInfo)
   {
      CompositeMetaType compositeMetaType = compositeValue.getMetaType();
      String typeName = compositeMetaType.getTypeName();
      ClassLoader cl;
      if (typeInfo != null)
         cl = typeInfo.getType().getClassLoader();
      else
         cl = Thread.currentThread().getContextClassLoader();
     
      try
      {
         BeanInfo beanInfo = configuration.getBeanInfo(typeName, cl);
         Object bean = createNewInstance(beanInfo);
         for (String name : compositeMetaType.keySet())
         {
            MetaValue itemValue = compositeValue.get(name);
            PropertyInfo propertyInfo = beanInfo.getProperty(name);
            Object value = unwrap(itemValue, propertyInfo.getType());
            propertyInfo.set(bean, value);
View Full Code Here

   protected CompositeMetaType initCompositeMetaType()
   {
      String[] itemNames = new String[] { "name1", "name2" };
      String[] itemDescriptions = new String[] { "desc1", "desc2" };
      MetaType[] itemTypes = new MetaType[] { SimpleMetaType.STRING, SimpleMetaType.INTEGER };
      CompositeMetaType compositeMetaType = new ImmutableCompositeMetaType("typeName", "description", itemNames, itemDescriptions, itemTypes);
      return compositeMetaType;
   }
View Full Code Here

   protected CompositeMetaType initCompositeMetaType2()
   {
      String[] itemNames = new String[] { "name1", "name2" };
      String[] itemDescriptions = new String[] { "desc1", "desc2" };
      MetaType[] itemTypes = new MetaType[] { SimpleMetaType.STRING, SimpleMetaType.INTEGER };
      CompositeMetaType compositeMetaType = new ImmutableCompositeMetaType("typeName2", "description", itemNames, itemDescriptions, itemTypes);
      return compositeMetaType;
   }
View Full Code Here

   public void testIsValueComposite() throws Exception
   {
      String[] itemNames = new String[] { "name1", "name2" };
      String[] itemDescriptions = new String[] { "desc1", "desc2" };
      MetaType[] itemTypes = new MetaType[] { SimpleMetaType.STRING, SimpleMetaType.INTEGER };
      CompositeMetaType compositeType = new ImmutableCompositeMetaType("typeName", "description", itemNames, itemDescriptions, itemTypes);
      MockCompositeValue cv = new MockCompositeValue(compositeType);
      MockCompositeValue[][] compData1 = new MockCompositeValue[][]
      {
         { cv, null }, { cv, cv }
      };

      ArrayMetaType compArrayType1 = new ArrayMetaType(2, compositeType);
      assertTrue("compData1 should be a value of array type", compArrayType1.isValue(compData1));

      ArrayMetaType compArrayType2 = new ArrayMetaType(1, compositeType);
      assertFalse("compData1 should not be a value of array type, wrong dimension", compArrayType2.isValue(compData1));

      CompositeMetaType compositeType2 = new ImmutableCompositeMetaType("typeName2", "description", itemNames, itemDescriptions, itemTypes);
      ArrayMetaType compArrayType3 = new ArrayMetaType(2, compositeType2);
      assertFalse("compData1 should not be a value of array type, wrong element type", compArrayType3.isValue(compData1));
   }
View Full Code Here

TOP

Related Classes of org.jboss.metatype.api.types.CompositeMetaType

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.