You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tuscany.apache.org by rf...@apache.org on 2009/10/16 07:42:38 UTC

svn commit: r825773 [6/15] - in /tuscany/java/sca: itest/builder/src/test/java/org/apache/tuscany/sca/itest/builder/ modules/assembly-xml/src/main/java/org/apache/tuscany/sca/assembly/xml/ modules/assembly-xml/src/main/java/org/apache/tuscany/sca/defin...

Modified: tuscany/java/sca/modules/binding-ws-axis2-policy/src/main/java/org/apache/tuscany/sca/binding/ws/axis2/policy/header/Axis2HeaderPolicyProcessor.java
URL: http://svn.apache.org/viewvc/tuscany/java/sca/modules/binding-ws-axis2-policy/src/main/java/org/apache/tuscany/sca/binding/ws/axis2/policy/header/Axis2HeaderPolicyProcessor.java?rev=825773&r1=825772&r2=825773&view=diff
==============================================================================
--- tuscany/java/sca/modules/binding-ws-axis2-policy/src/main/java/org/apache/tuscany/sca/binding/ws/axis2/policy/header/Axis2HeaderPolicyProcessor.java (original)
+++ tuscany/java/sca/modules/binding-ws-axis2-policy/src/main/java/org/apache/tuscany/sca/binding/ws/axis2/policy/header/Axis2HeaderPolicyProcessor.java Fri Oct 16 05:42:26 2009
@@ -30,10 +30,10 @@
 import org.apache.tuscany.sca.contribution.processor.ContributionReadException;
 import org.apache.tuscany.sca.contribution.processor.ContributionResolveException;
 import org.apache.tuscany.sca.contribution.processor.ContributionWriteException;
+import org.apache.tuscany.sca.contribution.processor.ProcessorContext;
 import org.apache.tuscany.sca.contribution.processor.StAXArtifactProcessor;
 import org.apache.tuscany.sca.contribution.resolver.ModelResolver;
 import org.apache.tuscany.sca.core.FactoryExtensionPoint;
-import org.apache.tuscany.sca.monitor.Monitor;
 
 /**
  *
@@ -46,11 +46,11 @@
         return Axis2HeaderPolicy.AXIS2_HEADER_POLICY_QNAME;
     }
     
-    public Axis2HeaderPolicyProcessor(FactoryExtensionPoint modelFactories, Monitor monitor) {
+    public Axis2HeaderPolicyProcessor(FactoryExtensionPoint modelFactories) {
     }
 
     
-    public Axis2HeaderPolicy read(XMLStreamReader reader) throws ContributionReadException, XMLStreamException {
+    public Axis2HeaderPolicy read(XMLStreamReader reader, ProcessorContext context) throws ContributionReadException, XMLStreamException {
         Axis2HeaderPolicy policy = new Axis2HeaderPolicy();
         int event = reader.getEventType();
         QName name = null;
@@ -82,7 +82,7 @@
         return policy;
     }
 
-    public void write(Axis2HeaderPolicy policy, XMLStreamWriter writer) 
+    public void write(Axis2HeaderPolicy policy, XMLStreamWriter writer, ProcessorContext context) 
         throws ContributionWriteException, XMLStreamException {
         String prefix = "tuscany";
         writer.writeStartElement(prefix, 
@@ -105,7 +105,7 @@
         return Axis2HeaderPolicy.class;
     }
 
-    public void resolve(Axis2HeaderPolicy arg0, ModelResolver arg1) throws ContributionResolveException {
+    public void resolve(Axis2HeaderPolicy arg0, ModelResolver arg1, ProcessorContext context) throws ContributionResolveException {
 
     }
     

Modified: tuscany/java/sca/modules/binding-ws-axis2-policy/src/test/java/org/apache/tuscany/sca/binding/ws/axis2/policy/configuration/PolicyReadTestCase.java
URL: http://svn.apache.org/viewvc/tuscany/java/sca/modules/binding-ws-axis2-policy/src/test/java/org/apache/tuscany/sca/binding/ws/axis2/policy/configuration/PolicyReadTestCase.java?rev=825773&r1=825772&r2=825773&view=diff
==============================================================================
--- tuscany/java/sca/modules/binding-ws-axis2-policy/src/test/java/org/apache/tuscany/sca/binding/ws/axis2/policy/configuration/PolicyReadTestCase.java (original)
+++ tuscany/java/sca/modules/binding-ws-axis2-policy/src/test/java/org/apache/tuscany/sca/binding/ws/axis2/policy/configuration/PolicyReadTestCase.java Fri Oct 16 05:42:26 2009
@@ -28,6 +28,7 @@
 import junit.framework.TestCase;
 
 import org.apache.tuscany.sca.contribution.processor.ExtensibleStAXArtifactProcessor;
+import org.apache.tuscany.sca.contribution.processor.ProcessorContext;
 import org.apache.tuscany.sca.contribution.processor.StAXArtifactProcessor;
 import org.apache.tuscany.sca.contribution.processor.StAXArtifactProcessorExtensionPoint;
 import org.apache.tuscany.sca.core.DefaultExtensionPointRegistry;
@@ -45,14 +46,14 @@
         ExtensionPointRegistry extensionPoints = new DefaultExtensionPointRegistry();
         StAXArtifactProcessorExtensionPoint staxProcessors = extensionPoints.getExtensionPoint(StAXArtifactProcessorExtensionPoint.class);
         XMLInputFactory inputFactory = XMLInputFactory.newInstance();
-        StAXArtifactProcessor<Object> staxProcessor = new ExtensibleStAXArtifactProcessor(staxProcessors, inputFactory, null, null);
+        StAXArtifactProcessor<Object> staxProcessor = new ExtensibleStAXArtifactProcessor(staxProcessors, inputFactory, null);
         
         URL url = getClass().getResource("mock_policies.xml");
         
         InputStream urlStream = url.openStream();
         XMLStreamReader reader = inputFactory.createXMLStreamReader(urlStream);
         
-        Axis2ConfigParamPolicy policy = (Axis2ConfigParamPolicy)staxProcessor.read(reader);
+        Axis2ConfigParamPolicy policy = (Axis2ConfigParamPolicy)staxProcessor.read(reader, new ProcessorContext(extensionPoints));
         assertEquals(policy.getParamElements().size(), 2);
     }
 

Modified: tuscany/java/sca/modules/binding-ws-wsdlgen/src/main/java/org/apache/tuscany/sca/binding/ws/wsdlgen/BindingWSDLGenerator.java
URL: http://svn.apache.org/viewvc/tuscany/java/sca/modules/binding-ws-wsdlgen/src/main/java/org/apache/tuscany/sca/binding/ws/wsdlgen/BindingWSDLGenerator.java?rev=825773&r1=825772&r2=825773&view=diff
==============================================================================
--- tuscany/java/sca/modules/binding-ws-wsdlgen/src/main/java/org/apache/tuscany/sca/binding/ws/wsdlgen/BindingWSDLGenerator.java (original)
+++ tuscany/java/sca/modules/binding-ws-wsdlgen/src/main/java/org/apache/tuscany/sca/binding/ws/wsdlgen/BindingWSDLGenerator.java Fri Oct 16 05:42:26 2009
@@ -331,7 +331,7 @@
         wsdlInterface.setPortType(portType);
 
         try {
-            wsdlFactory.createWSDLInterface(wsdlInterface, portType, wsdlDefinition, resolver);
+            wsdlFactory.createWSDLInterface(wsdlInterface, portType, wsdlDefinition, resolver, monitor);
         } catch (InvalidInterfaceException e) {
             throw new WSDLGenerationException(e);
         }

Modified: tuscany/java/sca/modules/binding-ws-wsdlgen/src/main/java/org/apache/tuscany/sca/binding/ws/wsdlgen/WebServiceBindingBuilder.java
URL: http://svn.apache.org/viewvc/tuscany/java/sca/modules/binding-ws-wsdlgen/src/main/java/org/apache/tuscany/sca/binding/ws/wsdlgen/WebServiceBindingBuilder.java?rev=825773&r1=825772&r2=825773&view=diff
==============================================================================
--- tuscany/java/sca/modules/binding-ws-wsdlgen/src/main/java/org/apache/tuscany/sca/binding/ws/wsdlgen/WebServiceBindingBuilder.java (original)
+++ tuscany/java/sca/modules/binding-ws-wsdlgen/src/main/java/org/apache/tuscany/sca/binding/ws/wsdlgen/WebServiceBindingBuilder.java Fri Oct 16 05:42:26 2009
@@ -24,9 +24,9 @@
 import org.apache.tuscany.sca.assembly.Component;
 import org.apache.tuscany.sca.assembly.Contract;
 import org.apache.tuscany.sca.assembly.builder.BindingBuilder;
+import org.apache.tuscany.sca.assembly.builder.BuilderContext;
 import org.apache.tuscany.sca.binding.ws.WebServiceBinding;
 import org.apache.tuscany.sca.core.ExtensionPointRegistry;
-import org.apache.tuscany.sca.monitor.Monitor;
 
 /**
  * A factory for the calculated WSDL document needed by Web Service bindings.
@@ -44,8 +44,8 @@
     /**
      * Create a calculated WSDL document and save it in the Web Service binding. 
      */
