You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tuscany.apache.org by sl...@apache.org on 2008/04/25 19:24:35 UTC

svn commit: r651657 - in /incubator/tuscany/java/sca: itest/validation/src/main/resources/NoCompositeNamespace/ itest/validation/src/test/java/calculator/ modules/assembly-xml/src/main/java/org/apache/tuscany/sca/assembly/xml/ modules/assembly-xml/src/...

Author: slaws
Date: Fri Apr 25 10:24:33 2008
New Revision: 651657

URL: http://svn.apache.org/viewvc?rev=651657&view=rev
Log:
Propagate the Monitor into a few more places. In particular into schema validation, TUSCANY-2262 thanks for the patch Ram, and into the assembly XML processors, TUSCANY-2052. These are both in the initial stages but demonstrate the pattern

Added:
    incubator/tuscany/java/sca/itest/validation/src/main/resources/NoCompositeNamespace/
    incubator/tuscany/java/sca/itest/validation/src/main/resources/NoCompositeNamespace/Calculator.composite   (with props)
    incubator/tuscany/java/sca/itest/validation/src/test/java/calculator/NoCompositeNamespaceTestCase.java   (with props)
    incubator/tuscany/java/sca/modules/assembly-xml/src/main/resources/assembly-xml-validation-messages.properties   (with props)
    incubator/tuscany/java/sca/modules/contribution/src/main/resources/contribution-validation-messages.properties   (with props)
Modified:
    incubator/tuscany/java/sca/itest/validation/src/test/java/calculator/ComponentReferenceTargetNotFoundTestCase.java
    incubator/tuscany/java/sca/itest/validation/src/test/java/calculator/DuplicateComponentNameTestCase.java
    incubator/tuscany/java/sca/itest/validation/src/test/java/calculator/DuplicateImplementationPropertyNameTestCase.java
    incubator/tuscany/java/sca/itest/validation/src/test/java/calculator/DuplicateImplementationReferenceNameTestCase.java
    incubator/tuscany/java/sca/itest/validation/src/test/java/calculator/DuplicatePropertyNameTestCase.java
    incubator/tuscany/java/sca/itest/validation/src/test/java/calculator/DuplicateReferenceNameTestCase.java
    incubator/tuscany/java/sca/itest/validation/src/test/java/calculator/MultipleBindingsForServiceTestCase.java
    incubator/tuscany/java/sca/itest/validation/src/test/java/calculator/NoComponentImplementationTestCase.java
    incubator/tuscany/java/sca/itest/validation/src/test/java/calculator/PromotedReferenceNotFoundTestCase.java
    incubator/tuscany/java/sca/itest/validation/src/test/java/calculator/PromotedServiceNotFoundTestCase.java
    incubator/tuscany/java/sca/itest/validation/src/test/java/calculator/PropertyAttributeMustSupplyNullTestCase.java
    incubator/tuscany/java/sca/itest/validation/src/test/java/calculator/PropertyAttributeTestCase.java
    incubator/tuscany/java/sca/itest/validation/src/test/java/calculator/PropertyNotFoundTestCase.java
    incubator/tuscany/java/sca/itest/validation/src/test/java/calculator/PropertyOverrideManyAttributeTestCase.java
    incubator/tuscany/java/sca/itest/validation/src/test/java/calculator/ReferenceIncompatibleComponentInterfaceTestCase.java
    incubator/tuscany/java/sca/itest/validation/src/test/java/calculator/ReferenceIncompatibleInterfaceTestCase.java
    incubator/tuscany/java/sca/itest/validation/src/test/java/calculator/ReferenceIncompatibleMultiplicityTestCase.java
    incubator/tuscany/java/sca/itest/validation/src/test/java/calculator/ReferenceNotFoundTestCase.java
    incubator/tuscany/java/sca/itest/validation/src/test/java/calculator/ReferenceWithoutTargetsTestCase.java
    incubator/tuscany/java/sca/itest/validation/src/test/java/calculator/ServiceNotFoundForComponentServiceTestCase.java
    incubator/tuscany/java/sca/itest/validation/src/test/java/calculator/UnresolvedComponentImplementationTestCase.java
    incubator/tuscany/java/sca/itest/validation/src/test/java/calculator/XSDValidationTestCase.java
    incubator/tuscany/java/sca/modules/assembly-xml/src/main/java/org/apache/tuscany/sca/assembly/xml/BaseAssemblyProcessor.java
    incubator/tuscany/java/sca/modules/assembly-xml/src/main/java/org/apache/tuscany/sca/assembly/xml/CompositeProcessor.java
    incubator/tuscany/java/sca/modules/assembly-xml/src/test/java/org/apache/tuscany/sca/assembly/xml/ReadDocumentTestCase.java
    incubator/tuscany/java/sca/modules/contribution/src/main/java/org/apache/tuscany/sca/contribution/processor/DefaultValidatingXMLInputFactory.java
    incubator/tuscany/java/sca/modules/contribution/src/main/java/org/apache/tuscany/sca/contribution/processor/ValidatingXMLStreamReader.java
    incubator/tuscany/java/sca/modules/host-embedded/src/main/java/org/apache/tuscany/sca/host/embedded/impl/ReallySmallRuntime.java
    incubator/tuscany/java/sca/modules/host-embedded/src/main/java/org/apache/tuscany/sca/host/embedded/impl/ReallySmallRuntimeBuilder.java
    incubator/tuscany/java/sca/samples/domain-management/src/main/java/manager/DistributeComponents.java

Added: incubator/tuscany/java/sca/itest/validation/src/main/resources/NoCompositeNamespace/Calculator.composite
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/itest/validation/src/main/resources/NoCompositeNamespace/Calculator.composite?rev=651657&view=auto
==============================================================================
--- incubator/tuscany/java/sca/itest/validation/src/main/resources/NoCompositeNamespace/Calculator.composite (added)
+++ incubator/tuscany/java/sca/itest/validation/src/main/resources/NoCompositeNamespace/Calculator.composite Fri Apr 25 10:24:33 2008
@@ -0,0 +1,48 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ * 
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.    
+-->
+<composite xmlns="http://www.osoa.org/xmlns/sca/1.0"
+           xmlns:sample="http://sample"
+           name="Calculator">
+
+    <component name="CalculatorServiceComponent">
+		<implementation.java class="calculator.CalculatorServiceImpl"/>
+        <reference name="addService" target="AddServiceComponent" />
+        <reference name="subtractService" target="SubtractServiceComponent" />
+        <reference name="multiplyService" target="MultiplyServiceComponent" />
+        <reference name="divideService" target="DivideServiceComponent" />
+    </component>
+    
+    <component name="AddServiceComponent">
+        <implementation.java class="calculator.AddServiceImpl"/>
+    </component>
+
+    <component name="SubtractServiceComponent">
+        <implementation.java class="calculator.SubtractServiceImpl"/>
+    </component>
+
+    <component name="MultiplyServiceComponent">
+        <implementation.java class="calculator.MultiplyServiceImpl"/>
+    </component>
+
+    <component name="DivideServiceComponent">
+        <implementation.java class="calculator.DivideServiceImpl"/>
+    </component>
+
+</composite>

Propchange: incubator/tuscany/java/sca/itest/validation/src/main/resources/NoCompositeNamespace/Calculator.composite
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: incubator/tuscany/java/sca/itest/validation/src/main/resources/NoCompositeNamespace/Calculator.composite
------------------------------------------------------------------------------
    svn:keywords = Rev Date

Propchange: incubator/tuscany/java/sca/itest/validation/src/main/resources/NoCompositeNamespace/Calculator.composite
------------------------------------------------------------------------------
    svn:mime-type = text/xml

Modified: incubator/tuscany/java/sca/itest/validation/src/test/java/calculator/ComponentReferenceTargetNotFoundTestCase.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/itest/validation/src/test/java/calculator/ComponentReferenceTargetNotFoundTestCase.java?rev=651657&r1=651656&r2=651657&view=diff
==============================================================================
--- incubator/tuscany/java/sca/itest/validation/src/test/java/calculator/ComponentReferenceTargetNotFoundTestCase.java (original)
+++ incubator/tuscany/java/sca/itest/validation/src/test/java/calculator/ComponentReferenceTargetNotFoundTestCase.java Fri Apr 25 10:24:33 2008
@@ -23,6 +23,7 @@
 import junit.framework.TestCase;
 
 import org.apache.tuscany.sca.core.ExtensionPointRegistry;
+import org.apache.tuscany.sca.core.UtilityExtensionPoint;
 import org.apache.tuscany.sca.monitor.Monitor;
 import org.apache.tuscany.sca.monitor.MonitorFactory;
 import org.apache.tuscany.sca.monitor.Problem;
@@ -64,7 +65,8 @@
 
     public void testCalculator() throws Exception {
         ExtensionPointRegistry registry = ((NodeImpl)node).getExtensionPointRegistry();
-        MonitorFactory monitorFactory = registry.getExtensionPoint(MonitorFactory.class);
+        UtilityExtensionPoint utilities = registry.getExtensionPoint(UtilityExtensionPoint.class);
+        MonitorFactory monitorFactory = utilities.getUtility(MonitorFactory.class);
         Monitor monitor = monitorFactory.createMonitor();
         Problem problem = ((DefaultLoggingMonitorImpl)monitor).getLastLoggedProblem();
         

Modified: incubator/tuscany/java/sca/itest/validation/src/test/java/calculator/DuplicateComponentNameTestCase.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/itest/validation/src/test/java/calculator/DuplicateComponentNameTestCase.java?rev=651657&r1=651656&r2=651657&view=diff
==============================================================================
--- incubator/tuscany/java/sca/itest/validation/src/test/java/calculator/DuplicateComponentNameTestCase.java (original)
+++ incubator/tuscany/java/sca/itest/validation/src/test/java/calculator/DuplicateComponentNameTestCase.java Fri Apr 25 10:24:33 2008
@@ -23,6 +23,7 @@
 import junit.framework.TestCase;
 
 import org.apache.tuscany.sca.core.ExtensionPointRegistry;
+import org.apache.tuscany.sca.core.UtilityExtensionPoint;
 import org.apache.tuscany.sca.monitor.Monitor;
 import org.apache.tuscany.sca.monitor.MonitorFactory;
 import org.apache.tuscany.sca.monitor.Problem;
@@ -47,6 +48,9 @@
         node = nodeFactory.createSCANode(new File("src/main/resources/DuplicateComponentName/Calculator.composite").toURL().toString(),
         		                 new SCAContribution("TestContribution", 
         		                                     new File("src/main/resources/DuplicateComponentName").toURL().toString()));
+        /*
+        node = SCANode2Factory.createSCANodeWithComposite("DuplicateComponentName/Calculator.composite");
+        */
         node.start();
         calculatorService = ((SCAClient)node).getService(CalculatorService.class, "CalculatorServiceComponent");
     }
