You are viewing a plain text version of this content. The canonical link for it is here.
Posted to scm@geronimo.apache.org by gn...@apache.org on 2009/04/28 10:29:04 UTC

svn commit: r769289 - in /geronimo/sandbox/blueprint/blueprint-core/src/main/java/org/apache/geronimo/blueprint: context/Instanciator.java convert/ConversionServiceImpl.java

Author: gnodet
Date: Tue Apr 28 08:29:04 2009
New Revision: 769289

URL: http://svn.apache.org/viewvc?rev=769289&view=rev
Log:
Fix conversion service and avoid dependency on metadata implementation

Modified:
    geronimo/sandbox/blueprint/blueprint-core/src/main/java/org/apache/geronimo/blueprint/context/Instanciator.java
    geronimo/sandbox/blueprint/blueprint-core/src/main/java/org/apache/geronimo/blueprint/convert/ConversionServiceImpl.java

Modified: geronimo/sandbox/blueprint/blueprint-core/src/main/java/org/apache/geronimo/blueprint/context/Instanciator.java
URL: http://svn.apache.org/viewvc/geronimo/sandbox/blueprint/blueprint-core/src/main/java/org/apache/geronimo/blueprint/context/Instanciator.java?rev=769289&r1=769288&r2=769289&view=diff
==============================================================================
--- geronimo/sandbox/blueprint/blueprint-core/src/main/java/org/apache/geronimo/blueprint/context/Instanciator.java (original)
+++ geronimo/sandbox/blueprint/blueprint-core/src/main/java/org/apache/geronimo/blueprint/context/Instanciator.java Tue Apr 28 08:29:04 2009
@@ -18,7 +18,6 @@
  */
 package org.apache.geronimo.blueprint.context;
 
-import java.lang.reflect.Method;
 import java.util.ArrayList;
 import java.util.Collections;
 import java.util.Comparator;
@@ -29,12 +28,10 @@
 import java.util.Properties;
 
 import org.apache.geronimo.blueprint.ExtendedComponentDefinitionRegistry;
-import org.apache.geronimo.blueprint.reflect.MapMetadataImpl;
-import org.apache.geronimo.blueprint.reflect.ServiceMetadataImpl;
-import org.apache.geronimo.blueprint.utils.ReflectionUtils;
+import org.apache.geronimo.blueprint.mutable.MutableMapMetadata;
+import org.apache.geronimo.blueprint.reflect.MetadataUtil;
 import org.apache.xbean.recipe.ArrayRecipe;
 import org.apache.xbean.recipe.CollectionRecipe;
-import org.apache.xbean.recipe.ConstructionException;
 import org.apache.xbean.recipe.MapRecipe;
 import org.apache.xbean.recipe.ObjectRecipe;
 import org.apache.xbean.recipe.Option;
@@ -181,11 +178,12 @@
             recipe.setProperty("service", getValue(serviceExport.getServiceComponent(), null));
         }
         recipe.setProperty("metadata", serviceExport);
-        if (serviceExport instanceof ServiceMetadataImpl) {
-            ServiceMetadataImpl impl = (ServiceMetadataImpl) serviceExport;
-            if (impl.getServiceProperties() != null) {
-                recipe.setProperty("serviceProperties", getValue(new MapMetadataImpl(null, null, impl.getServiceProperties()), null));
+        if (serviceExport.getServiceProperties() != null) {
+            MutableMapMetadata map = MetadataUtil.createMetadata(MutableMapMetadata.class);
+            for (MapEntry e : serviceExport.getServiceProperties()) {
+                map.addEntry(e);
             }
+            recipe.setProperty("serviceProperties", getValue(map, null));
         }
         if (serviceExport.getRegistrationListeners() != null) {
             CollectionRecipe listenersRecipe = new CollectionRecipe(ArrayList.class);

Modified: geronimo/sandbox/blueprint/blueprint-core/src/main/java/org/apache/geronimo/blueprint/convert/ConversionServiceImpl.java
URL: http://svn.apache.org/viewvc/geronimo/sandbox/blueprint/blueprint-core/src/main/java/org/apache/geronimo/blueprint/convert/ConversionServiceImpl.java?rev=769289&r1=769288&r2=769289&view=diff
==============================================================================
--- geronimo/sandbox/blueprint/blueprint-core/src/main/java/org/apache/geronimo/blueprint/convert/ConversionServiceImpl.java (original)
+++ geronimo/sandbox/blueprint/blueprint-core/src/main/java/org/apache/geronimo/blueprint/convert/ConversionServiceImpl.java Tue Apr 28 08:29:04 2009
@@ -67,7 +67,7 @@
     }
     
     public Object convert(Object fromValue, Class toType) throws Exception {
-        if (Object.class == toType) {
+        if (toType.isInstance(fromValue)) {
             return fromValue;
         }
         Object value = doConvert(fromValue, toType);