Author: rfeng
Date: Mon Nov  5 21:23:15 2007
New Revision: 592285

URL: http://svn.apache.org/viewvc?rev=592285&view=rev
Log:
Refactor the ResourceReferenceModelResolver from contribution-namespace to 
contribution-impl

Added:
    
incubator/tuscany/java/sca/modules/contribution-impl/src/main/java/org/apache/tuscany/sca/contribution/resolver/impl/ResourceReferenceModelResolver.java
      - copied, changed from r592100, 
incubator/tuscany/java/sca/modules/contribution-namespace/src/main/java/org/apache/tuscany/sca/contribution/namespace/impl/ResourceReferenceModelResolver.java
    
incubator/tuscany/java/sca/modules/contribution-impl/src/main/resources/META-INF/services/org.apache.tuscany.sca.contribution.resolver.ModelResolver
      - copied, changed from r592100, 
incubator/tuscany/java/sca/modules/contribution-namespace/src/main/resources/META-INF/services/org.apache.tuscany.sca.contribution.resolver.ModelResolver
Removed:
    
incubator/tuscany/java/sca/modules/contribution-namespace/src/main/java/org/apache/tuscany/sca/contribution/namespace/impl/ResourceReferenceModelResolver.java
    
incubator/tuscany/java/sca/modules/contribution-namespace/src/main/resources/META-INF/services/org.apache.tuscany.sca.contribution.resolver.ModelResolver

Copied: 
incubator/tuscany/java/sca/modules/contribution-impl/src/main/java/org/apache/tuscany/sca/contribution/resolver/impl/ResourceReferenceModelResolver.java
 (from r592100, 
incubator/tuscany/java/sca/modules/contribution-namespace/src/main/java/org/apache/tuscany/sca/contribution/namespace/impl/ResourceReferenceModelResolver.java)
URL: 
http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/contribution-impl/src/main/java/org/apache/tuscany/sca/contribution/resolver/impl/ResourceReferenceModelResolver.java?p2=incubator/tuscany/java/sca/modules/contribution-impl/src/main/java/org/apache/tuscany/sca/contribution/resolver/impl/ResourceReferenceModelResolver.java&p1=incubator/tuscany/java/sca/modules/contribution-namespace/src/main/java/org/apache/tuscany/sca/contribution/namespace/impl/ResourceReferenceModelResolver.java&r1=592100&r2=592285&rev=592285&view=diff
==============================================================================
--- 
incubator/tuscany/java/sca/modules/contribution-namespace/src/main/java/org/apache/tuscany/sca/contribution/namespace/impl/ResourceReferenceModelResolver.java
 (original)
+++ 
incubator/tuscany/java/sca/modules/contribution-impl/src/main/java/org/apache/tuscany/sca/contribution/resolver/impl/ResourceReferenceModelResolver.java
 Mon Nov  5 21:23:15 2007
@@ -17,9 +17,8 @@
  * under the License.    
  */
 
-package org.apache.tuscany.sca.contribution.namespace.impl;
+package org.apache.tuscany.sca.contribution.resolver.impl;
 
-import java.io.File;
 import java.lang.ref.WeakReference;
 import java.lang.reflect.Constructor;
 import java.net.MalformedURLException;
@@ -30,8 +29,8 @@
 
 import org.apache.tuscany.sca.contribution.Contribution;
 import org.apache.tuscany.sca.contribution.ModelFactoryExtensionPoint;
-import org.apache.tuscany.sca.contribution.resolver.ResourceReference;
 import org.apache.tuscany.sca.contribution.resolver.ModelResolver;
+import org.apache.tuscany.sca.contribution.resolver.ResourceReference;
 
 /**
  * A Model Resolver for ResourceReferences.
@@ -46,7 +45,7 @@
 
     public ResourceReferenceModelResolver(Contribution contribution, 
ModelFactoryExtensionPoint modelFactories) {
         this.contribution = contribution;
-        this.classLoader = new 
WeakReference<ClassLoader>(this.contribution.getClassLoader());        
+        this.classLoader = new 
WeakReference<ClassLoader>(this.contribution.getClassLoader());
 
         try {
             Class osgiResolverClass =
@@ -69,8 +68,6 @@
         return map.remove(((ResourceReference)resolved).getResourceName());
     }
 
-  
-
     public <T> T resolveModel(Class<T> modelClass, T unresolved) {
         Object resolved = map.get(unresolved);
 
@@ -81,26 +78,27 @@
         //Get a resource
         String resourceName = 
((ResourceReference)unresolved).getResourceName();
         URL resourceURL = null;
-        
+
         if (URI.create(resourceName).isAbsolute()) {
-               try {
-                       File resourceFile = new File(resourceName);
-                       if (resourceFile.exists())
-                                   resourceURL = resourceFile.toURL();
-                       } catch (MalformedURLException e) {
-                       }
+            try {
+                resourceURL = URI.create(resourceName).toURL();
+            } catch (MalformedURLException e) {
+                // Ignore
+            }
         }
-        
-        if (osgiResolver != null) {
+
+        if (resourceURL == null && osgiResolver != null) {
+            // Try OSGi
             resolved = osgiResolver.resolveModel(modelClass, unresolved);
             resourceURL = ((ResourceReference)resolved).getResource();
         }
-        
+
         if (resourceURL == null) {
-               resourceURL = classLoader.get().getResource(resourceName);
+            // Try class loader
+            resourceURL = classLoader.get().getResource(resourceName);
         }
 
-        if (resourceURL != null) {          
+        if (resourceURL != null) {
             // Store a new ResourceReference wrappering the resource
             ResourceReference resourceReference = new 
ResourceReference(resourceName, resourceURL);
             map.put(resourceName, resourceReference);
@@ -113,5 +111,4 @@
 
     }
 
-   
 }

Copied: 
incubator/tuscany/java/sca/modules/contribution-impl/src/main/resources/META-INF/services/org.apache.tuscany.sca.contribution.resolver.ModelResolver
 (from r592100, 
incubator/tuscany/java/sca/modules/contribution-namespace/src/main/resources/META-INF/services/org.apache.tuscany.sca.contribution.resolver.ModelResolver)
URL: 
http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/contribution-impl/src/main/resources/META-INF/services/org.apache.tuscany.sca.contribution.resolver.ModelResolver?p2=incubator/tuscany/java/sca/modules/contribution-impl/src/main/resources/META-INF/services/org.apache.tuscany.sca.contribution.resolver.ModelResolver&p1=incubator/tuscany/java/sca/modules/contribution-namespace/src/main/resources/META-INF/services/org.apache.tuscany.sca.contribution.resolver.ModelResolver&r1=592100&r2=592285&rev=592285&view=diff
==============================================================================
--- 
incubator/tuscany/java/sca/modules/contribution-namespace/src/main/resources/META-INF/services/org.apache.tuscany.sca.contribution.resolver.ModelResolver
 (original)
+++ 
incubator/tuscany/java/sca/modules/contribution-impl/src/main/resources/META-INF/services/org.apache.tuscany.sca.contribution.resolver.ModelResolver
 Mon Nov  5 21:23:15 2007
@@ -15,4 +15,4 @@
 # specific language governing permissions and limitations
 # under the License. 
 
-org.apache.tuscany.sca.contribution.namespace.impl.ResourceReferenceModelResolver;model=org.apache.tuscany.sca.contribution.resolver.ResourceReference
+org.apache.tuscany.sca.contribution.resolver.impl.ResourceReferenceModelResolver;model=org.apache.tuscany.sca.contribution.resolver.ResourceReference



---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to