@@ -58,7 +62,8 @@
 
     public void testCalculator() throws Exception {
         ExtensionPointRegistry registry = ((NodeImpl)node).getExtensionPointRegistry();
-        MonitorFactory monitorFactory = registry.getExtensionPoint(MonitorFactory.class);
+        UtilityExtensionPoint utilities = registry.getExtensionPoint(UtilityExtensionPoint.class);
+        MonitorFactory monitorFactory = utilities.getUtility(MonitorFactory.class);
         Monitor monitor = monitorFactory.createMonitor();
         Problem problem = ((DefaultLoggingMonitorImpl)monitor).getLastLoggedProblem();
         

Modified: incubator/tuscany/java/sca/itest/validation/src/test/java/calculator/DuplicateImplementationPropertyNameTestCase.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/itest/validation/src/test/java/calculator/DuplicateImplementationPropertyNameTestCase.java?rev=651657&r1=651656&r2=651657&view=diff
==============================================================================
--- incubator/tuscany/java/sca/itest/validation/src/test/java/calculator/DuplicateImplementationPropertyNameTestCase.java (original)
+++ incubator/tuscany/java/sca/itest/validation/src/test/java/calculator/DuplicateImplementationPropertyNameTestCase.java Fri Apr 25 10:24:33 2008
@@ -23,6 +23,7 @@
 import junit.framework.TestCase;
 
 import org.apache.tuscany.sca.core.ExtensionPointRegistry;
+import org.apache.tuscany.sca.core.UtilityExtensionPoint;
 import org.apache.tuscany.sca.monitor.Monitor;
 import org.apache.tuscany.sca.monitor.MonitorFactory;
 import org.apache.tuscany.sca.monitor.Problem;
@@ -52,7 +53,8 @@
 
     public void testCalculator() throws Exception {
         ExtensionPointRegistry registry = ((NodeImpl)node).getExtensionPointRegistry();
-        MonitorFactory monitorFactory = registry.getExtensionPoint(MonitorFactory.class);
+        UtilityExtensionPoint utilities = registry.getExtensionPoint(UtilityExtensionPoint.class);
+        MonitorFactory monitorFactory = utilities.getUtility(MonitorFactory.class);
         Monitor monitor = monitorFactory.createMonitor();
         Problem problem = ((DefaultLoggingMonitorImpl)monitor).getLastLoggedProblem();
         

Modified: incubator/tuscany/java/sca/itest/validation/src/test/java/calculator/DuplicateImplementationReferenceNameTestCase.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/itest/validation/src/test/java/calculator/DuplicateImplementationReferenceNameTestCase.java?rev=651657&r1=651656&r2=651657&view=diff
==============================================================================
--- incubator/tuscany/java/sca/itest/validation/src/test/java/calculator/DuplicateImplementationReferenceNameTestCase.java (original)
+++ incubator/tuscany/java/sca/itest/validation/src/test/java/calculator/DuplicateImplementationReferenceNameTestCase.java Fri Apr 25 10:24:33 2008
@@ -23,6 +23,7 @@
 import junit.framework.TestCase;
 
 import org.apache.tuscany.sca.core.ExtensionPointRegistry;
+import org.apache.tuscany.sca.core.UtilityExtensionPoint;
 import org.apache.tuscany.sca.monitor.Monitor;
 import org.apache.tuscany.sca.monitor.MonitorFactory;
 import org.apache.tuscany.sca.monitor.Problem;
@@ -53,7 +54,8 @@
 
     public void testCalculator() throws Exception {
         ExtensionPointRegistry registry = ((NodeImpl)node).getExtensionPointRegistry();
-        MonitorFactory monitorFactory = registry.getExtensionPoint(MonitorFactory.class);
+        UtilityExtensionPoint utilities = registry.getExtensionPoint(UtilityExtensionPoint.class);
+        MonitorFactory monitorFactory = utilities.getUtility(MonitorFactory.class);
         Monitor monitor = monitorFactory.createMonitor();
         Problem problem = ((DefaultLoggingMonitorImpl)monitor).getLastLoggedProblem();
         

Modified: incubator/tuscany/java/sca/itest/validation/src/test/java/calculator/DuplicatePropertyNameTestCase.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/itest/validation/src/test/java/calculator/DuplicatePropertyNameTestCase.java?rev=651657&r1=651656&r2=651657&view=diff
==============================================================================
--- incubator/tuscany/java/sca/itest/validation/src/test/java/calculator/DuplicatePropertyNameTestCase.java (original)
+++ incubator/tuscany/java/sca/itest/validation/src/test/java/calculator/DuplicatePropertyNameTestCase.java Fri Apr 25 10:24:33 2008
@@ -23,6 +23,7 @@
 import junit.framework.TestCase;
 
 import org.apache.tuscany.sca.core.ExtensionPointRegistry;
+import org.apache.tuscany.sca.core.UtilityExtensionPoint;
 import org.apache.tuscany.sca.monitor.Monitor;
 import org.apache.tuscany.sca.monitor.MonitorFactory;
 import org.apache.tuscany.sca.monitor.Problem;
@@ -58,7 +59,8 @@
 
     public void testCalculator() throws Exception {
         ExtensionPointRegistry registry = ((NodeImpl)node).getExtensionPointRegistry();
-        MonitorFactory monitorFactory = registry.getExtensionPoint(MonitorFactory.class);
+        UtilityExtensionPoint utilities = registry.getExtensionPoint(UtilityExtensionPoint.class);
+        MonitorFactory monitorFactory = utilities.getUtility(MonitorFactory.class);
         Monitor monitor = monitorFactory.createMonitor();
         Problem problem = ((DefaultLoggingMonitorImpl)monitor).getLastLoggedProblem();
         

Modified: incubator/tuscany/java/sca/itest/validation/src/test/java/calculator/DuplicateReferenceNameTestCase.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/itest/validation/src/test/java/calculator/DuplicateReferenceNameTestCase.java?rev=651657&r1=651656&r2=651657&view=diff
==============================================================================
--- incubator/tuscany/java/sca/itest/validation/src/test/java/calculator/DuplicateReferenceNameTestCase.java (original)
+++ incubator/tuscany/java/sca/itest/validation/src/test/java/calculator/DuplicateReferenceNameTestCase.java Fri Apr 25 10:24:33 2008
@@ -23,6 +23,7 @@
 import junit.framework.TestCase;
 
 import org.apache.tuscany.sca.core.ExtensionPointRegistry;
+import org.apache.tuscany.sca.core.UtilityExtensionPoint;
 import org.apache.tuscany.sca.monitor.Monitor;
 import org.apache.tuscany.sca.monitor.MonitorFactory;
 import org.apache.tuscany.sca.monitor.Problem;
@@ -58,7 +59,8 @@
 
     public void testCalculator() throws Exception {
         ExtensionPointRegistry registry = ((NodeImpl)node).getExtensionPointRegistry();
-        MonitorFactory monitorFactory = registry.getExtensionPoint(MonitorFactory.class);
+        UtilityExtensionPoint utilities = registry.getExtensionPoint(UtilityExtensionPoint.class);
+        MonitorFactory monitorFactory = utilities.getUtility(MonitorFactory.class);
         Monitor monitor = monitorFactory.createMonitor();
         Problem problem = ((DefaultLoggingMonitorImpl)monitor).getLastLoggedProblem();
         

Modified: incubator/tuscany/java/sca/itest/validation/src/test/java/calculator/MultipleBindingsForServiceTestCase.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/itest/validation/src/test/java/calculator/MultipleBindingsForServiceTestCase.java?rev=651657&r1=651656&r2=651657&view=diff
==============================================================================
--- incubator/tuscany/java/sca/itest/validation/src/test/java/calculator/MultipleBindingsForServiceTestCase.java (original)
+++ incubator/tuscany/java/sca/itest/validation/src/test/java/calculator/MultipleBindingsForServiceTestCase.java Fri Apr 25 10:24:33 2008
@@ -23,6 +23,7 @@
 import junit.framework.TestCase;
 
 import org.apache.tuscany.sca.core.ExtensionPointRegistry;
+import org.apache.tuscany.sca.core.UtilityExtensionPoint;
 import org.apache.tuscany.sca.monitor.Monitor;
 import org.apache.tuscany.sca.monitor.MonitorFactory;
 import org.apache.tuscany.sca.monitor.Problem;
@@ -58,7 +59,8 @@
 
     public void testCalculator() throws Exception {
         ExtensionPointRegistry registry = ((NodeImpl)node).getExtensionPointRegistry();
-        MonitorFactory monitorFactory = registry.getExtensionPoint(MonitorFactory.class);
+        UtilityExtensionPoint utilities = registry.getExtensionPoint(UtilityExtensionPoint.class);
+        MonitorFactory monitorFactory = utilities.getUtility(MonitorFactory.class);
         Monitor monitor = monitorFactory.createMonitor();
         Problem problem = ((DefaultLoggingMonitorImpl)monitor).getLastLoggedProblem();
         

Modified: incubator/tuscany/java/sca/itest/validation/src/test/java/calculator/NoComponentImplementationTestCase.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/itest/validation/src/test/java/calculator/NoComponentImplementationTestCase.java?rev=651657&r1=651656&r2=651657&view=diff
==============================================================================
--- incubator/tuscany/java/sca/itest/validation/src/test/java/calculator/NoComponentImplementationTestCase.java (original)
+++ incubator/tuscany/java/sca/itest/validation/src/test/java/calculator/NoComponentImplementationTestCase.java Fri Apr 25 10:24:33 2008
@@ -23,6 +23,7 @@
 import junit.framework.TestCase;
 
 import org.apache.tuscany.sca.core.ExtensionPointRegistry;
+import org.apache.tuscany.sca.core.UtilityExtensionPoint;
 import org.apache.tuscany.sca.monitor.Monitor;
 import org.apache.tuscany.sca.monitor.MonitorFactory;
 import org.apache.tuscany.sca.monitor.Problem;
@@ -54,7 +55,8 @@
 
     public void testCalculator() throws Exception {
         ExtensionPointRegistry registry = ((NodeImpl)node).getExtensionPointRegistry();
-        MonitorFactory monitorFactory = registry.getExtensionPoint(MonitorFactory.class);
+        UtilityExtensionPoint utilities = registry.getExtensionPoint(UtilityExtensionPoint.class);
+        MonitorFactory monitorFactory = utilities.getUtility(MonitorFactory.class);
         Monitor monitor = monitorFactory.createMonitor();
         Problem problem = ((DefaultLoggingMonitorImpl)monitor).getLastLoggedProblem();
         

Added: incubator/tuscany/java/sca/itest/validation/src/test/java/calculator/NoCompositeNamespaceTestCase.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/itest/validation/src/test/java/calculator/NoCompositeNamespaceTestCase.java?rev=651657&view=auto
==============================================================================
--- incubator/tuscany/java/sca/itest/validation/src/test/java/calculator/NoCompositeNamespaceTestCase.java (added)
+++ incubator/tuscany/java/sca/itest/validation/src/test/java/calculator/NoCompositeNamespaceTestCase.java Fri Apr 25 10:24:33 2008
@@ -0,0 +1,71 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ * 
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.    
+ */
+package calculator;
+
+import java.io.File;
+
+import junit.framework.TestCase;
+
+import org.apache.tuscany.sca.core.ExtensionPointRegistry;
+import org.apache.tuscany.sca.core.UtilityExtensionPoint;
+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.impl.DefaultLoggingMonitorImpl;
+import org.apache.tuscany.sca.node.SCAClient;
+import org.apache.tuscany.sca.node.SCANode2;
+import org.apache.tuscany.sca.node.SCANode2Factory;
+import org.apache.tuscany.sca.node.SCANode2Factory.SCAContribution;
+import org.apache.tuscany.sca.node.impl.NodeImpl;
+
+/**
+ * This shows how to test the Calculator service component.
+ */
+public class NoCompositeNamespaceTestCase extends TestCase {
+
+    private CalculatorService calculatorService;
+    private SCANode2 node;
+
+    @Override
+    protected void setUp() throws Exception {
+        SCANode2Factory nodeFactory = SCANode2Factory.newInstance();
+        node = nodeFactory.createSCANode(new File("src/main/resources/NoCompositeNamespace/Calculator.composite").toURL().toString(),
+        		                 new SCAContribution("TestContribution", 
+        		                                     new File("src/main/resources/NoCompositeNamespace").toURL().toString()));
+        node.start();
+        calculatorService = ((SCAClient)node).getService(CalculatorService.class, "CalculatorServiceComponent");
+    }
+
+    @Override
+    protected void tearDown() throws Exception {
+        node.stop();
+    }
+
+    public void testCalculator() throws Exception {
+        ExtensionPointRegistry registry = ((NodeImpl)node).getExtensionPointRegistry();
+        UtilityExtensionPoint utilities = registry.getExtensionPoint(UtilityExtensionPoint.class);
+        MonitorFactory monitorFactory = utilities.getUtility(MonitorFactory.class);
+        Monitor monitor = monitorFactory.createMonitor();
+        Problem problem = ((DefaultLoggingMonitorImpl)monitor).getLastLoggedProblem();
+        
+        assertNotNull(problem);
+        assertEquals("NoCompositeNamespace", problem.getMessageId());
+ 
+    }
+}

Propchange: incubator/tuscany/java/sca/itest/validation/src/test/java/calculator/NoCompositeNamespaceTestCase.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: incubator/tuscany/java/sca/itest/validation/src/test/java/calculator/NoCompositeNamespaceTestCase.java
------------------------------------------------------------------------------
    svn:keywords = Rev Date

Modified: incubator/tuscany/java/sca/itest/validation/src/test/java/calculator/PromotedReferenceNotFoundTestCase.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/itest/validation/src/test/java/calculator/PromotedReferenceNotFoundTestCase.java?rev=651657&r1=651656&r2=651657&view=diff
==============================================================================
--- incubator/tuscany/java/sca/itest/validation/src/test/java/calculator/PromotedReferenceNotFoundTestCase.java (original)
+++ incubator/tuscany/java/sca/itest/validation/src/test/java/calculator/PromotedReferenceNotFoundTestCase.java Fri Apr 25 10:24:33 2008
@@ -23,6 +23,7 @@
 import junit.framework.TestCase;
 
 import org.apache.tuscany.sca.core.ExtensionPointRegistry;
+import org.apache.tuscany.sca.core.UtilityExtensionPoint;
 import org.apache.tuscany.sca.monitor.Monitor;
 import org.apache.tuscany.sca.monitor.MonitorFactory;
 import org.apache.tuscany.sca.monitor.Problem;
@@ -58,7 +59,8 @@
 
     public void testCalculator() throws Exception {
         ExtensionPointRegistry registry = ((NodeImpl)node).getExtensionPointRegistry();
-        MonitorFactory monitorFactory = registry.getExtensionPoint(MonitorFactory.class);
+        UtilityExtensionPoint utilities = registry.getExtensionPoint(UtilityExtensionPoint.class);
+        MonitorFactory monitorFactory = utilities.getUtility(MonitorFactory.class);
         Monitor monitor = monitorFactory.createMonitor();
         Problem problem = ((DefaultLoggingMonitorImpl)monitor).getLastLoggedProblem();
         

Modified: incubator/tuscany/java/sca/itest/validation/src/test/java/calculator/PromotedServiceNotFoundTestCase.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/itest/validation/src/test/java/calculator/PromotedServiceNotFoundTestCase.java?rev=651657&r1=651656&r2=651657&view=diff
==============================================================================
--- incubator/tuscany/java/sca/itest/validation/src/test/java/calculator/PromotedServiceNotFoundTestCase.java (original)
+++ incubator/tuscany/java/sca/itest/validation/src/test/java/calculator/PromotedServiceNotFoundTestCase.java Fri Apr 25 10:24:33 2008
@@ -23,6 +23,7 @@
 import junit.framework.TestCase;
 
 import org.apache.tuscany.sca.core.ExtensionPointRegistry;
+import org.apache.tuscany.sca.core.UtilityExtensionPoint;
 import org.apache.tuscany.sca.monitor.Monitor;
 import org.apache.tuscany.sca.monitor.MonitorFactory;
 import org.apache.tuscany.sca.monitor.Problem;
@@ -58,7 +59,8 @@
 
     public void testCalculator() throws Exception {
         ExtensionPointRegistry registry = ((NodeImpl)node).getExtensionPointRegistry();
-        MonitorFactory monitorFactory = registry.getExtensionPoint(MonitorFactory.class);
+        UtilityExtensionPoint utilities = registry.getExtensionPoint(UtilityExtensionPoint.class);
+        MonitorFactory monitorFactory = utilities.getUtility(MonitorFactory.class);
         Monitor monitor = monitorFactory.createMonitor();
         Problem problem = ((DefaultLoggingMonitorImpl)monitor).getLastLoggedProblem();
         

Modified: incubator/tuscany/java/sca/itest/validation/src/test/java/calculator/PropertyAttributeMustSupplyNullTestCase.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/itest/validation/src/test/java/calculator/PropertyAttributeMustSupplyNullTestCase.java?rev=651657&r1=651656&r2=651657&view=diff
==============================================================================
--- incubator/tuscany/java/sca/itest/validation/src/test/java/calculator/PropertyAttributeMustSupplyNullTestCase.java (original)
+++ incubator/tuscany/java/sca/itest/validation/src/test/java/calculator/PropertyAttributeMustSupplyNullTestCase.java Fri Apr 25 10:24:33 2008
@@ -23,6 +23,7 @@
 import junit.framework.TestCase;
 
 import org.apache.tuscany.sca.core.ExtensionPointRegistry;
+import org.apache.tuscany.sca.core.UtilityExtensionPoint;
 import org.apache.tuscany.sca.monitor.Monitor;
 import org.apache.tuscany.sca.monitor.MonitorFactory;
 import org.apache.tuscany.sca.monitor.Problem;
@@ -58,7 +59,8 @@
 
     public void testCalculator() throws Exception {
         ExtensionPointRegistry registry = ((NodeImpl)node).getExtensionPointRegistry();
-        MonitorFactory monitorFactory = registry.getExtensionPoint(MonitorFactory.class);
+        UtilityExtensionPoint utilities = registry.getExtensionPoint(UtilityExtensionPoint.class);
+        MonitorFactory monitorFactory = utilities.getUtility(MonitorFactory.class);
         Monitor monitor = monitorFactory.createMonitor();
         Problem problem = ((DefaultLoggingMonitorImpl)monitor).getLastLoggedProblem();
         

Modified: incubator/tuscany/java/sca/itest/validation/src/test/java/calculator/PropertyAttributeTestCase.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/itest/validation/src/test/java/calculator/PropertyAttributeTestCase.java?rev=651657&r1=651656&r2=651657&view=diff
==============================================================================
--- incubator/tuscany/java/sca/itest/validation/src/test/java/calculator/PropertyAttributeTestCase.java (original)
+++ incubator/tuscany/java/sca/itest/validation/src/test/java/calculator/PropertyAttributeTestCase.java Fri Apr 25 10:24:33 2008
@@ -23,6 +23,7 @@
 import junit.framework.TestCase;
 
 import org.apache.tuscany.sca.core.ExtensionPointRegistry;
+import org.apache.tuscany.sca.core.UtilityExtensionPoint;
 import org.apache.tuscany.sca.monitor.Monitor;
 import org.apache.tuscany.sca.monitor.MonitorFactory;
 import org.apache.tuscany.sca.monitor.Problem;
@@ -58,7 +59,8 @@
 
     public void testCalculator() throws Exception {
         ExtensionPointRegistry registry = ((NodeImpl)node).getExtensionPointRegistry();
-        MonitorFactory monitorFactory = registry.getExtensionPoint(MonitorFactory.class);
+        UtilityExtensionPoint utilities = registry.getExtensionPoint(UtilityExtensionPoint.class);
+        MonitorFactory monitorFactory = utilities.getUtility(MonitorFactory.class);
         Monitor monitor = monitorFactory.createMonitor();
         Problem problem = ((DefaultLoggingMonitorImpl)monitor).getLastLoggedProblem();
         

Modified: incubator/tuscany/java/sca/itest/validation/src/test/java/calculator/PropertyNotFoundTestCase.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/itest/validation/src/test/java/calculator/PropertyNotFoundTestCase.java?rev=651657&r1=651656&r2=651657&view=diff
==============================================================================
--- incubator/tuscany/java/sca/itest/validation/src/test/java/calculator/PropertyNotFoundTestCase.java (original)
+++ incubator/tuscany/java/sca/itest/validation/src/test/java/calculator/PropertyNotFoundTestCase.java Fri Apr 25 10:24:33 2008
@@ -23,6 +23,7 @@
 import junit.framework.TestCase;
 
 import org.apache.tuscany.sca.core.ExtensionPointRegistry;
+import org.apache.tuscany.sca.core.UtilityExtensionPoint;
 import org.apache.tuscany.sca.monitor.Monitor;
 import org.apache.tuscany.sca.monitor.MonitorFactory;
 import org.apache.tuscany.sca.monitor.Problem;
@@ -58,7 +59,8 @@
 
     public void testCalculator() throws Exception {
         ExtensionPointRegistry registry = ((NodeImpl)node).getExtensionPointRegistry();
-        MonitorFactory monitorFactory = registry.getExtensionPoint(MonitorFactory.class);
+        UtilityExtensionPoint utilities = registry.getExtensionPoint(UtilityExtensionPoint.class);
+        MonitorFactory monitorFactory = utilities.getUtility(MonitorFactory.class);
         Monitor monitor = monitorFactory.createMonitor();
         Problem problem = ((DefaultLoggingMonitorImpl)monitor).getLastLoggedProblem();
         

Modified: incubator/tuscany/java/sca/itest/validation/src/test/java/calculator/PropertyOverrideManyAttributeTestCase.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/itest/validation/src/test/java/calculator/PropertyOverrideManyAttributeTestCase.java?rev=651657&r1=651656&r2=651657&view=diff
==============================================================================
--- incubator/tuscany/java/sca/itest/validation/src/test/java/calculator/PropertyOverrideManyAttributeTestCase.java (original)
+++ incubator/tuscany/java/sca/itest/validation/src/test/java/calculator/PropertyOverrideManyAttributeTestCase.java Fri Apr 25 10:24:33 2008
@@ -23,6 +23,7 @@
 import junit.framework.TestCase;
 
 import org.apache.tuscany.sca.core.ExtensionPointRegistry;
+import org.apache.tuscany.sca.core.UtilityExtensionPoint;
 import org.apache.tuscany.sca.monitor.Monitor;
 import org.apache.tuscany.sca.monitor.MonitorFactory;
 import org.apache.tuscany.sca.monitor.Problem;
@@ -58,7 +59,8 @@
 
     public void testCalculator() throws Exception {
         ExtensionPointRegistry registry = ((NodeImpl)node).getExtensionPointRegistry();
-        MonitorFactory monitorFactory = registry.getExtensionPoint(MonitorFactory.class);
+        UtilityExtensionPoint utilities = registry.getExtensionPoint(UtilityExtensionPoint.class);
+        MonitorFactory monitorFactory = utilities.getUtility(MonitorFactory.class);
         Monitor monitor = monitorFactory.createMonitor();
         Problem problem = ((DefaultLoggingMonitorImpl)monitor).getLastLoggedProblem();
         

Modified: incubator/tuscany/java/sca/itest/validation/src/test/java/calculator/ReferenceIncompatibleComponentInterfaceTestCase.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/itest/validation/src/test/java/calculator/ReferenceIncompatibleComponentInterfaceTestCase.java?rev=651657&r1=651656&r2=651657&view=diff
==============================================================================
--- incubator/tuscany/java/sca/itest/validation/src/test/java/calculator/ReferenceIncompatibleComponentInterfaceTestCase.java (original)
+++ incubator/tuscany/java/sca/itest/validation/src/test/java/calculator/ReferenceIncompatibleComponentInterfaceTestCase.java Fri Apr 25 10:24:33 2008
@@ -23,6 +23,7 @@
 import junit.framework.TestCase;
 
 import org.apache.tuscany.sca.core.ExtensionPointRegistry;
+import org.apache.tuscany.sca.core.UtilityExtensionPoint;
 import org.apache.tuscany.sca.monitor.Monitor;
 import org.apache.tuscany.sca.monitor.MonitorFactory;
 import org.apache.tuscany.sca.monitor.Problem;
@@ -58,7 +59,8 @@
 
     public void testCalculator() throws Exception {
         ExtensionPointRegistry registry = ((NodeImpl)node).getExtensionPointRegistry();
-        MonitorFactory monitorFactory = registry.getExtensionPoint(MonitorFactory.class);
+        UtilityExtensionPoint utilities = registry.getExtensionPoint(UtilityExtensionPoint.class);
+        MonitorFactory monitorFactory = utilities.getUtility(MonitorFactory.class);
         Monitor monitor = monitorFactory.createMonitor();
         Problem problem = ((DefaultLoggingMonitorImpl)monitor).getLastLoggedProblem();
         

Modified: incubator/tuscany/java/sca/itest/validation/src/test/java/calculator/ReferenceIncompatibleInterfaceTestCase.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/itest/validation/src/test/java/calculator/ReferenceIncompatibleInterfaceTestCase.java?rev=651657&r1=651656&r2=651657&view=diff
==============================================================================
--- incubator/tuscany/java/sca/itest/validation/src/test/java/calculator/ReferenceIncompatibleInterfaceTestCase.java (original)
+++ incubator/tuscany/java/sca/itest/validation/src/test/java/calculator/ReferenceIncompatibleInterfaceTestCase.java Fri Apr 25 10:24:33 2008
@@ -23,6 +23,7 @@
 import junit.framework.TestCase;
 
 import org.apache.tuscany.sca.core.ExtensionPointRegistry;
+import org.apache.tuscany.sca.core.UtilityExtensionPoint;
 import org.apache.tuscany.sca.monitor.Monitor;
 import org.apache.tuscany.sca.monitor.MonitorFactory;
 import org.apache.tuscany.sca.monitor.Problem;
@@ -58,7 +59,8 @@
 
     public void testCalculator() throws Exception {
         ExtensionPointRegistry registry = ((NodeImpl)node).getExtensionPointRegistry();
-        MonitorFactory monitorFactory = registry.getExtensionPoint(MonitorFactory.class);
+        UtilityExtensionPoint utilities = registry.getExtensionPoint(UtilityExtensionPoint.class);
+        MonitorFactory monitorFactory = utilities.getUtility(MonitorFactory.class);
         Monitor monitor = monitorFactory.createMonitor();
         Problem problem = ((DefaultLoggingMonitorImpl)monitor).getLastLoggedProblem();
         

Modified: incubator/tuscany/java/sca/itest/validation/src/test/java/calculator/ReferenceIncompatibleMultiplicityTestCase.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/itest/validation/src/test/java/calculator/ReferenceIncompatibleMultiplicityTestCase.java?rev=651657&r1=651656&r2=651657&view=diff
==============================================================================
--- incubator/tuscany/java/sca/itest/validation/src/test/java/calculator/ReferenceIncompatibleMultiplicityTestCase.java (original)
+++ incubator/tuscany/java/sca/itest/validation/src/test/java/calculator/ReferenceIncompatibleMultiplicityTestCase.java Fri Apr 25 10:24:33 2008
@@ -23,6 +23,7 @@
 import junit.framework.TestCase;
 
 import org.apache.tuscany.sca.core.ExtensionPointRegistry;
+import org.apache.tuscany.sca.core.UtilityExtensionPoint;
 import org.apache.tuscany.sca.monitor.Monitor;
 import org.apache.tuscany.sca.monitor.MonitorFactory;
 import org.apache.tuscany.sca.monitor.Problem;
@@ -58,7 +59,8 @@
 
     public void testCalculator() throws Exception {
         ExtensionPointRegistry registry = ((NodeImpl)node).getExtensionPointRegistry();
-        MonitorFactory monitorFactory = registry.getExtensionPoint(MonitorFactory.class);
+        UtilityExtensionPoint utilities = registry.getExtensionPoint(UtilityExtensionPoint.class);
+        MonitorFactory monitorFactory = utilities.getUtility(MonitorFactory.class);
         Monitor monitor = monitorFactory.createMonitor();
         Problem problem = ((DefaultLoggingMonitorImpl)monitor).getLastLoggedProblem();
         

Modified: incubator/tuscany/java/sca/itest/validation/src/test/java/calculator/ReferenceNotFoundTestCase.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/itest/validation/src/test/java/calculator/ReferenceNotFoundTestCase.java?rev=651657&r1=651656&r2=651657&view=diff
==============================================================================
--- incubator/tuscany/java/sca/itest/validation/src/test/java/calculator/ReferenceNotFoundTestCase.java (original)
+++ incubator/tuscany/java/sca/itest/validation/src/test/java/calculator/ReferenceNotFoundTestCase.java Fri Apr 25 10:24:33 2008
@@ -23,6 +23,7 @@
 import junit.framework.TestCase;
 
 import org.apache.tuscany.sca.core.ExtensionPointRegistry;
+import org.apache.tuscany.sca.core.UtilityExtensionPoint;
 import org.apache.tuscany.sca.monitor.Monitor;
 import org.apache.tuscany.sca.monitor.MonitorFactory;
 import org.apache.tuscany.sca.monitor.Problem;
@@ -58,7 +59,8 @@
 
     public void testCalculator() throws Exception {
         ExtensionPointRegistry registry = ((NodeImpl)node).getExtensionPointRegistry();
-        MonitorFactory monitorFactory = registry.getExtensionPoint(MonitorFactory.class);
+        UtilityExtensionPoint utilities = registry.getExtensionPoint(UtilityExtensionPoint.class);
+        MonitorFactory monitorFactory = utilities.getUtility(MonitorFactory.class);
         Monitor monitor = monitorFactory.createMonitor();
         Problem problem = ((DefaultLoggingMonitorImpl)monitor).getLastLoggedProblem();
         

Modified: incubator/tuscany/java/sca/itest/validation/src/test/java/calculator/ReferenceWithoutTargetsTestCase.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/itest/validation/src/test/java/calculator/ReferenceWithoutTargetsTestCase.java?rev=651657&r1=651656&r2=651657&view=diff
==============================================================================
--- incubator/tuscany/java/sca/itest/validation/src/test/java/calculator/ReferenceWithoutTargetsTestCase.java (original)
+++ incubator/tuscany/java/sca/itest/validation/src/test/java/calculator/ReferenceWithoutTargetsTestCase.java Fri Apr 25 10:24:33 2008
@@ -23,6 +23,7 @@
 import junit.framework.TestCase;
 
 import org.apache.tuscany.sca.core.ExtensionPointRegistry;
+import org.apache.tuscany.sca.core.UtilityExtensionPoint;
 import org.apache.tuscany.sca.monitor.Monitor;
 import org.apache.tuscany.sca.monitor.MonitorFactory;
 import org.apache.tuscany.sca.monitor.Problem;
@@ -58,7 +59,8 @@
 
     public void testCalculator() throws Exception {
         ExtensionPointRegistry registry = ((NodeImpl)node).getExtensionPointRegistry();
-        MonitorFactory monitorFactory = registry.getExtensionPoint(MonitorFactory.class);
+        UtilityExtensionPoint utilities = registry.getExtensionPoint(UtilityExtensionPoint.class);
+        MonitorFactory monitorFactory = utilities.getUtility(MonitorFactory.class);
         Monitor monitor = monitorFactory.createMonitor();
         Problem problem = ((DefaultLoggingMonitorImpl)monitor).getLastLoggedProblem();
         

Modified: incubator/tuscany/java/sca/itest/validation/src/test/java/calculator/ServiceNotFoundForComponentServiceTestCase.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/itest/validation/src/test/java/calculator/ServiceNotFoundForComponentServiceTestCase.java?rev=651657&r1=651656&r2=651657&view=diff
==============================================================================
--- incubator/tuscany/java/sca/itest/validation/src/test/java/calculator/ServiceNotFoundForComponentServiceTestCase.java (original)
+++ incubator/tuscany/java/sca/itest/validation/src/test/java/calculator/ServiceNotFoundForComponentServiceTestCase.java Fri Apr 25 10:24:33 2008
@@ -23,6 +23,7 @@
 import junit.framework.TestCase;
 
 import org.apache.tuscany.sca.core.ExtensionPointRegistry;
+import org.apache.tuscany.sca.core.UtilityExtensionPoint;
 import org.apache.tuscany.sca.monitor.Monitor;
 import org.apache.tuscany.sca.monitor.MonitorFactory;
 import org.apache.tuscany.sca.monitor.Problem;
@@ -58,7 +59,8 @@
 
     public void testCalculator() throws Exception {
         ExtensionPointRegistry registry = ((NodeImpl)node).getExtensionPointRegistry();
-        MonitorFactory monitorFactory = registry.getExtensionPoint(MonitorFactory.class);
+        UtilityExtensionPoint utilities = registry.getExtensionPoint(UtilityExtensionPoint.class);
+        MonitorFactory monitorFactory = utilities.getUtility(MonitorFactory.class);
         Monitor monitor = monitorFactory.createMonitor();
         Problem problem = ((DefaultLoggingMonitorImpl)monitor).getLastLoggedProblem();
         

Modified: incubator/tuscany/java/sca/itest/validation/src/test/java/calculator/UnresolvedComponentImplementationTestCase.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/itest/validation/src/test/java/calculator/UnresolvedComponentImplementationTestCase.java?rev=651657&r1=651656&r2=651657&view=diff
==============================================================================
--- incubator/tuscany/java/sca/itest/validation/src/test/java/calculator/UnresolvedComponentImplementationTestCase.java (original)
+++ incubator/tuscany/java/sca/itest/validation/src/test/java/calculator/UnresolvedComponentImplementationTestCase.java Fri Apr 25 10:24:33 2008
@@ -23,6 +23,7 @@
 import junit.framework.TestCase;
 
 import org.apache.tuscany.sca.core.ExtensionPointRegistry;
+import org.apache.tuscany.sca.core.UtilityExtensionPoint;
 import org.apache.tuscany.sca.monitor.Monitor;
 import org.apache.tuscany.sca.monitor.MonitorFactory;
 import org.apache.tuscany.sca.monitor.Problem;
@@ -54,7 +55,8 @@
 
     public void testCalculator() throws Exception {
         ExtensionPointRegistry registry = ((NodeImpl)node).getExtensionPointRegistry();
-        MonitorFactory monitorFactory = registry.getExtensionPoint(MonitorFactory.class);
+        UtilityExtensionPoint utilities = registry.getExtensionPoint(UtilityExtensionPoint.class);
+        MonitorFactory monitorFactory = utilities.getUtility(MonitorFactory.class);
         Monitor monitor = monitorFactory.createMonitor();
         Problem problem = ((DefaultLoggingMonitorImpl)monitor).getLastLoggedProblem();
         

Modified: incubator/tuscany/java/sca/itest/validation/src/test/java/calculator/XSDValidationTestCase.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/itest/validation/src/test/java/calculator/XSDValidationTestCase.java?rev=651657&r1=651656&r2=651657&view=diff
==============================================================================
--- incubator/tuscany/java/sca/itest/validation/src/test/java/calculator/XSDValidationTestCase.java (original)
+++ incubator/tuscany/java/sca/itest/validation/src/test/java/calculator/XSDValidationTestCase.java Fri Apr 25 10:24:33 2008
@@ -23,6 +23,7 @@
 import junit.framework.TestCase;
 
 import org.apache.tuscany.sca.core.ExtensionPointRegistry;
+import org.apache.tuscany.sca.core.UtilityExtensionPoint;
 import org.apache.tuscany.sca.monitor.Monitor;
 import org.apache.tuscany.sca.monitor.MonitorFactory;
 import org.apache.tuscany.sca.monitor.Problem;
@@ -58,10 +59,12 @@
 
     public void testCalculator() throws Exception {
         ExtensionPointRegistry registry = ((NodeImpl)node).getExtensionPointRegistry();
-        MonitorFactory monitorFactory = registry.getExtensionPoint(MonitorFactory.class);
+        UtilityExtensionPoint utilities = registry.getExtensionPoint(UtilityExtensionPoint.class);
+        MonitorFactory monitorFactory = utilities.getUtility(MonitorFactory.class);
         Monitor monitor = monitorFactory.createMonitor();
         Problem problem = ((DefaultLoggingMonitorImpl)monitor).getLastLoggedProblem();
 
-        // TODO - XSD errors need turing into monitored validation errors
+        assertNotNull(problem);
+        assertEquals("SchemaError", problem.getMessageId());
     }
 }

Modified: incubator/tuscany/java/sca/modules/assembly-xml/src/main/java/org/apache/tuscany/sca/assembly/xml/BaseAssemblyProcessor.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/assembly-xml/src/main/java/org/apache/tuscany/sca/assembly/xml/BaseAssemblyProcessor.java?rev=651657&r1=651656&r2=651657&view=diff
==============================================================================
--- incubator/tuscany/java/sca/modules/assembly-xml/src/main/java/org/apache/tuscany/sca/assembly/xml/BaseAssemblyProcessor.java (original)
+++ incubator/tuscany/java/sca/modules/assembly-xml/src/main/java/org/apache/tuscany/sca/assembly/xml/BaseAssemblyProcessor.java Fri Apr 25 10:24:33 2008
@@ -54,6 +54,7 @@
 import org.apache.tuscany.sca.assembly.OperationsConfigurator;
 import org.apache.tuscany.sca.assembly.Reference;
 import org.apache.tuscany.sca.assembly.Service;
+import org.apache.tuscany.sca.assembly.builder.impl.ProblemImpl;
 import org.apache.tuscany.sca.contribution.ContributionFactory;
 import org.apache.tuscany.sca.contribution.processor.BaseStAXArtifactProcessor;
 import org.apache.tuscany.sca.contribution.processor.StAXArtifactProcessor;
@@ -61,6 +62,9 @@
 import org.apache.tuscany.sca.contribution.service.ContributionReadException;
 import org.apache.tuscany.sca.contribution.service.ContributionResolveException;
 import org.apache.tuscany.sca.interfacedef.InterfaceContract;
+import org.apache.tuscany.sca.monitor.Monitor;
+import org.apache.tuscany.sca.monitor.Problem;
+import org.apache.tuscany.sca.monitor.Problem.Severity;
 import org.apache.tuscany.sca.policy.Intent;
 import org.apache.tuscany.sca.policy.IntentAttachPoint;
 import org.apache.tuscany.sca.policy.IntentAttachPointType;
@@ -91,6 +95,7 @@
     protected PolicyAttachPointProcessor policyProcessor;
     private DocumentBuilderFactory documentBuilderFactory;
     protected IntentAttachPointTypeFactory intentAttachPointTypeFactory;
+    private Monitor monitor;
 
     /**
      * Constructs a new BaseArtifactProcessor.
@@ -102,13 +107,15 @@
     public BaseAssemblyProcessor(ContributionFactory contribFactory,
                                  AssemblyFactory factory,
                                  PolicyFactory policyFactory,
-                                 StAXArtifactProcessor extensionProcessor) {
+                                 StAXArtifactProcessor extensionProcessor,
+                                 Monitor monitor) {
         this.assemblyFactory = factory;
         this.policyFactory = policyFactory;
         this.extensionProcessor = (StAXArtifactProcessor<Object>)extensionProcessor;
         this.contributionFactory = contribFactory;
         this.policyProcessor = new PolicyAttachPointProcessor(policyFactory);
         this.intentAttachPointTypeFactory = new IntentAttachPointTypeFactoryImpl();
+        this.monitor = monitor;
     }
 
     /**
@@ -124,7 +131,23 @@
         this.policyFactory = policyFactory;
         this.extensionProcessor = (StAXArtifactProcessor<Object>)extensionProcessor;
         this.policyProcessor = new PolicyAttachPointProcessor(policyFactory);
+        
+        //TODO - this constructor should take a monitor too. 
     }
+    
+    /**
+     * Marshals warnings into the monitor
+     * 
+     * @param message
+     * @param model
+     * @param messageParameters
+     */
+    protected void warning(String message, Object model, String... messageParameters) {
+        if (monitor != null){
+            Problem problem = new ProblemImpl(this.getClass().getName(), "assembly-xml-validation-messages", Severity.WARNING, model, message, (Object[])messageParameters);
+            monitor.problem(problem);
+        }
+    }    
 
     /**
      * Start an element.

Modified: incubator/tuscany/java/sca/modules/assembly-xml/src/main/java/org/apache/tuscany/sca/assembly/xml/CompositeProcessor.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/assembly-xml/src/main/java/org/apache/tuscany/sca/assembly/xml/CompositeProcessor.java?rev=651657&r1=651656&r2=651657&view=diff
==============================================================================
--- incubator/tuscany/java/sca/modules/assembly-xml/src/main/java/org/apache/tuscany/sca/assembly/xml/CompositeProcessor.java (original)
+++ incubator/tuscany/java/sca/modules/assembly-xml/src/main/java/org/apache/tuscany/sca/assembly/xml/CompositeProcessor.java Fri Apr 25 10:24:33 2008
@@ -64,6 +64,7 @@
 import org.apache.tuscany.sca.contribution.service.ContributionWriteException;
 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.policy.Intent;
 import org.apache.tuscany.sca.policy.IntentAttachPointType;
 import org.apache.tuscany.sca.policy.PolicyFactory;
@@ -83,6 +84,7 @@
     // FIXME: to be refactored
     private XPathFactory xPathFactory = XPathFactory.newInstance();
     
+    // TODO Refactor the constructor to include a monoitor
     /**
      * Construct a new composite processor
      * 
@@ -96,10 +98,11 @@
                               PolicyFactory policyFactory,
                               InterfaceContractMapper interfaceContractMapper,
                               StAXArtifactProcessor extensionProcessor) {
-        super(contributionFactory, factory, policyFactory, extensionProcessor);
+        super(contributionFactory, factory, policyFactory, extensionProcessor, null);
         
     }
 
+    // TODO - remove in favour or following constructor that takes a monitor
     /**
      * Construct a new composite processor
      * 
@@ -112,8 +115,24 @@
                               AssemblyFactory factory,
                               PolicyFactory policyFactory,
                               StAXArtifactProcessor extensionProcessor) {
-        super(contributionFactory, factory, policyFactory, extensionProcessor);
+        super(contributionFactory, factory, policyFactory, extensionProcessor, null);
     }
+    
+    /**
+     * Construct a new composite processor
+     * 
+     * @param contributionFactory
+     * @param assemblyFactory
+     * @param policyFactory
+     * @param extensionProcessor
+     */
+    public CompositeProcessor(ContributionFactory contributionFactory,
+                              AssemblyFactory factory,
+                              PolicyFactory policyFactory,
+                              StAXArtifactProcessor extensionProcessor,
+                              Monitor monitor) {
+        super(contributionFactory, factory, policyFactory, extensionProcessor, monitor);
+    }    
 
     public Composite read(XMLStreamReader reader) throws ContributionReadException, XMLStreamException {
         Composite composite = null;
@@ -141,7 +160,14 @@
 
                         // Read a <composite>
                         composite = assemblyFactory.createComposite();
+                        
                         composite.setName(new QName(getString(reader, TARGET_NAMESPACE), getString(reader, NAME)));
+
+                        if(!isSet(reader, TARGET_NAMESPACE)){
+                            // spec says that a composite must have a namespace
+                            warning("NoCompositeNamespace", composite, composite.getName().toString());   
+                        }
+                        
                         if(isSet(reader, AUTOWIRE)) {
                             composite.setAutowire(getBoolean(reader, AUTOWIRE));
                         }

Added: incubator/tuscany/java/sca/modules/assembly-xml/src/main/resources/assembly-xml-validation-messages.properties
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/assembly-xml/src/main/resources/assembly-xml-validation-messages.properties?rev=651657&view=auto
==============================================================================
--- incubator/tuscany/java/sca/modules/assembly-xml/src/main/resources/assembly-xml-validation-messages.properties (added)
+++ incubator/tuscany/java/sca/modules/assembly-xml/src/main/resources/assembly-xml-validation-messages.properties Fri Apr 25 10:24:33 2008
@@ -0,0 +1,21 @@
+#
+#
+#    Licensed to the Apache Software Foundation (ASF) under one
+#    or more contributor license agreements. See the NOTICE file
+#    distributed with this work for additional information
+#    regarding copyright ownership. The ASF licenses this file
+#    to you under the Apache License, Version 2.0 (the
+#    "License"); you may not use this file except in compliance
+#    with the License. You may obtain a copy of the License at
+#
+#    http://www.apache.org/licenses/LICENSE-2.0
+#
+#    Unless required by applicable law or agreed to in writing,
+#    software distributed under the License is distributed on an
+#    "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+#    KIND, either express or implied. See the License for the
+#    specific language governing permissions and limitations
+#    under the License.
+#
+#
+NoCompositeNamespace = No namespace found: Composite = {0}

Propchange: incubator/tuscany/java/sca/modules/assembly-xml/src/main/resources/assembly-xml-validation-messages.properties
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: incubator/tuscany/java/sca/modules/assembly-xml/src/main/resources/assembly-xml-validation-messages.properties
------------------------------------------------------------------------------
    svn:keywords = Rev Date

Propchange: incubator/tuscany/java/sca/modules/assembly-xml/src/main/resources/assembly-xml-validation-messages.properties
------------------------------------------------------------------------------
    svn:mime-type = text/plain

Modified: incubator/tuscany/java/sca/modules/assembly-xml/src/test/java/org/apache/tuscany/sca/assembly/xml/ReadDocumentTestCase.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/assembly-xml/src/test/java/org/apache/tuscany/sca/assembly/xml/ReadDocumentTestCase.java?rev=651657&r1=651656&r2=651657&view=diff
==============================================================================
--- incubator/tuscany/java/sca/modules/assembly-xml/src/test/java/org/apache/tuscany/sca/assembly/xml/ReadDocumentTestCase.java (original)
+++ incubator/tuscany/java/sca/modules/assembly-xml/src/test/java/org/apache/tuscany/sca/assembly/xml/ReadDocumentTestCase.java Fri Apr 25 10:24:33 2008
@@ -140,7 +140,7 @@
         
         ValidationSchemaExtensionPoint schemas = new DefaultValidationSchemaExtensionPoint();
         schemas.addSchema(getClass().getClassLoader().getResource("tuscany-sca.xsd").toString());
-        XMLInputFactory validatingInputFactory = new DefaultValidatingXMLInputFactory(inputFactory, schemas);
+        XMLInputFactory validatingInputFactory = new DefaultValidatingXMLInputFactory(inputFactory, schemas, null);
         CompositeDocumentProcessor compositeDocumentProcessor = new CompositeDocumentProcessor(staxProcessor, validatingInputFactory, null);
         
         URL url = getClass().getResource("JavaScriptReference.composite");
@@ -176,7 +176,7 @@
         
         ValidationSchemaExtensionPoint schemas = new DefaultValidationSchemaExtensionPoint();
         schemas.addSchema(getClass().getClassLoader().getResource("tuscany-sca.xsd").toString());
-        XMLInputFactory validatingInputFactory = new DefaultValidatingXMLInputFactory(inputFactory, schemas);
+        XMLInputFactory validatingInputFactory = new DefaultValidatingXMLInputFactory(inputFactory, schemas, null);
         CompositeDocumentProcessor compositeDocumentProcessor = new CompositeDocumentProcessor(staxProcessor, validatingInputFactory, null);
         
         URL url = getClass().getResource("RMIBindingTest.composite");

Modified: incubator/tuscany/java/sca/modules/contribution/src/main/java/org/apache/tuscany/sca/contribution/processor/DefaultValidatingXMLInputFactory.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/contribution/src/main/java/org/apache/tuscany/sca/contribution/processor/DefaultValidatingXMLInputFactory.java?rev=651657&r1=651656&r2=651657&view=diff
==============================================================================
--- incubator/tuscany/java/sca/modules/contribution/src/main/java/org/apache/tuscany/sca/contribution/processor/DefaultValidatingXMLInputFactory.java (original)
+++ incubator/tuscany/java/sca/modules/contribution/src/main/java/org/apache/tuscany/sca/contribution/processor/DefaultValidatingXMLInputFactory.java Fri Apr 25 10:24:33 2008
@@ -44,6 +44,7 @@
 import javax.xml.validation.Schema;
 import javax.xml.validation.SchemaFactory;
 
+import org.apache.tuscany.sca.monitor.Monitor;
 import org.xml.sax.SAXException;
 import org.xml.sax.SAXParseException;
 
@@ -57,6 +58,7 @@
     
     private XMLInputFactory inputFactory;
     private ValidationSchemaExtensionPoint schemas;
+    private Monitor monitor;
     private boolean initialized;
     private Schema aggregatedSchema;
 
@@ -66,9 +68,10 @@
      * @param inputFactory
      * @param schemas
      */
-    public DefaultValidatingXMLInputFactory(XMLInputFactory inputFactory, ValidationSchemaExtensionPoint schemas) {
+    public DefaultValidatingXMLInputFactory(XMLInputFactory inputFactory, ValidationSchemaExtensionPoint schemas, Monitor monitor) {
         this.inputFactory = inputFactory;
         this.schemas = schemas;
+        this.monitor = monitor;
     }
     
     /**
@@ -168,32 +171,32 @@
 
     public XMLStreamReader createXMLStreamReader(InputStream arg0, String arg1) throws XMLStreamException {
         initializeSchemas();
-        return new ValidatingXMLStreamReader(inputFactory.createXMLStreamReader(arg0, arg1), aggregatedSchema);
+        return new ValidatingXMLStreamReader(inputFactory.createXMLStreamReader(arg0, arg1), aggregatedSchema, monitor);
     }
 
     public XMLStreamReader createXMLStreamReader(InputStream arg0) throws XMLStreamException {
         initializeSchemas();
-        return new ValidatingXMLStreamReader(inputFactory.createXMLStreamReader(arg0), aggregatedSchema);
+        return new ValidatingXMLStreamReader(inputFactory.createXMLStreamReader(arg0), aggregatedSchema, monitor);
     }
 
     public XMLStreamReader createXMLStreamReader(Reader arg0) throws XMLStreamException {
         initializeSchemas();
-        return new ValidatingXMLStreamReader(inputFactory.createXMLStreamReader(arg0), aggregatedSchema);
+        return new ValidatingXMLStreamReader(inputFactory.createXMLStreamReader(arg0), aggregatedSchema, monitor);
     }
 
     public XMLStreamReader createXMLStreamReader(Source arg0) throws XMLStreamException {
         initializeSchemas();
-        return new ValidatingXMLStreamReader(inputFactory.createXMLStreamReader(arg0), aggregatedSchema);
+        return new ValidatingXMLStreamReader(inputFactory.createXMLStreamReader(arg0), aggregatedSchema, monitor);
     }
 
     public XMLStreamReader createXMLStreamReader(String arg0, InputStream arg1) throws XMLStreamException {
         initializeSchemas();
-        return new ValidatingXMLStreamReader(inputFactory.createXMLStreamReader(arg0, arg1), aggregatedSchema);
+        return new ValidatingXMLStreamReader(inputFactory.createXMLStreamReader(arg0, arg1), aggregatedSchema, monitor);
     }
 
     public XMLStreamReader createXMLStreamReader(String arg0, Reader arg1) throws XMLStreamException {
         initializeSchemas();
-        return new ValidatingXMLStreamReader(inputFactory.createXMLStreamReader(arg0, arg1), aggregatedSchema);
+        return new ValidatingXMLStreamReader(inputFactory.createXMLStreamReader(arg0, arg1), aggregatedSchema, monitor);
     }
 
     public XMLEventAllocator getEventAllocator() {

Modified: incubator/tuscany/java/sca/modules/contribution/src/main/java/org/apache/tuscany/sca/contribution/processor/ValidatingXMLStreamReader.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/contribution/src/main/java/org/apache/tuscany/sca/contribution/processor/ValidatingXMLStreamReader.java?rev=651657&r1=651656&r2=651657&view=diff
==============================================================================
--- incubator/tuscany/java/sca/modules/contribution/src/main/java/org/apache/tuscany/sca/contribution/processor/ValidatingXMLStreamReader.java (original)
+++ incubator/tuscany/java/sca/modules/contribution/src/main/java/org/apache/tuscany/sca/contribution/processor/ValidatingXMLStreamReader.java Fri Apr 25 10:24:33 2008
@@ -36,6 +36,10 @@
 import org.xml.sax.SAXException;
 import org.xml.sax.SAXParseException;
 import org.xml.sax.helpers.AttributesImpl;
+import org.apache.tuscany.sca.assembly.builder.impl.ProblemImpl;
+import org.apache.tuscany.sca.monitor.Monitor;
+import org.apache.tuscany.sca.monitor.Problem;
+import org.apache.tuscany.sca.monitor.Problem.Severity;
 
 /**
  * 
@@ -48,6 +52,7 @@
     
     private int level;
     private ValidatorHandler handler;
+    private final Monitor monitor;
     
     /**
      * Constructs a new ValidatingXMLStreamReader.
@@ -56,8 +61,9 @@
      * @param schema
      * @throws XMLStreamException
      */
-    ValidatingXMLStreamReader(XMLStreamReader reader, Schema schema) throws XMLStreamException {
+    ValidatingXMLStreamReader(XMLStreamReader reader, Schema schema, Monitor monitor) throws XMLStreamException {
         super(reader);
+        this.monitor = monitor;
         if (schema == null) {
             return;
         }
@@ -73,23 +79,59 @@
         // These validation errors are just warnings for us as we want to support
         // running from an XML document with XSD validation errors, as long as we can
         // get the metadata we need from the document
-        handler.setErrorHandler(new ErrorHandler() {
+        handler.setErrorHandler(new ErrorHandler() {        	
             private String getMessage(SAXParseException e) {
                 return "XMLSchema validation problem in: " + e.getSystemId() + ", line: " + e.getLineNumber() + ", column: " + e.getColumnNumber() + "\n" + e.getMessage();
             }
             
-            public void error(SAXParseException exception) throws SAXException {
-                logger.warning(getMessage(exception));
+            public void error(SAXParseException exception) throws SAXException {            	
+            	if (ValidatingXMLStreamReader.this.monitor == null)
+            		logger.warning(getMessage(exception));
+            	else            		
+            		ValidatingXMLStreamReader.this.error("SchemaError", ValidatingXMLStreamReader.this.getClass(), exception.getSystemId(), 
+                   		exception.getLineNumber(), exception.getColumnNumber(), exception.getMessage());                              
             }
             
-            public void fatalError(SAXParseException exception) throws SAXException {
-                logger.warning(getMessage(exception));
+            public void fatalError(SAXParseException exception) throws SAXException {            	
+            	if (ValidatingXMLStreamReader.this.monitor == null)
+            		logger.warning(getMessage(exception));
+            	else
+            		ValidatingXMLStreamReader.this.error("SchemaFatalError", ValidatingXMLStreamReader.this.getClass(), exception.getSystemId(), 
+                       	exception.getLineNumber(), exception.getColumnNumber(), exception.getMessage());               
             }
             
             public void warning(SAXParseException exception) throws SAXException {
-                logger.warning(getMessage(exception));
+            	if (ValidatingXMLStreamReader.this.monitor == null)
+            		logger.warning(getMessage(exception));
+            	else
+            		ValidatingXMLStreamReader.this.warning("SchemaWarning", ValidatingXMLStreamReader.this.getClass(), exception.getSystemId(), 
+                       	exception.getLineNumber(), exception.getColumnNumber(), exception.getMessage());                
             }
         });
+    }
+    
+    /**
+     * Report a warning.
+     * 
+     * @param problems
+     * @param message
+     * @param model
+     */
+    private void warning(String message, Object model, Object... messageParameters) {
+        Problem problem = new ProblemImpl(this.getClass().getName(), "contribution-validation-messages", Severity.WARNING, model, message, (Object[])messageParameters);
+        monitor.problem(problem);
+    }
+    
+    /**
+     * Report a error.
+     * 
+     * @param problems
+     * @param message
+     * @param model
+     */
+    private void error(String message, Object model, Object... messageParameters) {
+        Problem problem = new ProblemImpl(this.getClass().getName(), "contribution-validation-messages", Severity.ERROR, model, message, (Object[])messageParameters);
+        monitor.problem(problem);
     }
 
     @Override

Added: incubator/tuscany/java/sca/modules/contribution/src/main/resources/contribution-validation-messages.properties
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/contribution/src/main/resources/contribution-validation-messages.properties?rev=651657&view=auto
==============================================================================
--- incubator/tuscany/java/sca/modules/contribution/src/main/resources/contribution-validation-messages.properties (added)
+++ incubator/tuscany/java/sca/modules/contribution/src/main/resources/contribution-validation-messages.properties Fri Apr 25 10:24:33 2008
@@ -0,0 +1,23 @@
+#
+#
+#    Licensed to the Apache Software Foundation (ASF) under one
+#    or more contributor license agreements. See the NOTICE file
+#    distributed with this work for additional information
+#    regarding copyright ownership. The ASF licenses this file
+#    to you under the Apache License, Version 2.0 (the
+#    "License"); you may not use this file except in compliance
+#    with the License. You may obtain a copy of the License at
+#
+#    http://www.apache.org/licenses/LICENSE-2.0
+#
+#    Unless required by applicable law or agreed to in writing,
+#    software distributed under the License is distributed on an
+#    "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+#    KIND, either express or implied. See the License for the
+#    specific language governing permissions and limitations
+#    under the License.
+#
+#
+SchemaError = XMLSchema validation error occured in: {0} ,line = {1}, column = {2}, Message = {3}
+SchemaFatalError = XMLSchema validation fatal error occured in: {0} ,line = {1}, column = {2}, Message = {3}
+SchemaWarning = XMLSchema validation warning occured in: {0} ,line = {1}, column = {2}, Message = {3}
\ No newline at end of file

Propchange: incubator/tuscany/java/sca/modules/contribution/src/main/resources/contribution-validation-messages.properties
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: incubator/tuscany/java/sca/modules/contribution/src/main/resources/contribution-validation-messages.properties
------------------------------------------------------------------------------
    svn:keywords = Rev Date

Propchange: incubator/tuscany/java/sca/modules/contribution/src/main/resources/contribution-validation-messages.properties
------------------------------------------------------------------------------
    svn:mime-type = text/plain

Modified: incubator/tuscany/java/sca/modules/host-embedded/src/main/java/org/apache/tuscany/sca/host/embedded/impl/ReallySmallRuntime.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/host-embedded/src/main/java/org/apache/tuscany/sca/host/embedded/impl/ReallySmallRuntime.java?rev=651657&r1=651656&r2=651657&view=diff
==============================================================================
--- incubator/tuscany/java/sca/modules/host-embedded/src/main/java/org/apache/tuscany/sca/host/embedded/impl/ReallySmallRuntime.java (original)
+++ incubator/tuscany/java/sca/modules/host-embedded/src/main/java/org/apache/tuscany/sca/host/embedded/impl/ReallySmallRuntime.java Fri Apr 25 10:24:33 2008
@@ -42,6 +42,7 @@
 import org.apache.tuscany.sca.core.DefaultExtensionPointRegistry;
 import org.apache.tuscany.sca.core.ExtensionPointRegistry;
 import org.apache.tuscany.sca.core.ModuleActivator;
+import org.apache.tuscany.sca.core.UtilityExtensionPoint;
 import org.apache.tuscany.sca.core.assembly.ActivationException;
 import org.apache.tuscany.sca.core.assembly.CompositeActivator;
 import org.apache.tuscany.sca.core.assembly.RuntimeAssemblyFactory;
@@ -85,6 +86,7 @@
     private ScopeRegistry scopeRegistry;
     private ProxyFactory proxyFactory;
     private List scaDefnsSink = new ArrayList();
+    private Monitor monitor;
 
     public ReallySmallRuntime(ClassLoader classLoader) {
         this.classLoader = classLoader;
@@ -131,7 +133,18 @@
         SCABindingFactory scaBindingFactory = factories.getFactory(SCABindingFactory.class);
         IntentAttachPointTypeFactory intentAttachPointTypeFactory = new DefaultIntentAttachPointTypeFactory();
         factories.addFactory(intentAttachPointTypeFactory);
-        ContributionFactory contributionFactory = factories.getFactory(ContributionFactory.class); 
+        ContributionFactory contributionFactory = factories.getFactory(ContributionFactory.class);
+        
+        // Create a monitor
+        UtilityExtensionPoint utilities = registry.getExtensionPoint(UtilityExtensionPoint.class);
+        MonitorFactory monitorFactory = utilities.getUtility(MonitorFactory.class);
+        
+        if (monitorFactory != null){
+            monitor = monitorFactory.createMonitor();
+        } else {
+            logger.fine("No MonitorFactory is found on the classpath.");
+        }
+
         
         // Create a contribution service
         contributionService = ReallySmallRuntimeBuilder.createContributionService(classLoader,
@@ -140,7 +153,8 @@
                                                                                   assemblyFactory,
                                                                                   policyFactory,
                                                                                   mapper,
-                                                                                  scaDefnsSink);
+                                                                                  scaDefnsSink,
+                                                                                  monitor);
         
         // Create the ScopeRegistry
         scopeRegistry = ReallySmallRuntimeBuilder.createScopeRegistry(registry); 
@@ -195,15 +209,6 @@
         IntentAttachPointTypeFactory intentAttachPointTypeFactory = factories.getFactory(IntentAttachPointTypeFactory.class);
         InterfaceContractMapper mapper = new InterfaceContractMapperImpl();
         
-        // create a monitor to catch validation errors
-        MonitorFactory monitorFactory = registry.getExtensionPoint(MonitorFactory.class);
-        Monitor monitor = null;
-        
-        if (monitorFactory != null){
-            monitor = monitorFactory.createMonitor();
-        } else {
-            logger.fine("No MonitorFactory is found on the classpath.");
-        }
         
         //Create a composite builder
         SCADefinitions scaDefns = new SCADefinitionsImpl();

Modified: incubator/tuscany/java/sca/modules/host-embedded/src/main/java/org/apache/tuscany/sca/host/embedded/impl/ReallySmallRuntimeBuilder.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/host-embedded/src/main/java/org/apache/tuscany/sca/host/embedded/impl/ReallySmallRuntimeBuilder.java?rev=651657&r1=651656&r2=651657&view=diff
==============================================================================
--- incubator/tuscany/java/sca/modules/host-embedded/src/main/java/org/apache/tuscany/sca/host/embedded/impl/ReallySmallRuntimeBuilder.java (original)
+++ incubator/tuscany/java/sca/modules/host-embedded/src/main/java/org/apache/tuscany/sca/host/embedded/impl/ReallySmallRuntimeBuilder.java Fri Apr 25 10:24:33 2008
@@ -24,6 +24,7 @@
 import java.security.AccessController;
 import java.security.PrivilegedAction;
 import java.util.List;
+import java.util.logging.Logger;
 
 import javax.xml.stream.XMLInputFactory;
 import javax.xml.stream.XMLOutputFactory;
@@ -86,6 +87,7 @@
 import org.apache.tuscany.sca.interfacedef.java.JavaInterfaceFactory;
 import org.apache.tuscany.sca.invocation.MessageFactory;
 import org.apache.tuscany.sca.monitor.Monitor;
+import org.apache.tuscany.sca.monitor.MonitorFactory;
 import org.apache.tuscany.sca.policy.IntentAttachPointTypeFactory;
 import org.apache.tuscany.sca.policy.PolicyFactory;
 import org.apache.tuscany.sca.provider.ProviderFactoryExtensionPoint;
@@ -94,7 +96,9 @@
 import org.apache.tuscany.sca.work.WorkScheduler;
 
 public class ReallySmallRuntimeBuilder {
-
+    
+	private final static Logger logger = Logger.getLogger(ReallySmallRuntimeBuilder.class.getName());
+	
     public static ProxyFactory createProxyFactory(ExtensionPointRegistry registry,
                                                   InterfaceContractMapper mapper,
                                                   MessageFactory messageFactory) {
@@ -181,7 +185,8 @@
                                                                 AssemblyFactory assemblyFactory,
                                                                 PolicyFactory policyFactory,
                                                                 InterfaceContractMapper mapper,
-                                                                List scaDefinitionsSink)
+                                                                List scaDefinitionsSink,
+                                                                Monitor monitor)
         throws ActivationException {
 
         // Create a new XML input factory
@@ -203,8 +208,9 @@
         });           
         schemas.addSchema(schemaURL.toString());
         
+       
         // Create a validating XML input factory
-        XMLInputFactory validatingInputFactory = new DefaultValidatingXMLInputFactory(inputFactory, schemas);
+        XMLInputFactory validatingInputFactory = new DefaultValidatingXMLInputFactory(inputFactory, schemas, monitor);
         
         // Create StAX artifact processor extension point
         StAXArtifactProcessorExtensionPoint staxProcessors =
@@ -219,7 +225,7 @@
         });           
         ExtensibleStAXArtifactProcessor staxProcessor =
             new ExtensibleStAXArtifactProcessor(staxProcessors, inputFactory, outputFactory);
-        staxProcessors.addArtifactProcessor(new CompositeProcessor(contributionFactory, assemblyFactory, policyFactory, staxProcessor));
+        staxProcessors.addArtifactProcessor(new CompositeProcessor(contributionFactory, assemblyFactory, policyFactory, staxProcessor, monitor));
         staxProcessors.addArtifactProcessor(new ComponentTypeProcessor(assemblyFactory, policyFactory, staxProcessor));
         staxProcessors
             .addArtifactProcessor(new ConstrainingTypeProcessor(assemblyFactory, policyFactory, staxProcessor));

Modified: incubator/tuscany/java/sca/samples/domain-management/src/main/java/manager/DistributeComponents.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/samples/domain-management/src/main/java/manager/DistributeComponents.java?rev=651657&r1=651656&r2=651657&view=diff
==============================================================================
--- incubator/tuscany/java/sca/samples/domain-management/src/main/java/manager/DistributeComponents.java (original)
+++ incubator/tuscany/java/sca/samples/domain-management/src/main/java/manager/DistributeComponents.java Fri Apr 25 10:24:33 2008
@@ -155,6 +155,11 @@
         nodeFactory = modelFactories.getFactory(NodeImplementationFactory.class);
         atomBindingFactory = modelFactories.getFactory(AtomBindingFactory.class);
         
+        // Create a monitor
+        UtilityExtensionPoint utilities = extensionPoints.getExtensionPoint(UtilityExtensionPoint.class);
+        MonitorFactory monitorFactory = utilities.getUtility(MonitorFactory.class);
+        Monitor monitor = monitorFactory.createMonitor();
+        
         // Create XML and document artifact processors
         StAXArtifactProcessorExtensionPoint xmlProcessorExtensions = extensionPoints.getExtensionPoint(StAXArtifactProcessorExtensionPoint.class);
         xmlProcessor = new ExtensibleStAXArtifactProcessor(xmlProcessorExtensions, inputFactory, outputFactory);
@@ -164,7 +169,7 @@
         // Create and register XML artifact processor extensions for sca-contribution XML and
         // SCDL <composite>, <componentType> and <constrainingType>
         xmlProcessorExtensions.addArtifactProcessor(new ContributionMetadataProcessor(assemblyFactory, contributionFactory, xmlProcessor));
-        xmlProcessorExtensions.addArtifactProcessor(new CompositeProcessor(contributionFactory, assemblyFactory, policyFactory, xmlProcessor));
+        xmlProcessorExtensions.addArtifactProcessor(new CompositeProcessor(contributionFactory, assemblyFactory, policyFactory, xmlProcessor, monitor));
         xmlProcessorExtensions.addArtifactProcessor(new ComponentTypeProcessor(assemblyFactory, policyFactory, xmlProcessor));
         xmlProcessorExtensions.addArtifactProcessor(new ConstrainingTypeProcessor(assemblyFactory, policyFactory, xmlProcessor));
         
@@ -180,11 +185,6 @@
         // Create contribution content processor
         modelResolvers = extensionPoints.getExtensionPoint(ModelResolverExtensionPoint.class);
         contributionContentProcessor = new ContributionContentProcessor(modelFactories, modelResolvers, urlExtensionProcessor);
-        
-        // Create a monitor
-        UtilityExtensionPoint utilities = extensionPoints.getExtensionPoint(UtilityExtensionPoint.class);
-        MonitorFactory monitorFactory = utilities.getUtility(MonitorFactory.class);
-        Monitor monitor = monitorFactory.createMonitor();
         
         // Create a contribution dependency builder
         contributionDependencyBuilder = new ContributionDependencyBuilderImpl(monitor);