Author: jboynes
Date: Fri Apr 14 11:56:05 2006
New Revision: 394174

URL: http://svn.apache.org/viewcvs?rev=394174&view=rev
Log:
make the default PropertyFactory a system service

Modified:
    
incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/loader/StAXUtil.java
    
incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/loader/assembly/ComponentLoader.java
    
incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/loader/impl/StringParserPropertyFactory.java
    
incubator/tuscany/java/sca/core/src/test/java/org/apache/tuscany/core/loader/assembly/ComponentLoaderTestCase.java

Modified: 
incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/loader/StAXUtil.java
URL: 
http://svn.apache.org/viewcvs/incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/loader/StAXUtil.java?rev=394174&r1=394173&r2=394174&view=diff
==============================================================================
--- 
incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/loader/StAXUtil.java
 (original)
+++ 
incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/loader/StAXUtil.java
 Fri Apr 14 11:56:05 2006
@@ -33,6 +33,7 @@
 import org.apache.tuscany.core.loader.assembly.ModuleFragmentLoader;
 import org.apache.tuscany.core.loader.assembly.ModuleLoader;
 import org.apache.tuscany.core.loader.impl.StAXLoaderRegistryImpl;
+import org.apache.tuscany.core.loader.impl.StringParserPropertyFactory;
 import org.apache.tuscany.core.loader.system.SystemBindingLoader;
 import org.apache.tuscany.core.loader.system.SystemImplementationLoader;
 import org.apache.tuscany.core.system.assembly.SystemAssemblyFactory;
@@ -104,6 +105,7 @@
         // all others should be defined in the system.module file
         components.add(bootstrapLoader(factory, introspector, 
ModuleLoader.class));
         components.add(bootstrapLoader(factory, introspector, 
ModuleFragmentLoader.class));
+        
components.add(factory.createSystemComponent("org.apache.tuscany.core.system.loader.DefaultPropertyFactory",
 StAXPropertyFactory.class, StringParserPropertyFactory.class, Scope.MODULE));
         components.add(bootstrapLoader(factory, introspector, 
ComponentLoader.class));
         components.add(bootstrapLoader(factory, introspector, 
EntryPointLoader.class));
         components.add(bootstrapLoader(factory, introspector, 
InterfaceJavaLoader.class));

Modified: 
incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/loader/assembly/ComponentLoader.java
URL: 
http://svn.apache.org/viewcvs/incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/loader/assembly/ComponentLoader.java?rev=394174&r1=394173&r2=394174&view=diff
==============================================================================
--- 
incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/loader/assembly/ComponentLoader.java
 (original)
+++ 
incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/loader/assembly/ComponentLoader.java
 Fri Apr 14 11:56:05 2006
@@ -35,6 +35,7 @@
 import org.apache.tuscany.core.loader.StAXPropertyFactory;
 import org.apache.tuscany.core.loader.StAXUtil;
 import org.apache.tuscany.core.loader.impl.StringParserPropertyFactory;
+import org.apache.tuscany.core.system.annotation.Autowire;
 import org.apache.tuscany.model.assembly.AssemblyObject;
 import org.apache.tuscany.model.assembly.Component;
 import org.apache.tuscany.model.assembly.ComponentInfo;
@@ -50,7 +51,12 @@
  */
 @Scope("MODULE")
 public class ComponentLoader extends AbstractLoader {
-    private static final StAXPropertyFactory<?> defaultPropertyFactory = new 
StringParserPropertyFactory();
+    private StAXPropertyFactory<?> defaultPropertyFactory;
+
+    @Autowire
+    public void setDefaultPropertyFactory(StAXPropertyFactory<?> 
defaultPropertyFactory) {
+        this.defaultPropertyFactory = defaultPropertyFactory;
+    }
 
     public QName getXMLType() {
         return COMPONENT;

Modified: 
incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/loader/impl/StringParserPropertyFactory.java
URL: 
http://svn.apache.org/viewcvs/incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/loader/impl/StringParserPropertyFactory.java?rev=394174&r1=394173&r2=394174&view=diff
==============================================================================
--- 
incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/loader/impl/StringParserPropertyFactory.java
 (original)
+++ 
incubator/tuscany/java/sca/core/src/main/java/org/apache/tuscany/core/loader/impl/StringParserPropertyFactory.java
 Fri Apr 14 11:56:05 2006
@@ -31,9 +31,14 @@
 import java.lang.reflect.Method;
 import java.lang.reflect.Modifier;
 
+import org.osoa.sca.annotations.Scope;
+import org.osoa.sca.annotations.Service;
+
 /**
  * @version $Rev$ $Date$
  */
[EMAIL PROTECTED]("MODULE")
[EMAIL PROTECTED](interfaces = {StAXPropertyFactory.class})
 public class StringParserPropertyFactory implements StAXPropertyFactory {
     public ObjectFactory<?> createObjectFactory(XMLStreamReader reader, 
Property property) throws XMLStreamException, ConfigurationLoadException {
         Class<?> type = property.getType();

Modified: 
incubator/tuscany/java/sca/core/src/test/java/org/apache/tuscany/core/loader/assembly/ComponentLoaderTestCase.java
URL: 
http://svn.apache.org/viewcvs/incubator/tuscany/java/sca/core/src/test/java/org/apache/tuscany/core/loader/assembly/ComponentLoaderTestCase.java?rev=394174&r1=394173&r2=394174&view=diff
==============================================================================
--- 
incubator/tuscany/java/sca/core/src/test/java/org/apache/tuscany/core/loader/assembly/ComponentLoaderTestCase.java
 (original)
+++ 
incubator/tuscany/java/sca/core/src/test/java/org/apache/tuscany/core/loader/assembly/ComponentLoaderTestCase.java
 Fri Apr 14 11:56:05 2006
@@ -26,6 +26,7 @@
 import org.apache.tuscany.core.config.impl.Java5ComponentTypeIntrospector;
 import org.apache.tuscany.core.injection.SingletonObjectFactory;
 import org.apache.tuscany.core.loader.StAXPropertyFactory;
+import org.apache.tuscany.core.loader.impl.StringParserPropertyFactory;
 import org.apache.tuscany.core.system.assembly.SystemAssemblyFactory;
 import org.apache.tuscany.core.system.assembly.SystemImplementation;
 import org.apache.tuscany.core.system.assembly.impl.SystemAssemblyFactoryImpl;
@@ -104,6 +105,7 @@
         super.setUp();
         loader = new ComponentLoader();
         loader.setFactory(assemblyFactory);
+        loader.setDefaultPropertyFactory(new StringParserPropertyFactory());
         introspector = new Java5ComponentTypeIntrospector(assemblyFactory);
     }
 


Reply via email to