[jboss-cvs] JBossAS SVN: r86915 - branches/Branch_5_x/profileservice/src/main/org/jboss/profileservice/management.

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Tue Apr 7 08:55:43 EDT 2009


Author: emuckenhuber
Date: 2009-04-07 08:55:43 -0400 (Tue, 07 Apr 2009)
New Revision: 86915

Modified:
   branches/Branch_5_x/profileservice/src/main/org/jboss/profileservice/management/ManagementViewImpl.java
Log:
[JBAS-6716] unwrap properties with a metaMapper before dispatching.

Modified: branches/Branch_5_x/profileservice/src/main/org/jboss/profileservice/management/ManagementViewImpl.java
===================================================================
--- branches/Branch_5_x/profileservice/src/main/org/jboss/profileservice/management/ManagementViewImpl.java	2009-04-07 12:54:57 UTC (rev 86914)
+++ branches/Branch_5_x/profileservice/src/main/org/jboss/profileservice/management/ManagementViewImpl.java	2009-04-07 12:55:43 UTC (rev 86915)
@@ -22,6 +22,7 @@
 package org.jboss.profileservice.management;
 
 import java.io.IOException;
+import java.io.Serializable;
 import java.lang.annotation.Annotation;
 import java.net.URL;
 import java.net.URLClassLoader;
@@ -80,13 +81,16 @@
 import org.jboss.managed.plugins.jmx.ManagementFactoryUtils;
 import org.jboss.metatype.api.types.ArrayMetaType;
 import org.jboss.metatype.api.types.CollectionMetaType;
+import org.jboss.metatype.api.types.GenericMetaType;
 import org.jboss.metatype.api.types.MetaType;
 import org.jboss.metatype.api.values.ArrayValue;
 import org.jboss.metatype.api.values.CollectionValue;
 import org.jboss.metatype.api.values.GenericValue;
+import org.jboss.metatype.api.values.GenericValueSupport;
 import org.jboss.metatype.api.values.MetaValue;
 import org.jboss.metatype.api.values.MetaValueFactory;
 import org.jboss.metatype.api.values.SimpleValue;
+import org.jboss.metatype.spi.values.MetaMapper;
 import org.jboss.profileservice.spi.NoSuchDeploymentException;
 import org.jboss.profileservice.spi.NoSuchProfileException;
 import org.jboss.profileservice.spi.Profile;
@@ -1170,8 +1174,22 @@
          // Dispatch any runtime component property values
          Object componentName = getComponentName(ctxProp);
          ActivationPolicy policy = ctxProp.getActivationPolicy();
+         
          if (componentName != null && policy.equals(ActivationPolicy.IMMEDIATE))
+         {
+            // FIXME
+            MetaMapper mapper = ctxProp.getTransientAttachment(MetaMapper.class);
+            if(mapper != null)
+            {
+               Object o = mapper.unwrapMetaValue(metaValue);
+               if(o instanceof Serializable)
+               {
+                  GenericMetaType generic = new GenericMetaType(metaValue.getMetaType().getTypeName(), "generic value wrapper");
+                  metaValue = new GenericValueSupport(generic, (Serializable) o);
+               }
+            }
             dispatcher.set(componentName, ctxProp.getName(), metaValue);
+         }
       }
 
       // Persist the changed values




More information about the jboss-cvs-commits mailing list