-    public void build(Component component, Contract contract, WebServiceBinding binding, Monitor monitor) {
-        BindingWSDLGenerator.generateWSDL(component, contract, binding, extensionPoints, monitor);
+    public void build(Component component, Contract contract, WebServiceBinding binding, BuilderContext context) {
+        BindingWSDLGenerator.generateWSDL(component, contract, binding, extensionPoints, context.getMonitor());
     }
 
     public QName getBindingType() {

Modified: tuscany/java/sca/modules/binding-ws-wsdlgen/src/test/java/org/apache/tuscany/sca/binding/ws/wsdlgen/BindingWSDLGeneratorTestCase.java
URL: http://svn.apache.org/viewvc/tuscany/java/sca/modules/binding-ws-wsdlgen/src/test/java/org/apache/tuscany/sca/binding/ws/wsdlgen/BindingWSDLGeneratorTestCase.java?rev=825773&r1=825772&r2=825773&view=diff
==============================================================================
--- tuscany/java/sca/modules/binding-ws-wsdlgen/src/test/java/org/apache/tuscany/sca/binding/ws/wsdlgen/BindingWSDLGeneratorTestCase.java (original)
+++ tuscany/java/sca/modules/binding-ws-wsdlgen/src/test/java/org/apache/tuscany/sca/binding/ws/wsdlgen/BindingWSDLGeneratorTestCase.java Fri Oct 16 05:42:26 2009
@@ -61,7 +61,7 @@
         new JAXWSJavaInterfaceProcessor(dataBindings, faultExceptionMapper, null).visitInterface(iface);
         new DataBindingJavaInterfaceProcessor(registry).visitInterface(iface);
         javaIC.setInterface(iface);
-        WSDLInterfaceContract wsdlIC = BindingWSDLGenerator.createWSDLInterfaceContract(javaIC, false, new XSDModelResolver(null, null, null), dataBindings, wsdlFactory, xsdFactory, documentBuilderFactory, null);
+        WSDLInterfaceContract wsdlIC = BindingWSDLGenerator.createWSDLInterfaceContract(javaIC, false, new XSDModelResolver(null, null), dataBindings, wsdlFactory, xsdFactory, documentBuilderFactory, null);
         assertNotNull(wsdlIC);
         WSDLInterface wsdlInterface = (WSDLInterface)wsdlIC.getInterface();
         assertNotNull(wsdlInterface);
@@ -74,7 +74,7 @@
         new JAXWSJavaInterfaceProcessor(dataBindings, faultExceptionMapper, null).visitInterface(iface2);
         new DataBindingJavaInterfaceProcessor(registry).visitInterface(iface2);
         javaIC2.setInterface(iface2);
-        WSDLInterfaceContract wsdlIC2 = BindingWSDLGenerator.createWSDLInterfaceContract(javaIC2, false, new XSDModelResolver(null, null, null), dataBindings, wsdlFactory, xsdFactory, documentBuilderFactory, null);
+        WSDLInterfaceContract wsdlIC2 = BindingWSDLGenerator.createWSDLInterfaceContract(javaIC2, false, new XSDModelResolver(null, null), dataBindings, wsdlFactory, xsdFactory, documentBuilderFactory, null);
         assertNotNull(wsdlIC2);
     }
 

Modified: tuscany/java/sca/modules/binding-ws-wsdlgen/src/test/java/org/apache/tuscany/sca/binding/ws/wsdlgen/Interface2WSDLGeneratorTestCase.java
URL: http://svn.apache.org/viewvc/tuscany/java/sca/modules/binding-ws-wsdlgen/src/test/java/org/apache/tuscany/sca/binding/ws/wsdlgen/Interface2WSDLGeneratorTestCase.java?rev=825773&r1=825772&r2=825773&view=diff
==============================================================================
--- tuscany/java/sca/modules/binding-ws-wsdlgen/src/test/java/org/apache/tuscany/sca/binding/ws/wsdlgen/Interface2WSDLGeneratorTestCase.java (original)
+++ tuscany/java/sca/modules/binding-ws-wsdlgen/src/test/java/org/apache/tuscany/sca/binding/ws/wsdlgen/Interface2WSDLGeneratorTestCase.java Fri Oct 16 05:42:26 2009
@@ -62,7 +62,7 @@
         DocumentBuilderFactory documentBuilderFactory = modelFactories.getFactory(DocumentBuilderFactory.class);
         WSDLDefinition wsdlDefinition = wFactory.createWSDLDefinition();
         XSDFactory factory = new DefaultXSDFactory();
-        Interface2WSDLGenerator generator = new Interface2WSDLGenerator(false, new XSDModelResolver(null, null, null), dataBindings, factory, documentBuilderFactory, null);
+        Interface2WSDLGenerator generator = new Interface2WSDLGenerator(false, new XSDModelResolver(null, null), dataBindings, factory, documentBuilderFactory, null);
         Definition definition = generator.generate(iface, wsdlDefinition);
 
         // print the generated WSDL file and inline schemas

Modified: tuscany/java/sca/modules/binding-ws/src/main/java/org/apache/tuscany/sca/binding/ws/xml/WebServiceBindingProcessor.java
URL: http://svn.apache.org/viewvc/tuscany/java/sca/modules/binding-ws/src/main/java/org/apache/tuscany/sca/binding/ws/xml/WebServiceBindingProcessor.java?rev=825773&r1=825772&r2=825773&view=diff
==============================================================================
--- tuscany/java/sca/modules/binding-ws/src/main/java/org/apache/tuscany/sca/binding/ws/xml/WebServiceBindingProcessor.java (original)
+++ tuscany/java/sca/modules/binding-ws/src/main/java/org/apache/tuscany/sca/binding/ws/xml/WebServiceBindingProcessor.java Fri Oct 16 05:42:26 2009
@@ -39,11 +39,11 @@
 import org.apache.tuscany.sca.contribution.processor.ContributionReadException;
 import org.apache.tuscany.sca.contribution.processor.ContributionResolveException;
 import org.apache.tuscany.sca.contribution.processor.ContributionWriteException;
+import org.apache.tuscany.sca.contribution.processor.ProcessorContext;
 import org.apache.tuscany.sca.contribution.processor.StAXArtifactProcessor;
 import org.apache.tuscany.sca.contribution.resolver.ModelResolver;
 import org.apache.tuscany.sca.core.ExtensionPointRegistry;
 import org.apache.tuscany.sca.core.FactoryExtensionPoint;
-import org.apache.tuscany.sca.core.UtilityExtensionPoint;
 import org.apache.tuscany.sca.interfacedef.InvalidInterfaceException;
 import org.apache.tuscany.sca.interfacedef.wsdl.WSDLDefinition;
 import org.apache.tuscany.sca.interfacedef.wsdl.WSDLFactory;
@@ -51,7 +51,6 @@
 import org.apache.tuscany.sca.interfacedef.wsdl.WSDLInterfaceContract;
 import org.apache.tuscany.sca.interfacedef.wsdl.WSDLObject;
 import org.apache.tuscany.sca.monitor.Monitor;
-import org.apache.tuscany.sca.monitor.MonitorFactory;
 import org.apache.tuscany.sca.monitor.Problem;
 import org.apache.tuscany.sca.monitor.Problem.Severity;
 import org.apache.tuscany.sca.policy.PolicyFactory;
@@ -69,7 +68,7 @@
     private PolicyFactory policyFactory;
     private PolicySubjectProcessor policyProcessor;
     //private PolicyFactory intentAttachPointTypeFactory;
-    private Monitor monitor;
+    
     
     public WebServiceBindingProcessor(ExtensionPointRegistry extensionPoints) {
         this.extensionPoints = extensionPoints;
@@ -78,12 +77,6 @@
         this.wsFactory = modelFactories.getFactory(WebServiceBindingFactory.class);
         this.wsdlFactory = modelFactories.getFactory(WSDLFactory.class);
         this.policyProcessor = new PolicySubjectProcessor(policyFactory);
-        //this.intentAttachPointTypeFactory = modelFactories.getFactory(PolicyFactory.class);
-        UtilityExtensionPoint utilities = extensionPoints.getExtensionPoint(UtilityExtensionPoint.class);
-        MonitorFactory monitorFactory = utilities.getUtility(MonitorFactory.class);
-        if (monitorFactory != null) {
-            this.monitor = monitorFactory.createMonitor();
-        }
     }
     
     /**
@@ -93,7 +86,7 @@
      * @param message
      * @param model
      */
-    private void warning(String message, Object model, Object... messageParameters) {
+    private void warning(Monitor monitor, String message, Object model, Object... messageParameters) {
        if (monitor != null) {
            Problem problem = monitor.createProblem(this.getClass().getName(), "binding-wsxml-validation-messages", Severity.WARNING, model, message, (Object[])messageParameters);
            monitor.problem(problem);
@@ -107,15 +100,15 @@
      * @param message
      * @param model
      */
-    private void error(String message, Object model, Object... messageParameters) {
+    private void error(Monitor monitor, String message, Object model, Object... messageParameters) {
         if (monitor != null) {
             Problem problem = monitor.createProblem(this.getClass().getName(), "binding-wsxml-validation-messages", Severity.ERROR, model, message, (Object[])messageParameters);
             monitor.problem(problem);
         }        
     }
 
-    public WebServiceBinding read(XMLStreamReader reader) throws ContributionReadException, XMLStreamException {
-
+    public WebServiceBinding read(XMLStreamReader reader, ProcessorContext context) throws ContributionReadException, XMLStreamException {
+        Monitor monitor = context.getMonitor();
         // Read a <binding.ws>
         WebServiceBinding wsBinding = wsFactory.createWebServiceBinding();
         /*ExtensionType bindingType = intentAttachPointTypeFactory.createBindingType();
@@ -146,7 +139,7 @@
         if (wsdlElement != null) {
             int index = wsdlElement.indexOf('#');
             if (index == -1) {
-            	error("InvalidWsdlElementAttr", reader, wsdlElement);
+            	error(monitor, "InvalidWsdlElementAttr", reader, wsdlElement);
                 //throw new ContributionReadException("Invalid WebService binding wsdlElement attribute: " + wsdlElement);
             	return wsBinding;
             }
@@ -165,7 +158,7 @@
                 localName = localName.substring("wsdl.port(".length(), localName.length() - 1);
                 int s = localName.indexOf('/');
                 if (s == -1) {
-                	error("InvalidWsdlElementAttr", reader, wsdlElement);
+                	error(monitor, "InvalidWsdlElementAttr", reader, wsdlElement);
                     //throw new ContributionReadException("Invalid WebService binding wsdlElement attribute: " + wsdlElement);
                 } else {
                     wsBinding.setServiceName(new QName(namespace, localName.substring(0, s)));
@@ -177,7 +170,7 @@
                 localName = localName.substring("wsdl.endpoint(".length(), localName.length() - 1);
                 int s = localName.indexOf('/');
                 if (s == -1) {
-                	error("InvalidWsdlElementAttr", reader, wsdlElement);
+                	error(monitor, "InvalidWsdlElementAttr", reader, wsdlElement);
                     //throw new ContributionReadException("Invalid WebService binding wsdlElement attribute: " + wsdlElement);
                 } else {
                     wsBinding.setServiceName(new QName(namespace, localName.substring(0, s)));
@@ -192,7 +185,7 @@
                 wsdlElementIsBinding = true;
 
             } else {
-            	error("InvalidWsdlElementAttr", reader, wsdlElement);
+            	error(monitor, "InvalidWsdlElementAttr", reader, wsdlElement);
                 //throw new ContributionReadException("Invalid WebService binding wsdlElement attribute: " + wsdlElement);
             }
         }
@@ -207,7 +200,7 @@
                 case START_ELEMENT: {
                     if (END_POINT_REFERENCE.equals(reader.getName().getLocalPart())) {
                         if (wsdlElement != null && (wsdlElementIsBinding == null || !wsdlElementIsBinding)) {
-                        	error("MustUseWsdlBinding", reader, wsdlElement);
+                        	error(monitor, "MustUseWsdlBinding", reader, wsdlElement);
                             throw new ContributionReadException(wsdlElement + " must use wsdl.binding when using wsa:EndpointReference");
                         }
                         wsBinding.setEndPointReference(EndPointReferenceHelper.readEndPointReference(reader));
@@ -227,7 +220,7 @@
     protected void processEndPointReference(XMLStreamReader reader, WebServiceBinding wsBinding) {
     }
 
-    public void write(WebServiceBinding wsBinding, XMLStreamWriter writer) throws ContributionWriteException,
+    public void write(WebServiceBinding wsBinding, XMLStreamWriter writer, ProcessorContext context) throws ContributionWriteException,
         XMLStreamException {
 
         // Write a <binding.ws>
@@ -298,15 +291,15 @@
         writer.writeEndElement();
     }
 
-    public void resolve(WebServiceBinding model, ModelResolver resolver) throws ContributionResolveException {
+    public void resolve(WebServiceBinding model, ModelResolver resolver, ProcessorContext context) throws ContributionResolveException {
         
     	if (model == null || !model.isUnresolved())
     		return;
-    		
+    	Monitor monitor = context.getMonitor();	
     	WSDLDefinition wsdlDefinition = wsdlFactory.createWSDLDefinition();
         wsdlDefinition.setUnresolved(true);
         wsdlDefinition.setNamespace(model.getNamespace());
-        WSDLDefinition resolved = resolver.resolveModel(WSDLDefinition.class, wsdlDefinition);
+        WSDLDefinition resolved = resolver.resolveModel(WSDLDefinition.class, wsdlDefinition, context);
 
         if (!resolved.isUnresolved()) {
             wsdlDefinition.setDefinition(resolved.getDefinition());
@@ -322,7 +315,7 @@
                     wsdlDefinition.setDefinition(binding.getDefinition());
                     model.setBinding(binding.getElement());
                 } else {
-                	warning("WsdlBindingDoesNotMatch", wsdlDefinition, model.getBindingName());
+                	warning(monitor, "WsdlBindingDoesNotMatch", wsdlDefinition, model.getBindingName());
                 }
             }
             if (model.getServiceName() != null) {
@@ -336,11 +329,11 @@
                             model.setPort(port);
                             model.setBinding(port.getBinding());
                         } else {
-                            warning("WsdlPortTypeDoesNotMatch", wsdlDefinition, model.getPortName());
+                            warning(monitor, "WsdlPortTypeDoesNotMatch", wsdlDefinition, model.getPortName());
                         }
                     }
                 } else {
-                	warning("WsdlServiceDoesNotMatch", wsdlDefinition, model.getServiceName());
+                	warning(monitor, "WsdlServiceDoesNotMatch", wsdlDefinition, model.getServiceName());
                 }
             }
 
@@ -349,9 +342,9 @@
                 WSDLInterfaceContract interfaceContract = wsdlFactory.createWSDLInterfaceContract();
                 WSDLInterface wsdlInterface = null;
                 try {
-                    wsdlInterface = wsdlFactory.createWSDLInterface(portType, wsdlDefinition, resolver);
+                    wsdlInterface = wsdlFactory.createWSDLInterface(portType, wsdlDefinition, resolver, context.getMonitor());
                 } catch (InvalidInterfaceException e) {
-                	warning("InvalidInterfaceException", wsdlFactory, model.getName()); 
+                	warning(monitor, "InvalidInterfaceException", wsdlFactory, model.getName()); 
                 }
                 interfaceContract.setInterface(wsdlInterface);
                 model.setBindingInterfaceContract(interfaceContract);

Modified: tuscany/java/sca/modules/binding-ws/src/test/java/org/apache/tuscany/sca/binding/ws/xml/ReadTestCase.java
URL: http://svn.apache.org/viewvc/tuscany/java/sca/modules/binding-ws/src/test/java/org/apache/tuscany/sca/binding/ws/xml/ReadTestCase.java?rev=825773&r1=825772&r2=825773&view=diff
==============================================================================
--- tuscany/java/sca/modules/binding-ws/src/test/java/org/apache/tuscany/sca/binding/ws/xml/ReadTestCase.java (original)
+++ tuscany/java/sca/modules/binding-ws/src/test/java/org/apache/tuscany/sca/binding/ws/xml/ReadTestCase.java Fri Oct 16 05:42:26 2009
@@ -33,6 +33,7 @@
 import org.apache.tuscany.sca.contribution.processor.ContributionReadException;
 import org.apache.tuscany.sca.contribution.processor.DefaultStAXArtifactProcessorExtensionPoint;
 import org.apache.tuscany.sca.contribution.processor.ExtensibleStAXArtifactProcessor;
+import org.apache.tuscany.sca.contribution.processor.ProcessorContext;
 import org.apache.tuscany.sca.contribution.processor.StAXArtifactProcessor;
 import org.apache.tuscany.sca.contribution.processor.StAXArtifactProcessorExtensionPoint;
 import org.apache.tuscany.sca.core.DefaultExtensionPointRegistry;
@@ -48,20 +49,22 @@
 
     private static XMLInputFactory inputFactory;
     private static StAXArtifactProcessor<Object> staxProcessor;
-
+    private static ProcessorContext context;
+    
     @BeforeClass
     public static void setUp() throws Exception {
         DefaultExtensionPointRegistry extensionPoints = new DefaultExtensionPointRegistry();
+        context = new ProcessorContext(extensionPoints);
         inputFactory = XMLInputFactory.newInstance();
         StAXArtifactProcessorExtensionPoint staxProcessors = new DefaultStAXArtifactProcessorExtensionPoint(extensionPoints);
-        staxProcessor = new ExtensibleStAXArtifactProcessor(staxProcessors, inputFactory, null, null);
+        staxProcessor = new ExtensibleStAXArtifactProcessor(staxProcessors, inputFactory, null);
     }
 
     @Test
     public void testReadComponentType() throws Exception {
         InputStream is = getClass().getResourceAsStream("CalculatorImpl.componentType");
         XMLStreamReader reader = inputFactory.createXMLStreamReader(is);
-        ComponentType componentType = (ComponentType)staxProcessor.read(reader);
+        ComponentType componentType = (ComponentType)staxProcessor.read(reader, context);
         assertNotNull(componentType);
     }
     
@@ -69,7 +72,7 @@
     public void testReadComposite() throws Exception {
         InputStream is = getClass().getResourceAsStream("Calculator.composite");
         XMLStreamReader reader = inputFactory.createXMLStreamReader(is);
-        Composite composite = (Composite)staxProcessor.read(reader);
+        Composite composite = (Composite)staxProcessor.read(reader, context);
         assertNotNull(composite);
     }
     
@@ -77,7 +80,7 @@
     public void testReadPolicies() throws Exception {
         InputStream is = getClass().getResourceAsStream("PoliciedCalculator.composite");
         XMLStreamReader reader = inputFactory.createXMLStreamReader(is);
-        Composite composite = (Composite)staxProcessor.read(reader);
+        Composite composite = (Composite)staxProcessor.read(reader, context);
         assertNotNull(composite);
     }
 
@@ -93,7 +96,7 @@
         InputStream is = getClass().getResourceAsStream("Calculator-bad-wsdlElement.composite");
         XMLStreamReader reader = inputFactory.createXMLStreamReader(is);
         try {
-            staxProcessor.read(reader);
+            staxProcessor.read(reader, context);
             fail("ContributionReadException expected.");
         } catch(ContributionReadException e) {
             // Expected

Modified: tuscany/java/sca/modules/binding-ws/src/test/java/org/apache/tuscany/sca/binding/ws/xml/WriteTestCase.java
URL: http://svn.apache.org/viewvc/tuscany/java/sca/modules/binding-ws/src/test/java/org/apache/tuscany/sca/binding/ws/xml/WriteTestCase.java?rev=825773&r1=825772&r2=825773&view=diff
==============================================================================
--- tuscany/java/sca/modules/binding-ws/src/test/java/org/apache/tuscany/sca/binding/ws/xml/WriteTestCase.java (original)
+++ tuscany/java/sca/modules/binding-ws/src/test/java/org/apache/tuscany/sca/binding/ws/xml/WriteTestCase.java Fri Oct 16 05:42:26 2009
@@ -31,6 +31,7 @@
 import org.apache.tuscany.sca.assembly.Composite;
 import org.apache.tuscany.sca.contribution.processor.DefaultStAXArtifactProcessorExtensionPoint;
 import org.apache.tuscany.sca.contribution.processor.ExtensibleStAXArtifactProcessor;
+import org.apache.tuscany.sca.contribution.processor.ProcessorContext;
 import org.apache.tuscany.sca.contribution.processor.StAXArtifactProcessor;
 import org.apache.tuscany.sca.contribution.processor.StAXArtifactProcessorExtensionPoint;
 import org.apache.tuscany.sca.core.DefaultExtensionPointRegistry;
@@ -47,32 +48,34 @@
     private static XMLInputFactory inputFactory;
     private static XMLOutputFactory outputFactory;
     private static StAXArtifactProcessor<Object> staxProcessor;
+    private static ProcessorContext context;
 
     @BeforeClass
     public static void setUp() throws Exception {
         DefaultExtensionPointRegistry extensionPoints = new DefaultExtensionPointRegistry();
+        context = new ProcessorContext(extensionPoints);
         inputFactory = XMLInputFactory.newInstance();
         outputFactory = XMLOutputFactory.newInstance();
         StAXArtifactProcessorExtensionPoint staxProcessors = new DefaultStAXArtifactProcessorExtensionPoint(extensionPoints);
-        staxProcessor = new ExtensibleStAXArtifactProcessor(staxProcessors, inputFactory, outputFactory, null);
+        staxProcessor = new ExtensibleStAXArtifactProcessor(staxProcessors, inputFactory, outputFactory);
     }
 
     @Test
     public void testReadWriteComponentType() throws Exception {
         InputStream is = getClass().getResourceAsStream("CalculatorImpl.componentType");
-        ComponentType componentType = (ComponentType)staxProcessor.read(inputFactory.createXMLStreamReader(is));
+        ComponentType componentType = (ComponentType)staxProcessor.read(inputFactory.createXMLStreamReader(is), context);
         assertNotNull(componentType);
         ByteArrayOutputStream bos = new ByteArrayOutputStream();
-        staxProcessor.write(componentType, outputFactory.createXMLStreamWriter(bos));
+        staxProcessor.write(componentType, outputFactory.createXMLStreamWriter(bos), context);
     }
 
     @Test
     public void testReadWriteComposite() throws Exception {
         InputStream is = getClass().getResourceAsStream("Calculator.composite");
-        Composite composite = (Composite)staxProcessor.read(inputFactory.createXMLStreamReader(is));
+        Composite composite = (Composite)staxProcessor.read(inputFactory.createXMLStreamReader(is), context);
         assertNotNull(composite);
         ByteArrayOutputStream bos = new ByteArrayOutputStream();
-        staxProcessor.write(composite, outputFactory.createXMLStreamWriter(bos));
+        staxProcessor.write(composite, outputFactory.createXMLStreamWriter(bos), context);
         System.out.println(bos.toString());
     }
 

Modified: tuscany/java/sca/modules/builder/src/main/java/org/apache/tuscany/sca/builder/impl/BindingURIBuilderImpl.java
URL: http://svn.apache.org/viewvc/tuscany/java/sca/modules/builder/src/main/java/org/apache/tuscany/sca/builder/impl/BindingURIBuilderImpl.java?rev=825773&r1=825772&r2=825773&view=diff
==============================================================================
--- tuscany/java/sca/modules/builder/src/main/java/org/apache/tuscany/sca/builder/impl/BindingURIBuilderImpl.java (original)
+++ tuscany/java/sca/modules/builder/src/main/java/org/apache/tuscany/sca/builder/impl/BindingURIBuilderImpl.java Fri Oct 16 05:42:26 2009
@@ -32,9 +32,9 @@
 import org.apache.tuscany.sca.assembly.Composite;
 import org.apache.tuscany.sca.assembly.Implementation;
 import org.apache.tuscany.sca.assembly.Service;
+import org.apache.tuscany.sca.assembly.builder.BuilderContext;
 import org.apache.tuscany.sca.assembly.builder.CompositeBuilder;
 import org.apache.tuscany.sca.assembly.builder.CompositeBuilderException;
-import org.apache.tuscany.sca.assembly.builder.DeployedCompositeBuilder;
 import org.apache.tuscany.sca.assembly.builder.Messages;
 import org.apache.tuscany.sca.core.ExtensionPointRegistry;
 import org.apache.tuscany.sca.definitions.Definitions;
@@ -45,7 +45,7 @@
  *
  * @version $Rev$ $Date$
  */
-public class BindingURIBuilderImpl implements CompositeBuilder, DeployedCompositeBuilder {
+public class BindingURIBuilderImpl implements CompositeBuilder {
 
     public BindingURIBuilderImpl(ExtensionPointRegistry registry) {
     }
@@ -55,27 +55,12 @@
      *
      * @param composite the composite to be configured
      */
-    public Composite build(Composite composite, Definitions definitions, Monitor monitor)
+    public Composite build(Composite composite, BuilderContext context)
         throws CompositeBuilderException {
-        configureBindingURIs(composite, null, definitions, null, monitor);
+        configureBindingURIs(composite, null, context.getDefinitions(), context.getBindingBaseURIs(), context.getMonitor());
         return composite;
     }
 
-    /**
-     * Fully resolve the binding URIs based on available information. This includes information
-     * from the ".composite" files, from resources associated with the binding, e.g. WSDL files,
-     * from any associated policies and from the default information for each binding type.
-     *
-     * @param composite the composite to be configured
-     * @param defaultBindings list of default binding configurations
-     */
-    public Composite build(Composite composite,
-                           Definitions definitions,
-                           Map<QName, List<String>> defaultBindings,
-                           Monitor monitor) throws CompositeBuilderException {
-        configureBindingURIs(composite, null, definitions, defaultBindings, monitor);
-        return composite;
-    }
 
     /**
      * Fully resolve the binding URIs based on available information. This includes information

Modified: tuscany/java/sca/modules/builder/src/main/java/org/apache/tuscany/sca/builder/impl/ComponentBuilderImpl.java
URL: http://svn.apache.org/viewvc/tuscany/java/sca/modules/builder/src/main/java/org/apache/tuscany/sca/builder/impl/ComponentBuilderImpl.java?rev=825773&r1=825772&r2=825773&view=diff
==============================================================================
--- tuscany/java/sca/modules/builder/src/main/java/org/apache/tuscany/sca/builder/impl/ComponentBuilderImpl.java (original)
+++ tuscany/java/sca/modules/builder/src/main/java/org/apache/tuscany/sca/builder/impl/ComponentBuilderImpl.java Fri Oct 16 05:42:26 2009
@@ -51,6 +51,7 @@
 import org.apache.tuscany.sca.assembly.SCABinding;
 import org.apache.tuscany.sca.assembly.SCABindingFactory;
 import org.apache.tuscany.sca.assembly.Service;
+import org.apache.tuscany.sca.assembly.builder.BuilderContext;
 import org.apache.tuscany.sca.assembly.builder.BuilderExtensionPoint;
 import org.apache.tuscany.sca.assembly.builder.ImplementationBuilder;
 import org.apache.tuscany.sca.assembly.builder.Messages;
@@ -62,7 +63,6 @@
 import org.apache.tuscany.sca.interfacedef.InterfaceContract;
 import org.apache.tuscany.sca.interfacedef.InterfaceContractMapper;
 import org.apache.tuscany.sca.monitor.Monitor;
-import org.apache.tuscany.sca.monitor.MonitorFactory;
 import org.apache.tuscany.sca.policy.ExtensionType;
 import org.apache.tuscany.sca.policy.PolicySubject;
 import org.w3c.dom.Document;
@@ -79,7 +79,6 @@
     protected static final QName BINDING_SCA_QNAME = new QName(SCA11_NS, BINDING_SCA);
 
     private CompositeComponentTypeBuilderImpl componentTypeBuilder;
-    private Monitor monitor;
     private AssemblyFactory assemblyFactory;
     private SCABindingFactory scaBindingFactory;
     private DocumentBuilderFactory documentBuilderFactory;
@@ -89,8 +88,6 @@
 
     public ComponentBuilderImpl(ExtensionPointRegistry registry) {
         UtilityExtensionPoint utilities = registry.getExtensionPoint(UtilityExtensionPoint.class);
-        MonitorFactory monitorFactory = utilities.getUtility(MonitorFactory.class);
-        monitor = monitorFactory.createMonitor();
 
         FactoryExtensionPoint modelFactories = registry.getExtensionPoint(FactoryExtensionPoint.class);
         assemblyFactory = modelFactories.getFactory(AssemblyFactory.class);
@@ -113,8 +110,9 @@
      * @Param parentComposite the composite that contains the component being configured. Required for property processing
      * @param component the component to be configured
      */
-    public void configureComponentFromComponentType(Component outerComponent, Composite parentComposite, Component component) {
+    public void configureComponentFromComponentType(Component outerComponent, Composite parentComposite, Component component, BuilderContext context) {
 
+        Monitor monitor = context.getMonitor();
         monitor.pushContext("Component: " + component.getName().toString());
         
         try {
@@ -132,7 +130,7 @@
             if (impl != null) {
                 ImplementationBuilder builder = builders.getImplementationBuilder(impl.getType());
                 if (builder != null) {
-                    builder.build(component, impl, monitor);
+                    builder.build(component, impl, context);
                 }
             }
     
@@ -141,17 +139,17 @@
             // composite level property values. Hence we have to calculate whether the component 
             // type property value should be overridden by this component's property value 
             // before we go ahead and calculate the component type
-            configureProperties(outerComponent, parentComposite, component);
+            configureProperties(outerComponent, parentComposite, component, monitor);
     
             // create the component type for this component 
             // taking any nested composites into account
-            createComponentType(component);
+            createComponentType(component, context);
     
             // configure services based on the calculated component type
-            configureServices(component);
+            configureServices(component, monitor);
     
             // configure services based on the calculated component type
-            configureReferences(component);
+            configureReferences(component, monitor);
         } finally {
             monitor.popContext();
         }         
@@ -195,10 +193,10 @@
      * 
      * @param component
      */
-    private void createComponentType(Component component) {
+    private void createComponentType(Component component, BuilderContext context) {
         Implementation implementation = component.getImplementation();
         if (implementation instanceof Composite) {
-            componentTypeBuilder.createComponentType(component, (Composite)implementation);
+            componentTypeBuilder.createComponentType(component, (Composite)implementation, context);
         }
     }
 
@@ -208,15 +206,15 @@
      * 
      * @param component
      */
-    private void configureServices(Component component) {
+    private void configureServices(Component component, Monitor monitor) {
 
         // If the component type has services that are not described in this
         // component then create services for this component
-        addServicesFromComponentType(component);
+        addServicesFromComponentType(component, monitor);
 
         // Connect this component's services to the 
         // services from its component type
-        connectServicesToComponentType(component);
+        connectServicesToComponentType(component, monitor);
 
         // look at each component service in turn and calculate its 
         // configuration based on OASIS rules
@@ -231,7 +229,7 @@
             }
 
             // interface contracts
-            calculateServiceInterfaceContract(component, componentService, componentTypeService);
+            calculateServiceInterfaceContract(component, componentService, componentTypeService, monitor);
 
             // bindings
             calculateBindings(componentService, componentTypeService);
@@ -256,15 +254,15 @@
      * 
      * @param component
      */
-    private void configureReferences(Component component) {
+    private void configureReferences(Component component, Monitor monitor) {
 
         // If the component type has references that are not described in this
         // component then create references for this component
-        addReferencesFromComponentType(component);
+        addReferencesFromComponentType(component, monitor);
 
         // Connect this component's references to the 
         // references from its component type
-        connectReferencesToComponentType(component);
+        connectReferencesToComponentType(component, monitor);
 
         // look at each component reference in turn and calculate its 
         // configuration based on OASIS rules
@@ -278,10 +276,10 @@
             }
 
             // reference multiplicity
-            reconcileReferenceMultiplicity(component, componentReference, componentTypeReference);
+            reconcileReferenceMultiplicity(component, componentReference, componentTypeReference, monitor);
 
             // interface contracts
-            calculateReferenceInterfaceContract(component, componentReference, componentTypeReference);
+            calculateReferenceInterfaceContract(component, componentReference, componentTypeReference, monitor);
 
             // bindings
             calculateBindings(componentReference, componentTypeReference);
@@ -317,26 +315,26 @@
      * 
      * @param component
      */
-    private void configureProperties(Component outerComponent, Composite parentComposite, Component component) {
+    private void configureProperties(Component outerComponent, Composite parentComposite, Component component, Monitor monitor) {
         // If the component type has properties that are not described in this
         // component then create properties for this component
-        addPropertiesFromComponentType(component);
+        addPropertiesFromComponentType(component, monitor);
 
         // Connect this component's properties to the 
         // properties from its component type
-        connectPropertiesToComponentType(component);
+        connectPropertiesToComponentType(component, monitor);
 
         // Reconcile component properties and their component type properties
         for (ComponentProperty componentProperty : component.getProperties()) {
-            reconcileComponentPropertyWithComponentType(component, componentProperty);
+            reconcileComponentPropertyWithComponentType(component, componentProperty, monitor);
 
             // configure the property value based on the @source attribute
             // At the moment this is done in the parent composite component
             // type calculation 
-            processPropertySourceAttribute(outerComponent, parentComposite, component, componentProperty);
+            processPropertySourceAttribute(outerComponent, parentComposite, component, componentProperty, monitor);
 
             // configure the property value based on the @file attribute
-            processPropertyFileAttribute(component, componentProperty);
+            processPropertyFileAttribute(component, componentProperty, monitor);
             
             // Check that a value is supplied
             if (componentProperty.isMustSupply() && !isPropertyValueSet(componentProperty)) {
@@ -361,7 +359,7 @@
         }
     }
 
-    private void addServicesFromComponentType(Component component) {
+    private void addServicesFromComponentType(Component component, Monitor monitor) {
 
         // Create a component service for each service
         if (component.getImplementation() != null) {
@@ -391,7 +389,7 @@
         }
     }
 
-    private void addReferencesFromComponentType(Component component) {
+    private void addReferencesFromComponentType(Component component, Monitor monitor) {
 
         // Create a component reference for each reference
         if (component.getImplementation() != null) {
@@ -421,7 +419,7 @@
         }
     }
 
-    private void addPropertiesFromComponentType(Component component) {
+    private void addPropertiesFromComponentType(Component component, Monitor monitor) {
 
         // Create component property for each property
         if (component.getImplementation() != null) {
@@ -454,7 +452,7 @@
         }
     }
 
-    private void connectServicesToComponentType(Component component) {
+    private void connectServicesToComponentType(Component component, Monitor monitor) {
 
         // Connect each component service to the corresponding component type service
         for (ComponentService componentService : component.getServices()) {
@@ -492,7 +490,7 @@
         }
     }
 
-    private void connectReferencesToComponentType(Component component) {
+    private void connectReferencesToComponentType(Component component, Monitor monitor) {
 
         // Connect each component reference to the corresponding component type reference
         for (ComponentReference componentReference : component.getReferences()) {
@@ -530,7 +528,7 @@
         }
     }
 
-    private void connectPropertiesToComponentType(Component component) {
+    private void connectPropertiesToComponentType(Component component, Monitor monitor) {
         // Connect each component property to the corresponding component type property
         for (ComponentProperty componentProperty : component.getProperties()) {
             // check for duplicate property names in component
@@ -560,7 +558,8 @@
 
     private void reconcileReferenceMultiplicity(Component component,
                                                 Reference componentReference,
-                                                Reference componentTypeReference) {
+                                                Reference componentTypeReference,
+                                                Monitor monitor) {
         if (componentReference.getMultiplicity() != null) {
             if (!isValidMultiplicityOverride(componentTypeReference.getMultiplicity(), componentReference
                 .getMultiplicity())) {
@@ -576,7 +575,7 @@
         }
     }
 
-    private void reconcileComponentPropertyWithComponentType(Component component, ComponentProperty componentProperty) {
+    private void reconcileComponentPropertyWithComponentType(Component component, ComponentProperty componentProperty, Monitor monitor) {
         Property componentTypeProperty = componentProperty.getProperty();
         if (componentTypeProperty != null) {
 
@@ -676,7 +675,8 @@
     private void processPropertySourceAttribute(Component outerComponent,
                                                 Composite parentComposite,
                                                 Component component,
-                                                ComponentProperty componentProperty) {
+                                                ComponentProperty componentProperty,
+                                                Monitor monitor) {
         String source = componentProperty.getSource();
 
         if (source != null) {
@@ -754,7 +754,7 @@
      * @param parentCompoent the composite that contains the component
      * @param component
      */
-    private void processPropertyFileAttribute(Component component, ComponentProperty componentProperty) {
+    private void processPropertyFileAttribute(Component component, ComponentProperty componentProperty, Monitor monitor) {
         String file = componentProperty.getFile();
         if (file != null) {
             try {
@@ -1120,7 +1120,7 @@
      * @param topContract the top contract 
      * @param bottomContract the bottom contract
      */
-    private void calculateServiceInterfaceContract(Component component, Service topContract, Service bottomContract) {
+    private void calculateServiceInterfaceContract(Component component, Service topContract, Service bottomContract, Monitor monitor) {
 
         // Use the interface contract from the bottom level contract if
         // none is specified on the top level contract
@@ -1160,7 +1160,7 @@
      * @param topContract the top contract 
      * @param bottomContract the bottom contract
      */
-    private void calculateReferenceInterfaceContract(Component component, Reference topContract, Reference bottomContract) {
+    private void calculateReferenceInterfaceContract(Component component, Reference topContract, Reference bottomContract, Monitor monitor) {
 
         // Use the interface contract from the bottom level contract if
         // none is specified on the top level contract

Modified: tuscany/java/sca/modules/builder/src/main/java/org/apache/tuscany/sca/builder/impl/ComponentReferenceBindingBuilderImpl.java
URL: http://svn.apache.org/viewvc/tuscany/java/sca/modules/builder/src/main/java/org/apache/tuscany/sca/builder/impl/ComponentReferenceBindingBuilderImpl.java?rev=825773&r1=825772&r2=825773&view=diff
==============================================================================
--- tuscany/java/sca/modules/builder/src/main/java/org/apache/tuscany/sca/builder/impl/ComponentReferenceBindingBuilderImpl.java (original)
+++ tuscany/java/sca/modules/builder/src/main/java/org/apache/tuscany/sca/builder/impl/ComponentReferenceBindingBuilderImpl.java Fri Oct 16 05:42:26 2009
@@ -25,12 +25,11 @@
 import org.apache.tuscany.sca.assembly.Composite;
 import org.apache.tuscany.sca.assembly.Implementation;
 import org.apache.tuscany.sca.assembly.builder.BindingBuilder;
+import org.apache.tuscany.sca.assembly.builder.BuilderContext;
 import org.apache.tuscany.sca.assembly.builder.BuilderExtensionPoint;
 import org.apache.tuscany.sca.assembly.builder.CompositeBuilder;
 import org.apache.tuscany.sca.assembly.builder.CompositeBuilderException;
 import org.apache.tuscany.sca.core.ExtensionPointRegistry;
-import org.apache.tuscany.sca.definitions.Definitions;
-import org.apache.tuscany.sca.monitor.Monitor;
 
 /**
  * A composite builder that performs any additional building steps that
@@ -46,9 +45,9 @@
         this.builders = registry.getExtensionPoint(BuilderExtensionPoint.class);
     }
 
-    public Composite build(Composite composite, Definitions definitions, Monitor monitor)
+    public Composite build(Composite composite, BuilderContext context)
         throws CompositeBuilderException {
-        buildReferenceBindings(composite, monitor);
+        buildReferenceBindings(composite, context);
         return composite;
     }
 
@@ -56,7 +55,7 @@
         return "org.apache.tuscany.sca.assembly.builder.ComponentReferenceBindingBuilder";
     }
 
-    private void buildReferenceBindings(Composite composite, Monitor monitor) {
+    private void buildReferenceBindings(Composite composite, BuilderContext context) {
 
         // find all the component reference bindings (starting at top level)     
         for (Component component : composite.getComponents()) {
@@ -64,7 +63,7 @@
                 for (Binding binding : componentReference.getBindings()) {
                     BindingBuilder builder = builders.getBindingBuilder(binding.getType());
                     if (builder != null) {
-                        builder.build(component, componentReference, binding, monitor);
+                        builder.build(component, componentReference, binding, context);
                     }
                 }
             }
@@ -74,7 +73,7 @@
         for (Component component : composite.getComponents()) {
             Implementation implementation = component.getImplementation();
             if (implementation instanceof Composite) {
-                buildReferenceBindings((Composite)implementation, monitor);
+                buildReferenceBindings((Composite)implementation, context);
             }
         }
     }

Modified: tuscany/java/sca/modules/builder/src/main/java/org/apache/tuscany/sca/builder/impl/ComponentReferencePromotionBuilderImpl.java
URL: http://svn.apache.org/viewvc/tuscany/java/sca/modules/builder/src/main/java/org/apache/tuscany/sca/builder/impl/ComponentReferencePromotionBuilderImpl.java?rev=825773&r1=825772&r2=825773&view=diff
==============================================================================
--- tuscany/java/sca/modules/builder/src/main/java/org/apache/tuscany/sca/builder/impl/ComponentReferencePromotionBuilderImpl.java (original)
+++ tuscany/java/sca/modules/builder/src/main/java/org/apache/tuscany/sca/builder/impl/ComponentReferencePromotionBuilderImpl.java Fri Oct 16 05:42:26 2009
@@ -29,11 +29,11 @@
 import org.apache.tuscany.sca.assembly.Implementation;
 import org.apache.tuscany.sca.assembly.Reference;
 import org.apache.tuscany.sca.assembly.SCABinding;
+import org.apache.tuscany.sca.assembly.builder.BuilderContext;
 import org.apache.tuscany.sca.assembly.builder.CompositeBuilder;
 import org.apache.tuscany.sca.assembly.builder.CompositeBuilderException;
 import org.apache.tuscany.sca.core.ExtensionPointRegistry;
 import org.apache.tuscany.sca.core.FactoryExtensionPoint;
-import org.apache.tuscany.sca.definitions.Definitions;
 import org.apache.tuscany.sca.monitor.Monitor;
 
 /**
@@ -49,9 +49,9 @@
         this.assemblyFactory = factories.getFactory(AssemblyFactory.class);
     }
 
-    public Composite build(Composite composite, Definitions definitions, Monitor monitor)
+    public Composite build(Composite composite, BuilderContext context)
         throws CompositeBuilderException {
-        configureNestedCompositeReferences(composite, monitor);
+        configureNestedCompositeReferences(composite, context.getMonitor());
         return composite;
     }
 

Modified: tuscany/java/sca/modules/builder/src/main/java/org/apache/tuscany/sca/builder/impl/ComponentServiceBindingBuilderImpl.java
URL: http://svn.apache.org/viewvc/tuscany/java/sca/modules/builder/src/main/java/org/apache/tuscany/sca/builder/impl/ComponentServiceBindingBuilderImpl.java?rev=825773&r1=825772&r2=825773&view=diff
==============================================================================
--- tuscany/java/sca/modules/builder/src/main/java/org/apache/tuscany/sca/builder/impl/ComponentServiceBindingBuilderImpl.java (original)
+++ tuscany/java/sca/modules/builder/src/main/java/org/apache/tuscany/sca/builder/impl/ComponentServiceBindingBuilderImpl.java Fri Oct 16 05:42:26 2009
@@ -25,12 +25,11 @@
 import org.apache.tuscany.sca.assembly.Composite;
 import org.apache.tuscany.sca.assembly.Implementation;
 import org.apache.tuscany.sca.assembly.builder.BindingBuilder;
+import org.apache.tuscany.sca.assembly.builder.BuilderContext;
 import org.apache.tuscany.sca.assembly.builder.BuilderExtensionPoint;
 import org.apache.tuscany.sca.assembly.builder.CompositeBuilder;
 import org.apache.tuscany.sca.assembly.builder.CompositeBuilderException;
 import org.apache.tuscany.sca.core.ExtensionPointRegistry;
-import org.apache.tuscany.sca.definitions.Definitions;
-import org.apache.tuscany.sca.monitor.Monitor;
 
 /**
  * A composite builder that performs any additional building steps that
@@ -49,19 +48,19 @@
         return "org.apache.tuscany.sca.assembly.builder.ComponentServiceBindingBuilder";
     }
 
-    public Composite build(Composite composite, Definitions definitions, Monitor monitor)
+    public Composite build(Composite composite, BuilderContext context)
         throws CompositeBuilderException {
-        buildServiceBindings(composite, monitor);
+        buildServiceBindings(composite, context);
         return composite;
     }
 
-    private void buildServiceBindings(Composite composite, Monitor monitor) {
+    private void buildServiceBindings(Composite composite, BuilderContext context) {
 
         // build bindings recursively
         for (Component component : composite.getComponents()) {
             Implementation implementation = component.getImplementation();
             if (implementation instanceof Composite) {
-                buildServiceBindings((Composite)implementation, monitor);
+                buildServiceBindings((Composite)implementation, context);
             }
         }
 
@@ -71,7 +70,7 @@
                 for (Binding binding : componentService.getBindings()) {
                     BindingBuilder builder = builders.getBindingBuilder(binding.getType());
                     if (builder != null) {
-                        builder.build(component, componentService, binding, monitor);
+                        builder.build(component, componentService, binding, context);
                     }
                 }
             }

Modified: tuscany/java/sca/modules/builder/src/main/java/org/apache/tuscany/sca/builder/impl/CompositeCloneBuilderImpl.java
URL: http://svn.apache.org/viewvc/tuscany/java/sca/modules/builder/src/main/java/org/apache/tuscany/sca/builder/impl/CompositeCloneBuilderImpl.java?rev=825773&r1=825772&r2=825773&view=diff
==============================================================================
--- tuscany/java/sca/modules/builder/src/main/java/org/apache/tuscany/sca/builder/impl/CompositeCloneBuilderImpl.java (original)
+++ tuscany/java/sca/modules/builder/src/main/java/org/apache/tuscany/sca/builder/impl/CompositeCloneBuilderImpl.java Fri Oct 16 05:42:26 2009
@@ -25,10 +25,9 @@
 import org.apache.tuscany.sca.assembly.Component;
 import org.apache.tuscany.sca.assembly.Composite;
 import org.apache.tuscany.sca.assembly.Implementation;
+import org.apache.tuscany.sca.assembly.builder.BuilderContext;
 import org.apache.tuscany.sca.assembly.builder.CompositeBuilder;
 import org.apache.tuscany.sca.assembly.builder.CompositeBuilderException;
-import org.apache.tuscany.sca.definitions.Definitions;
-import org.apache.tuscany.sca.monitor.Monitor;
 
 /**
  * A composite builder that clones nested composites.
@@ -40,7 +39,7 @@
     public CompositeCloneBuilderImpl() {
     }
 
-    public Composite build(Composite composite, Definitions definitions, Monitor monitor)
+    public Composite build(Composite composite, BuilderContext context)
         throws CompositeBuilderException {
 
         if (Composite.DOMAIN_COMPOSITE.equals(composite.getName())) {

Modified: tuscany/java/sca/modules/builder/src/main/java/org/apache/tuscany/sca/builder/impl/CompositeComponentTypeBuilderImpl.java
URL: http://svn.apache.org/viewvc/tuscany/java/sca/modules/builder/src/main/java/org/apache/tuscany/sca/builder/impl/CompositeComponentTypeBuilderImpl.java?rev=825773&r1=825772&r2=825773&view=diff
==============================================================================
--- tuscany/java/sca/modules/builder/src/main/java/org/apache/tuscany/sca/builder/impl/CompositeComponentTypeBuilderImpl.java (original)
+++ tuscany/java/sca/modules/builder/src/main/java/org/apache/tuscany/sca/builder/impl/CompositeComponentTypeBuilderImpl.java Fri Oct 16 05:42:26 2009
@@ -39,6 +39,7 @@
 import org.apache.tuscany.sca.assembly.SCABinding;
 import org.apache.tuscany.sca.assembly.SCABindingFactory;
 import org.apache.tuscany.sca.assembly.Service;
+import org.apache.tuscany.sca.assembly.builder.BuilderContext;
 import org.apache.tuscany.sca.assembly.builder.BuilderExtensionPoint;
 import org.apache.tuscany.sca.assembly.builder.Messages;
 import org.apache.tuscany.sca.core.ExtensionPointRegistry;
@@ -49,7 +50,6 @@
 import org.apache.tuscany.sca.interfacedef.InterfaceContract;
 import org.apache.tuscany.sca.interfacedef.InterfaceContractMapper;
 import org.apache.tuscany.sca.monitor.Monitor;
-import org.apache.tuscany.sca.monitor.MonitorFactory;
 import org.apache.tuscany.sca.policy.ExtensionType;
 import org.apache.tuscany.sca.policy.PolicySubject;
 
@@ -67,7 +67,6 @@
     protected static final QName BINDING_SCA_QNAME = new QName(SCA11_NS, BINDING_SCA);
 
     private ComponentBuilderImpl componentBuilder;
-    private Monitor monitor;
     private AssemblyFactory assemblyFactory;
     private SCABindingFactory scaBindingFactory;
     private InterfaceContractMapper interfaceContractMapper;
@@ -75,8 +74,6 @@
 
     public CompositeComponentTypeBuilderImpl(ExtensionPointRegistry registry) {
         UtilityExtensionPoint utilities = registry.getExtensionPoint(UtilityExtensionPoint.class);
-        MonitorFactory monitorFactory = utilities.getUtility(MonitorFactory.class);
-        monitor = monitorFactory.createMonitor();
 
         FactoryExtensionPoint modelFactories = registry.getExtensionPoint(FactoryExtensionPoint.class);
         assemblyFactory = modelFactories.getFactory(AssemblyFactory.class);
@@ -96,8 +93,9 @@
      * @param implementation
      * @return component type
      */
-    public void createComponentType(Component outerComponent, Composite composite) {
+    public void createComponentType(Component outerComponent, Composite composite, BuilderContext context) {
 
+        Monitor monitor = context.getMonitor();
         monitor.pushContext("Composite: " + composite.getName().toString());
         
         try {
@@ -125,7 +123,7 @@
                 }
     
                 // configure the component from its component type
-                componentBuilder.configureComponentFromComponentType(outerComponent, composite, component);
+                componentBuilder.configureComponentFromComponentType(outerComponent, composite, component, context);
             }
     
             // create the composite component type based on the promoted artifacts
@@ -139,10 +137,10 @@
             indexComponentsServicesAndReferences(composite, components, componentServices, componentReferences);
     
             // services
-            calculateServices(composite, components, componentServices);
+            calculateServices(composite, components, componentServices, monitor);
     
             // references
-            calculateReferences(composite, components, componentReferences);
+            calculateReferences(composite, components, componentReferences, monitor);
     
             // properties
             // Properties on the composite component are unaffected by properties 
@@ -216,11 +214,12 @@
      */
     private void calculateServices(ComponentType componentType,
                                    Map<String, Component> components,
-                                   Map<String, ComponentService> componentServices) {
+                                   Map<String, ComponentService> componentServices,
+                                   Monitor monitor) {
 
         // Connect this component type's services to the 
         // services from child components which it promotes
-        connectPromotedServices(componentType, components, componentServices);
+        connectPromotedServices(componentType, components, componentServices, monitor);
 
         // look at each component type service in turn and 
         // calculate its configuration based on OASIS rules
@@ -229,7 +228,7 @@
             ComponentService promotedComponentService = compositeService.getPromotedService();
 
             // promote interface contracts
-            calculatePromotedServiceInterfaceContract(compositeService, promotedComponentService);
+            calculatePromotedServiceInterfaceContract(compositeService, promotedComponentService, monitor);
 
             // promote bindings
             calculatePromotedBindings(compositeService, promotedComponentService);
@@ -251,11 +250,11 @@
      */
     private void calculateReferences(ComponentType componentType,
                                      Map<String, Component> components,
-                                     Map<String, ComponentReference> componentReferences) {
+                                     Map<String, ComponentReference> componentReferences, Monitor monitor) {
 
         // Connect this component type's references to the 
         // references from child components which it promotes
-        connectPromotedReferences(componentType, components, componentReferences);
+        connectPromotedReferences(componentType, components, componentReferences, monitor);
 
         // look at each component type reference in turn and 
         // calculate its configuration based on OASIS rules
@@ -266,7 +265,7 @@
             for (ComponentReference promotedComponentReference : promotedReferences) {
 
                 // promote interface contracts
-                calculatePromotedReferenceInterfaceContract(compositeReference, promotedComponentReference);
+                calculatePromotedReferenceInterfaceContract(compositeReference, promotedComponentReference, monitor);
 
                 // promote bindings
                 // Don't need to promote reference bindings as any lower level binding will
@@ -291,7 +290,8 @@
      */
     private void connectPromotedServices(ComponentType componentType,
                                          Map<String, Component> components,
-                                         Map<String, ComponentService> componentServices) {
+                                         Map<String, ComponentService> componentServices,
+                                         Monitor monitor) {
 
         for (Service service : componentType.getServices()) {
             // Connect composite (component type) services to the component services 
@@ -345,7 +345,8 @@
      */
     private void connectPromotedReferences(ComponentType componentType,
                                            Map<String, Component> components,
-                                           Map<String, ComponentReference> componentReferences) {
+                                           Map<String, ComponentReference> componentReferences,
+                                           Monitor monitor) {
 
         // Connect composite (component type) references to the component references that they promote
         for (Reference reference : componentType.getReferences()) {
@@ -417,7 +418,7 @@
      * @param topContract the top contract 
      * @param bottomContract the bottom contract
      */
-    private void calculatePromotedServiceInterfaceContract(Service topContract, Service bottomContract) {
+    private void calculatePromotedServiceInterfaceContract(Service topContract, Service bottomContract, Monitor monitor) {
         // Use the interface contract from the bottom level contract if
         // none is specified on the top level contract
         InterfaceContract topInterfaceContract = topContract.getInterfaceContract();
@@ -455,7 +456,7 @@
      * @param topContract the top contract 
      * @param bottomContract the bottom contract
      */    
-    private void calculatePromotedReferenceInterfaceContract(Reference topContract, Reference bottomContract) {
+    private void calculatePromotedReferenceInterfaceContract(Reference topContract, Reference bottomContract, Monitor monitor) {
         // Use the interface contract from the bottom level contract if
         // none is specified on the top level contract
         InterfaceContract topInterfaceContract = topContract.getInterfaceContract();

Modified: tuscany/java/sca/modules/builder/src/main/java/org/apache/tuscany/sca/builder/impl/CompositeIncludeBuilderImpl.java
URL: http://svn.apache.org/viewvc/tuscany/java/sca/modules/builder/src/main/java/org/apache/tuscany/sca/builder/impl/CompositeIncludeBuilderImpl.java?rev=825773&r1=825772&r2=825773&view=diff
==============================================================================
--- tuscany/java/sca/modules/builder/src/main/java/org/apache/tuscany/sca/builder/impl/CompositeIncludeBuilderImpl.java (original)
+++ tuscany/java/sca/modules/builder/src/main/java/org/apache/tuscany/sca/builder/impl/CompositeIncludeBuilderImpl.java Fri Oct 16 05:42:26 2009
@@ -24,10 +24,10 @@
 import org.apache.tuscany.sca.assembly.Implementation;
 import org.apache.tuscany.sca.assembly.Reference;
 import org.apache.tuscany.sca.assembly.Service;
+import org.apache.tuscany.sca.assembly.builder.BuilderContext;
 import org.apache.tuscany.sca.assembly.builder.CompositeBuilder;
 import org.apache.tuscany.sca.assembly.builder.CompositeBuilderException;
 import org.apache.tuscany.sca.assembly.builder.Messages;
-import org.apache.tuscany.sca.definitions.Definitions;
 import org.apache.tuscany.sca.monitor.Monitor;
 
 /**
@@ -44,9 +44,9 @@
         return "org.apache.tuscany.sca.assembly.builder.CompositeIncludeBuilder";
     }
 
-    public Composite build(Composite composite, Definitions definitions, Monitor monitor)
+    public Composite build(Composite composite, BuilderContext context)
         throws CompositeBuilderException {
-        return processIncludes(composite, monitor);
+        return processIncludes(composite, context.getMonitor());
     }
 
     /**

Modified: tuscany/java/sca/modules/builder/src/main/java/org/apache/tuscany/sca/builder/impl/CompositePolicyBuilderImpl.java
URL: http://svn.apache.org/viewvc/tuscany/java/sca/modules/builder/src/main/java/org/apache/tuscany/sca/builder/impl/CompositePolicyBuilderImpl.java?rev=825773&r1=825772&r2=825773&view=diff
==============================================================================
--- tuscany/java/sca/modules/builder/src/main/java/org/apache/tuscany/sca/builder/impl/CompositePolicyBuilderImpl.java (original)
+++ tuscany/java/sca/modules/builder/src/main/java/org/apache/tuscany/sca/builder/impl/CompositePolicyBuilderImpl.java Fri Oct 16 05:42:26 2009
@@ -37,12 +37,12 @@
 import org.apache.tuscany.sca.assembly.Implementation;
 import org.apache.tuscany.sca.assembly.Reference;
 import org.apache.tuscany.sca.assembly.Service;
+import org.apache.tuscany.sca.assembly.builder.BuilderContext;
 import org.apache.tuscany.sca.assembly.builder.CompositeBuilder;
 import org.apache.tuscany.sca.assembly.builder.CompositeBuilderException;
 import org.apache.tuscany.sca.assembly.builder.PolicyBuilder;
 import org.apache.tuscany.sca.core.ExtensionPointRegistry;
 import org.apache.tuscany.sca.definitions.Definitions;
-import org.apache.tuscany.sca.monitor.Monitor;
 import org.apache.tuscany.sca.policy.Intent;
 import org.apache.tuscany.sca.policy.IntentMap;
 import org.apache.tuscany.sca.policy.PolicyExpression;
@@ -66,10 +66,11 @@
         return "org.apache.tuscany.sca.assembly.builder.CompositePolicyBuilder";
     }
 
-    public Composite build(Composite composite, Definitions definitions, Monitor monitor)
+    public Composite build(Composite composite, BuilderContext context)
         throws CompositeBuilderException {
-        computePolicies(composite, definitions, monitor);
-        buildPolicies(composite, definitions, monitor);
+        Definitions definitions = context.getDefinitions();
+        computePolicies(composite, definitions, context);
+        buildPolicies(composite, definitions, context);
         return composite;
     }
 
@@ -97,14 +98,14 @@
      * @param monitor 
      * @return
      */
-    private boolean checkMutualExclusion(PolicySubject subject1, PolicySubject subject2, Monitor monitor) {
+    private boolean checkMutualExclusion(PolicySubject subject1, PolicySubject subject2, BuilderContext context) {
         if (subject1 == subject2 || subject1 == null || subject2 == null) {
             return false;
         }
         for (Intent i1 : subject1.getRequiredIntents()) {
             for (Intent i2 : subject1.getRequiredIntents()) {
                 if (i1.getExcludedIntents().contains(i2) || i2.getExcludedIntents().contains(i1)) {
-                    error(monitor, "MutuallyExclusiveIntents", new Object[] {subject1, subject2}, i1, i2);
+                    error(context.getMonitor(), "MutuallyExclusiveIntents", new Object[] {subject1, subject2}, i1, i2);
                     return true;
                 }
             }
@@ -206,7 +207,7 @@
         return null;
     }
 
-    private void resolveAndNormalize(PolicySubject subject, Definitions definitions, Monitor monitor) {
+    private void resolveAndNormalize(PolicySubject subject, Definitions definitions, BuilderContext context) {
 
         Set<Intent> intents = new HashSet<Intent>();
         if (definitions != null) {
@@ -215,7 +216,7 @@
                 if (resolved != null) {
                     intents.add(resolved);
                 } else {
-                    warning(monitor, "IntentNotFound", subject, i);
+                    warning(context.getMonitor(), "IntentNotFound", subject, i);
                     // Intent cannot be resolved
                 }
             }
@@ -267,7 +268,7 @@
                     policySets.add(definitions.getPolicySets().get(index));
                 } else {
                     // PolicySet cannot be resolved
-                    warning(monitor, "PolicySetNotFound", subject, policySet);
+                    warning(context.getMonitor(), "PolicySetNotFound", subject, policySet);
                 }
             }
         }
@@ -296,30 +297,30 @@
 
     }
 
-    protected void computePolicies(Composite composite, Definitions definitions, Monitor monitor) {
+    protected void computePolicies(Composite composite, Definitions definitions, BuilderContext context) {
 
         // compute policies recursively
         for (Component component : composite.getComponents()) {
             Implementation implementation = component.getImplementation();
             if (implementation instanceof Composite) {
-                computePolicies((Composite)implementation, definitions, monitor);
+                computePolicies((Composite)implementation, definitions, context);
             }
         }
 
         for (Component component : composite.getComponents()) {
             // Check component against implementation
-            checkMutualExclusion(component, component.getImplementation(), monitor);
+            checkMutualExclusion(component, component.getImplementation(), context);
 
             for (ComponentService componentService : component.getServices()) {
                 // Check component/service against componentType/service 
-                checkMutualExclusion(componentService, componentService.getService(), monitor);
+                checkMutualExclusion(componentService, componentService.getService(), context);
 
                 if (componentService.getInterfaceContract() != null && componentService.getService() != null) {
                     checkMutualExclusion(componentService.getInterfaceContract().getInterface(), componentService
-                        .getService().getInterfaceContract().getInterface(), monitor);
+                        .getService().getInterfaceContract().getInterface(), context);
                     checkMutualExclusion(componentService.getInterfaceContract().getCallbackInterface(),
                                          componentService.getService().getInterfaceContract().getCallbackInterface(),
-                                         monitor);
+                                         context);
                 }
 
                 for (Endpoint ep : componentService.getEndpoints()) {
@@ -337,7 +338,7 @@
                     if (componentService.getService() != null) {
                         for (Binding binding : componentService.getService().getBindings()) {
                             if (isEqual(ep.getBinding().getName(), binding.getName()) && (binding instanceof PolicySubject)) {
-                                checkMutualExclusion((PolicySubject)ep.getBinding(), (PolicySubject)binding, monitor);
+                                checkMutualExclusion((PolicySubject)ep.getBinding(), (PolicySubject)binding, context);
                                 // Inherit from componentType.service.binding
                                 inherit(ep, binding);
                                 break;
@@ -353,21 +354,21 @@
                     // Remove the intents whose @contraints do not include the current element
                     // Replace unqualified intents if there is a qualified intent in the list
                     // Replace qualifiable intents with the default qualied intent
-                    resolveAndNormalize(ep, definitions, monitor);
+                    resolveAndNormalize(ep, definitions, context);
                 }
             }
 
             for (ComponentReference componentReference : component.getReferences()) {
                 // Check component/reference against componentType/reference
-                checkMutualExclusion(componentReference, componentReference.getReference(), monitor);
+                checkMutualExclusion(componentReference, componentReference.getReference(), context);
 
                 if (componentReference.getInterfaceContract() != null && componentReference.getReference() != null) {
                     checkMutualExclusion(componentReference.getInterfaceContract().getInterface(), componentReference
-                        .getReference().getInterfaceContract().getInterface(), monitor);
+                        .getReference().getInterfaceContract().getInterface(), context);
                     checkMutualExclusion(componentReference.getInterfaceContract().getCallbackInterface(),
                                          componentReference.getReference().getInterfaceContract()
                                              .getCallbackInterface(),
-                                         monitor);
+                                         context);
                 }
 
                 for (EndpointReference epr : componentReference.getEndpointReferences()) {
@@ -387,7 +388,7 @@
                         for (Binding binding : componentReference.getReference().getBindings()) {
                             if (epr.getBinding() != null && isEqual(epr.getBinding().getName(), binding.getName())
                                 && (binding instanceof PolicySubject)) {
-                                checkMutualExclusion((PolicySubject)epr.getBinding(), (PolicySubject)binding, monitor);
+                                checkMutualExclusion((PolicySubject)epr.getBinding(), (PolicySubject)binding, context);
                                 // Inherit from componentType.reference.binding
                                 inherit(epr, binding);
                                 break;
@@ -402,7 +403,7 @@
                     // Remove the intents whose @contraints do not include the current element
                     // Replace unqualified intents if there is a qualified intent in the list
                     // Replace qualifiable intents with the default qualied intent
-                    resolveAndNormalize(epr, definitions, monitor);
+                    resolveAndNormalize(epr, definitions, context);
                 }
             }
 
@@ -427,13 +428,13 @@
         return names;
     }
     
-    protected void buildPolicies(Composite composite, Definitions definitions, Monitor monitor) {
+    protected void buildPolicies(Composite composite, Definitions definitions, BuilderContext context) {
 
         // compute policies recursively
         for (Component component : composite.getComponents()) {
             Implementation implementation = component.getImplementation();
             if (implementation instanceof Composite) {
-                buildPolicies((Composite)implementation, definitions, monitor);
+                buildPolicies((Composite)implementation, definitions, context);
             }
         }
 
@@ -444,7 +445,7 @@
                     for (QName policyType : getPolicyNames(ep)) {
                         PolicyBuilder builder = builders.getPolicyBuilder(policyType);
                         if (builder != null) {
-                            builder.build(ep, definitions, monitor);
+                            builder.build(ep, context);
                         }
                     }
                 }
@@ -455,7 +456,7 @@
                     for (QName policyType : getPolicyNames(epr)) {
                         PolicyBuilder builder = builders.getPolicyBuilder(policyType);
                         if (builder != null) {
-                            builder.build(epr, definitions, monitor);
+                            builder.build(epr, context);
                         }
                     }
                 }
@@ -466,7 +467,7 @@
                 for (QName policyType : getPolicyNames(implementation)) {
                     PolicyBuilder builder = builders.getPolicyBuilder(policyType);
                     if (builder != null) {
-                        builder.build(component, implementation, definitions, monitor);
+                        builder.build(component, implementation, context);
                     }
                 }
             }

Modified: tuscany/java/sca/modules/builder/src/main/java/org/apache/tuscany/sca/builder/impl/EndpointBuilderImpl.java
URL: http://svn.apache.org/viewvc/tuscany/java/sca/modules/builder/src/main/java/org/apache/tuscany/sca/builder/impl/EndpointBuilderImpl.java?rev=825773&r1=825772&r2=825773&view=diff
==============================================================================
--- tuscany/java/sca/modules/builder/src/main/java/org/apache/tuscany/sca/builder/impl/EndpointBuilderImpl.java (original)
+++ tuscany/java/sca/modules/builder/src/main/java/org/apache/tuscany/sca/builder/impl/EndpointBuilderImpl.java Fri Oct 16 05:42:26 2009
@@ -26,16 +26,16 @@
 import org.apache.tuscany.sca.assembly.Composite;
 import org.apache.tuscany.sca.assembly.Endpoint;
 import org.apache.tuscany.sca.assembly.Implementation;
+import org.apache.tuscany.sca.assembly.builder.BuilderContext;
+import org.apache.tuscany.sca.assembly.builder.CompositeBuilder;
 import org.apache.tuscany.sca.assembly.builder.CompositeBuilderException;
 import org.apache.tuscany.sca.core.ExtensionPointRegistry;
 import org.apache.tuscany.sca.core.FactoryExtensionPoint;
-import org.apache.tuscany.sca.definitions.Definitions;
-import org.apache.tuscany.sca.monitor.Monitor;
 
 /**
  * creates endpoint models for component services.
  */
-public class EndpointBuilderImpl {
+public class EndpointBuilderImpl implements CompositeBuilder {
     private AssemblyFactory assemblyFactory;
 
     public EndpointBuilderImpl(ExtensionPointRegistry registry) {
@@ -50,7 +50,7 @@
      * @param definitions
      * @param monitor - a Monitor for logging errors
      */
-    public Composite build(Composite composite, Definitions definitions, Monitor monitor)
+    public Composite build(Composite composite, BuilderContext context)
         throws CompositeBuilderException {
 
         processComponentServices(composite);
@@ -98,4 +98,8 @@
             }
         }
     }
+
+    public String getID() {
+        return "org.apache.tuscany.sca.assembly.builder.EndpointBuilder";
+    }
 }

Modified: tuscany/java/sca/modules/builder/src/main/java/org/apache/tuscany/sca/builder/impl/EndpointReferenceBuilderImpl.java
URL: http://svn.apache.org/viewvc/tuscany/java/sca/modules/builder/src/main/java/org/apache/tuscany/sca/builder/impl/EndpointReferenceBuilderImpl.java?rev=825773&r1=825772&r2=825773&view=diff
==============================================================================
--- tuscany/java/sca/modules/builder/src/main/java/org/apache/tuscany/sca/builder/impl/EndpointReferenceBuilderImpl.java (original)
+++ tuscany/java/sca/modules/builder/src/main/java/org/apache/tuscany/sca/builder/impl/EndpointReferenceBuilderImpl.java Fri Oct 16 05:42:26 2009
@@ -37,29 +37,25 @@
 import org.apache.tuscany.sca.assembly.Reference;
 import org.apache.tuscany.sca.assembly.SCABinding;
 import org.apache.tuscany.sca.assembly.Wire;
+import org.apache.tuscany.sca.assembly.builder.BuilderContext;
 import org.apache.tuscany.sca.assembly.builder.CompositeBuilderException;
 import org.apache.tuscany.sca.assembly.builder.Messages;
 import org.apache.tuscany.sca.core.ExtensionPointRegistry;
 import org.apache.tuscany.sca.core.FactoryExtensionPoint;
 import org.apache.tuscany.sca.core.UtilityExtensionPoint;
-import org.apache.tuscany.sca.definitions.Definitions;
 import org.apache.tuscany.sca.interfacedef.InterfaceContractMapper;
 import org.apache.tuscany.sca.monitor.Monitor;
-import org.apache.tuscany.sca.monitor.MonitorFactory;
 
 /**
  * Creates endpoint reference models.
  */
 public class EndpointReferenceBuilderImpl {
 
-    private Monitor monitor;
     private AssemblyFactory assemblyFactory;
     private InterfaceContractMapper interfaceContractMapper;
 
     public EndpointReferenceBuilderImpl(ExtensionPointRegistry registry) {
         UtilityExtensionPoint utilities = registry.getExtensionPoint(UtilityExtensionPoint.class);
-        MonitorFactory monitorFactory = utilities.getUtility(MonitorFactory.class);
-        monitor = monitorFactory.createMonitor();
         interfaceContractMapper = utilities.getUtility(InterfaceContractMapper.class);
 
         FactoryExtensionPoint modelFactories = registry.getExtensionPoint(FactoryExtensionPoint.class);
@@ -71,16 +67,16 @@
      *
      * @param composite
      */
-    public Composite build(Composite composite, Definitions definitions, Monitor monitor)
+    public Composite build(Composite composite, BuilderContext context)
         throws CompositeBuilderException {
-        this.monitor = monitor;
+        Monitor monitor = context.getMonitor();
 
         // process component services
-        processComponentReferences(composite);
+        processComponentReferences(composite, monitor);
         return composite;
     }
 
-    private void processComponentReferences(Composite composite) {
+    private void processComponentReferences(Composite composite, Monitor monitor) {
 
         monitor.pushContext("Composite: " + composite.getName().toString());
         try {
@@ -102,7 +98,7 @@
                     // recurse for composite implementations
                     Implementation implementation = component.getImplementation();
                     if (implementation instanceof Composite) {
-                        processComponentReferences((Composite)implementation);
+                        processComponentReferences((Composite)implementation, monitor);
                     }
 
                     // create endpoint references to represent the component reference
@@ -111,7 +107,8 @@
                                                           component,
                                                           reference,
                                                           components,
-                                                          componentServices);
+                                                          componentServices,
+                                                          monitor);
 
                         // fix up links between endpoints and endpoint references that represent callbacks
                         for (ComponentService service : component.getServices()) {
@@ -130,7 +127,7 @@
 
                     // Validate that references are wired or promoted, according
                     // to their multiplicity   
-                    validateReferenceMultiplicity(composite, component);
+                    validateReferenceMultiplicity(composite, component, monitor);
 
                 } finally {
                     monitor.popContext();
@@ -275,7 +272,8 @@
                                                    Component component,
                                                    ComponentReference reference,
                                                    Map<String, Component> components,
-                                                   Map<String, ComponentService> componentServices) {
+                                                   Map<String, ComponentService> componentServices,
+                                                   Monitor monitor) {
 
         monitor.pushContext("Reference: " + reference.getName());
 
@@ -554,7 +552,7 @@
 
     } // end method
 
-    private void validateReferenceMultiplicity(Composite composite, Component component) {
+    private void validateReferenceMultiplicity(Composite composite, Component component, Monitor monitor) {
         for (ComponentReference componentReference : component.getReferences()) {
             if (!ReferenceConfigurationUtil.validateMultiplicityAndTargets(componentReference.getMultiplicity(),
                                                                            componentReference.getEndpointReferences())) {