You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tuscany.apache.org by sv...@apache.org on 2008/03/17 19:45:01 UTC

svn commit: r638020 - in /incubator/tuscany/java/sca/modules: binding-sca-xml/src/main/java/org/apache/tuscany/sca/binding/sca/xml/ binding-sca/src/main/java/org/apache/tuscany/sca/binding/sca/ binding-sca/src/main/resources/META-INF/services/ binding-...

Author: svkrish
Date: Mon Mar 17 11:44:55 2008
New Revision: 638020

URL: http://svn.apache.org/viewvc?rev=638020&view=rev
Log:
adding SCADefinitionsProvider mechanism for tuscany modules contributing policy intents, policysets, bindingtype definitions etc. thro the SCADefinitions

Added:
    incubator/tuscany/java/sca/modules/binding-sca/src/main/java/org/apache/tuscany/sca/binding/sca/SCABindingDefinitionsProvider.java   (with props)
    incubator/tuscany/java/sca/modules/binding-sca/src/main/resources/META-INF/services/org.apache.tuscany.sca.definitions.SCADefinitionsProvider
    incubator/tuscany/java/sca/modules/binding-sca/src/main/resources/org/
    incubator/tuscany/java/sca/modules/binding-sca/src/main/resources/org/apache/
    incubator/tuscany/java/sca/modules/binding-sca/src/main/resources/org/apache/tuscany/
    incubator/tuscany/java/sca/modules/binding-sca/src/main/resources/org/apache/tuscany/sca/
    incubator/tuscany/java/sca/modules/binding-sca/src/main/resources/org/apache/tuscany/sca/binding/
    incubator/tuscany/java/sca/modules/binding-sca/src/main/resources/org/apache/tuscany/sca/binding/sca/
    incubator/tuscany/java/sca/modules/binding-sca/src/main/resources/org/apache/tuscany/sca/binding/sca/definitions.xml   (with props)
    incubator/tuscany/java/sca/modules/binding-ws-axis2/src/main/java/org/apache/tuscany/sca/binding/ws/axis2/WSBindingDefinitionsProvider.java   (with props)
    incubator/tuscany/java/sca/modules/binding-ws-axis2/src/main/resources/META-INF/services/org.apache.tuscany.sca.definitions.SCADefinitionsProvider
    incubator/tuscany/java/sca/modules/binding-ws-axis2/src/main/resources/org/apache/tuscany/sca/binding/ws/axis2/definitions.xml
      - copied unchanged from r637581, incubator/tuscany/java/sca/modules/binding-ws-axis2/src/main/resources/META-INF/services/definitions.xml
    incubator/tuscany/java/sca/modules/definitions/src/main/java/org/apache/tuscany/sca/definitions/SCADefinitionsProvider.java   (with props)
    incubator/tuscany/java/sca/modules/definitions/src/main/java/org/apache/tuscany/sca/definitions/SCADefinitionsProviderException.java   (with props)
    incubator/tuscany/java/sca/modules/definitions/src/main/java/org/apache/tuscany/sca/definitions/SCADefinitionsProviderExtensionPoint.java   (with props)
    incubator/tuscany/java/sca/modules/definitions/src/main/java/org/apache/tuscany/sca/definitions/impl/DefaultSCADefinitionsProviderExtensionPoint.java   (with props)
    incubator/tuscany/java/sca/modules/definitions/src/main/resources/META-INF/services/org.apache.tuscany.sca.definitions.SCADefinitionsProviderExtensionPoint
    incubator/tuscany/java/sca/modules/policy-logging/src/main/java/org/apache/tuscany/sca/policy/logging/LoggingPolicyDefinitionsProvider.java   (with props)
    incubator/tuscany/java/sca/modules/policy-logging/src/main/resources/META-INF/services/org.apache.tuscany.sca.definitions.SCADefinitionsProvider
    incubator/tuscany/java/sca/modules/policy-logging/src/main/resources/org/
    incubator/tuscany/java/sca/modules/policy-logging/src/main/resources/org/apache/
    incubator/tuscany/java/sca/modules/policy-logging/src/main/resources/org/apache/tuscany/
    incubator/tuscany/java/sca/modules/policy-logging/src/main/resources/org/apache/tuscany/sca/
    incubator/tuscany/java/sca/modules/policy-logging/src/main/resources/org/apache/tuscany/sca/policy/
    incubator/tuscany/java/sca/modules/policy-logging/src/main/resources/org/apache/tuscany/sca/policy/logging/
    incubator/tuscany/java/sca/modules/policy-logging/src/main/resources/org/apache/tuscany/sca/policy/logging/definitions.xml
      - copied unchanged from r637581, incubator/tuscany/java/sca/modules/policy-logging/src/main/resources/META-INF/services/definitions.xml
    incubator/tuscany/java/sca/modules/policy-security/src/main/java/org/apache/tuscany/sca/policy/security/SecurityPolicyDefinitionsProvider.java   (with props)
    incubator/tuscany/java/sca/modules/policy-security/src/main/resources/META-INF/services/org.apache.tuscany.sca.definitions.SCADefinitionsProvider
    incubator/tuscany/java/sca/modules/policy-security/src/main/resources/org/
    incubator/tuscany/java/sca/modules/policy-security/src/main/resources/org/apache/
    incubator/tuscany/java/sca/modules/policy-security/src/main/resources/org/apache/tuscany/
    incubator/tuscany/java/sca/modules/policy-security/src/main/resources/org/apache/tuscany/sca/
    incubator/tuscany/java/sca/modules/policy-security/src/main/resources/org/apache/tuscany/sca/policy/
    incubator/tuscany/java/sca/modules/policy-security/src/main/resources/org/apache/tuscany/sca/policy/security/
    incubator/tuscany/java/sca/modules/policy-security/src/main/resources/org/apache/tuscany/sca/policy/security/definitions.xml   (with props)
    incubator/tuscany/java/sca/modules/policy-transaction/src/main/java/org/apache/tuscany/sca/policy/transaction/TransactionPolicyDefinitionsProvider.java   (with props)
    incubator/tuscany/java/sca/modules/policy-transaction/src/main/resources/META-INF/services/org.apache.tuscany.sca.definitions.SCADefinitionsProvider
    incubator/tuscany/java/sca/modules/policy-transaction/src/main/resources/org/
    incubator/tuscany/java/sca/modules/policy-transaction/src/main/resources/org/apache/
    incubator/tuscany/java/sca/modules/policy-transaction/src/main/resources/org/apache/tuscany/
    incubator/tuscany/java/sca/modules/policy-transaction/src/main/resources/org/apache/tuscany/sca/
    incubator/tuscany/java/sca/modules/policy-transaction/src/main/resources/org/apache/tuscany/sca/policy/
    incubator/tuscany/java/sca/modules/policy-transaction/src/main/resources/org/apache/tuscany/sca/policy/transaction/
    incubator/tuscany/java/sca/modules/policy-transaction/src/main/resources/org/apache/tuscany/sca/policy/transaction/definitions.xml
      - copied, changed from r637581, incubator/tuscany/java/sca/modules/policy-transaction/src/main/resources/META-INF/services/definitions.xml
    incubator/tuscany/java/sca/modules/policy-transaction/src/main/resources/org/apache/tuscany/sca/policy/transaction/tuscany_definitions.xml   (with props)
Removed:
    incubator/tuscany/java/sca/modules/binding-ws-axis2/src/main/resources/META-INF/services/definitions.xml
    incubator/tuscany/java/sca/modules/policy-logging/src/main/resources/META-INF/services/definitions.xml
    incubator/tuscany/java/sca/modules/policy-transaction/src/main/resources/META-INF/services/definitions.xml
    incubator/tuscany/java/sca/modules/policy/src/main/resources/META-INF/services/definitions.xml
Modified:
    incubator/tuscany/java/sca/modules/binding-sca-xml/src/main/java/org/apache/tuscany/sca/binding/sca/xml/SCABindingProcessor.java
    incubator/tuscany/java/sca/modules/definitions/pom.xml
    incubator/tuscany/java/sca/modules/definitions/src/main/java/org/apache/tuscany/sca/definitions/util/SCADefinitionsUtil.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/policy-transaction/src/test/java/org/apache/tuscany/sca/policy/transaction/PolicyReadTestCase.java
    incubator/tuscany/java/sca/modules/policy-xml/src/main/java/org/apache/tuscany/sca/policy/xml/BindingTypeProcessor.java
    incubator/tuscany/java/sca/modules/policy-xml/src/main/java/org/apache/tuscany/sca/policy/xml/ImplementationTypeProcessor.java
    incubator/tuscany/java/sca/modules/policy-xml/src/main/java/org/apache/tuscany/sca/policy/xml/IntentAttachPointTypeProcessor.java

Modified: incubator/tuscany/java/sca/modules/binding-sca-xml/src/main/java/org/apache/tuscany/sca/binding/sca/xml/SCABindingProcessor.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/binding-sca-xml/src/main/java/org/apache/tuscany/sca/binding/sca/xml/SCABindingProcessor.java?rev=638020&r1=638019&r2=638020&view=diff
==============================================================================
--- incubator/tuscany/java/sca/modules/binding-sca-xml/src/main/java/org/apache/tuscany/sca/binding/sca/xml/SCABindingProcessor.java (original)
+++ incubator/tuscany/java/sca/modules/binding-sca-xml/src/main/java/org/apache/tuscany/sca/binding/sca/xml/SCABindingProcessor.java Mon Mar 17 11:44:55 2008
@@ -103,6 +103,7 @@
     }
     
     public void resolve(SCABinding model, ModelResolver resolver) throws ContributionResolveException {
+        policyProcessor.resolvePolicies(model, resolver);
     }    
 
     public void write(SCABinding scaBinding, XMLStreamWriter writer) throws ContributionWriteException, XMLStreamException {

Added: incubator/tuscany/java/sca/modules/binding-sca/src/main/java/org/apache/tuscany/sca/binding/sca/SCABindingDefinitionsProvider.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/binding-sca/src/main/java/org/apache/tuscany/sca/binding/sca/SCABindingDefinitionsProvider.java?rev=638020&view=auto
==============================================================================
--- incubator/tuscany/java/sca/modules/binding-sca/src/main/java/org/apache/tuscany/sca/binding/sca/SCABindingDefinitionsProvider.java (added)
+++ incubator/tuscany/java/sca/modules/binding-sca/src/main/java/org/apache/tuscany/sca/binding/sca/SCABindingDefinitionsProvider.java Mon Mar 17 11:44:55 2008
@@ -0,0 +1,58 @@
+/*
+ * 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 org.apache.tuscany.sca.binding.sca;
+
+import java.net.URI;
+import java.net.URL;
+
+import org.apache.tuscany.sca.contribution.processor.ExtensibleURLArtifactProcessor;
+import org.apache.tuscany.sca.contribution.processor.URLArtifactProcessor;
+import org.apache.tuscany.sca.contribution.processor.URLArtifactProcessorExtensionPoint;
+import org.apache.tuscany.sca.core.ExtensionPointRegistry;
+import org.apache.tuscany.sca.definitions.SCADefinitions;
+import org.apache.tuscany.sca.definitions.SCADefinitionsProvider;
+import org.apache.tuscany.sca.definitions.SCADefinitionsProviderException;
+
+/**
+ * Provider for Policy Intents and PolicySet definitions related to security
+ */
+public class SCABindingDefinitionsProvider implements SCADefinitionsProvider {
+    private String definitionsFile = "org/apache/tuscany/sca/binding/sca/definitions.xml";
+    URLArtifactProcessor urlArtifactProcessor = null;
+    
+    public SCABindingDefinitionsProvider(ExtensionPointRegistry registry) {
+        URLArtifactProcessorExtensionPoint documentProcessors = registry.getExtensionPoint(URLArtifactProcessorExtensionPoint.class);
+        urlArtifactProcessor = (URLArtifactProcessor)documentProcessors.getProcessor(SCADefinitions.class);
+    }
+
+    public SCADefinitions getSCADefinition() throws SCADefinitionsProviderException {
+        URL defintionsFileUrl = getClass().getClassLoader().getResource(definitionsFile);
+        Object scaDefn = null;
+        try {
+            URI uri = new URI(definitionsFile);
+            return (SCADefinitions)urlArtifactProcessor.read(null, 
+                                                             uri, 
+                                                             defintionsFileUrl);
+        } catch ( Exception e ) {
+            throw new SCADefinitionsProviderException(e);
+        }
+    }
+
+}

Propchange: incubator/tuscany/java/sca/modules/binding-sca/src/main/java/org/apache/tuscany/sca/binding/sca/SCABindingDefinitionsProvider.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: incubator/tuscany/java/sca/modules/binding-sca/src/main/java/org/apache/tuscany/sca/binding/sca/SCABindingDefinitionsProvider.java
------------------------------------------------------------------------------
    svn:keywords = Rev Date

Added: incubator/tuscany/java/sca/modules/binding-sca/src/main/resources/META-INF/services/org.apache.tuscany.sca.definitions.SCADefinitionsProvider
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/binding-sca/src/main/resources/META-INF/services/org.apache.tuscany.sca.definitions.SCADefinitionsProvider?rev=638020&view=auto
==============================================================================
--- incubator/tuscany/java/sca/modules/binding-sca/src/main/resources/META-INF/services/org.apache.tuscany.sca.definitions.SCADefinitionsProvider (added)
+++ incubator/tuscany/java/sca/modules/binding-sca/src/main/resources/META-INF/services/org.apache.tuscany.sca.definitions.SCADefinitionsProvider Mon Mar 17 11:44:55 2008
@@ -0,0 +1,19 @@
+# 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. 
+
+# Implementation class for SCA Definitions Providers
+org.apache.tuscany.sca.binding.sca.SCABindingDefinitionsProvider
\ No newline at end of file

Added: incubator/tuscany/java/sca/modules/binding-sca/src/main/resources/org/apache/tuscany/sca/binding/sca/definitions.xml
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/binding-sca/src/main/resources/org/apache/tuscany/sca/binding/sca/definitions.xml?rev=638020&view=auto
==============================================================================
--- incubator/tuscany/java/sca/modules/binding-sca/src/main/resources/org/apache/tuscany/sca/binding/sca/definitions.xml (added)
+++ incubator/tuscany/java/sca/modules/binding-sca/src/main/resources/org/apache/tuscany/sca/binding/sca/definitions.xml Mon Mar 17 11:44:55 2008
@@ -0,0 +1,26 @@
+<?xml version="1.0" encoding="ASCII"?>
+<!--
+ * 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.    
+-->
+<sca:definitions xmlns="http://www.osoa.org/xmlns/sca/1.0"
+ 			targetNamespace="http://www.osoa.org/xmlns/sca/1.0"
+ 			xmlns:sca="http://www.osoa.org/xmlns/sca/1.0"
+ 			xmlns:tuscany="http://tuscany.apache.org/xmlns/sca/1.0">
+ 			
+	<sca:bindingType type="sca:binding.sca"  mayProvide="" alwaysProvides=""/>	 		
+ </sca:definitions>
\ No newline at end of file

Propchange: incubator/tuscany/java/sca/modules/binding-sca/src/main/resources/org/apache/tuscany/sca/binding/sca/definitions.xml
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: incubator/tuscany/java/sca/modules/binding-sca/src/main/resources/org/apache/tuscany/sca/binding/sca/definitions.xml
------------------------------------------------------------------------------
    svn:keywords = Rev Date

Propchange: incubator/tuscany/java/sca/modules/binding-sca/src/main/resources/org/apache/tuscany/sca/binding/sca/definitions.xml
------------------------------------------------------------------------------
    svn:mime-type = text/xml

Added: incubator/tuscany/java/sca/modules/binding-ws-axis2/src/main/java/org/apache/tuscany/sca/binding/ws/axis2/WSBindingDefinitionsProvider.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/binding-ws-axis2/src/main/java/org/apache/tuscany/sca/binding/ws/axis2/WSBindingDefinitionsProvider.java?rev=638020&view=auto
==============================================================================
--- incubator/tuscany/java/sca/modules/binding-ws-axis2/src/main/java/org/apache/tuscany/sca/binding/ws/axis2/WSBindingDefinitionsProvider.java (added)
+++ incubator/tuscany/java/sca/modules/binding-ws-axis2/src/main/java/org/apache/tuscany/sca/binding/ws/axis2/WSBindingDefinitionsProvider.java Mon Mar 17 11:44:55 2008
@@ -0,0 +1,58 @@
+/*
+ * 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 org.apache.tuscany.sca.binding.ws.axis2;
+
+import java.net.URI;
+import java.net.URL;
+
+import org.apache.tuscany.sca.contribution.processor.ExtensibleURLArtifactProcessor;
+import org.apache.tuscany.sca.contribution.processor.URLArtifactProcessor;
+import org.apache.tuscany.sca.contribution.processor.URLArtifactProcessorExtensionPoint;
+import org.apache.tuscany.sca.core.ExtensionPointRegistry;
+import org.apache.tuscany.sca.definitions.SCADefinitions;
+import org.apache.tuscany.sca.definitions.SCADefinitionsProvider;
+import org.apache.tuscany.sca.definitions.SCADefinitionsProviderException;
+
+/**
+ * Provider for Policy Intents and PolicySet definitions related to security
+ */
+public class WSBindingDefinitionsProvider implements SCADefinitionsProvider {
+    private String definitionsFile = "org/apache/tuscany/sca/binding/ws/axis2/definitions.xml";
+    URLArtifactProcessor urlArtifactProcessor = null;
+    
+    public WSBindingDefinitionsProvider(ExtensionPointRegistry registry) {
+        URLArtifactProcessorExtensionPoint documentProcessors = registry.getExtensionPoint(URLArtifactProcessorExtensionPoint.class);
+        urlArtifactProcessor = (URLArtifactProcessor)documentProcessors.getProcessor(SCADefinitions.class);
+    }
+
+    public SCADefinitions getSCADefinition() throws SCADefinitionsProviderException {
+        URL defintionsFileUrl = getClass().getClassLoader().getResource(definitionsFile);
+        Object scaDefn = null;
+        try {
+            URI uri = new URI(definitionsFile);
+            return (SCADefinitions)urlArtifactProcessor.read(null, 
+                                                             uri, 
+                                                             defintionsFileUrl);
+        } catch ( Exception e ) {
+            throw new SCADefinitionsProviderException(e);
+        }
+    }
+
+}

Propchange: incubator/tuscany/java/sca/modules/binding-ws-axis2/src/main/java/org/apache/tuscany/sca/binding/ws/axis2/WSBindingDefinitionsProvider.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: incubator/tuscany/java/sca/modules/binding-ws-axis2/src/main/java/org/apache/tuscany/sca/binding/ws/axis2/WSBindingDefinitionsProvider.java
------------------------------------------------------------------------------
    svn:keywords = Rev Date

Added: incubator/tuscany/java/sca/modules/binding-ws-axis2/src/main/resources/META-INF/services/org.apache.tuscany.sca.definitions.SCADefinitionsProvider
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/binding-ws-axis2/src/main/resources/META-INF/services/org.apache.tuscany.sca.definitions.SCADefinitionsProvider?rev=638020&view=auto
==============================================================================
--- incubator/tuscany/java/sca/modules/binding-ws-axis2/src/main/resources/META-INF/services/org.apache.tuscany.sca.definitions.SCADefinitionsProvider (added)
+++ incubator/tuscany/java/sca/modules/binding-ws-axis2/src/main/resources/META-INF/services/org.apache.tuscany.sca.definitions.SCADefinitionsProvider Mon Mar 17 11:44:55 2008
@@ -0,0 +1,19 @@
+# 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. 
+
+# Implementation class for SCA Definitions Providers
+org.apache.tuscany.sca.binding.ws.axis2.WSBindingDefinitionsProvider
\ No newline at end of file

Modified: incubator/tuscany/java/sca/modules/definitions/pom.xml
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/definitions/pom.xml?rev=638020&r1=638019&r2=638020&view=diff
==============================================================================
--- incubator/tuscany/java/sca/modules/definitions/pom.xml (original)
+++ incubator/tuscany/java/sca/modules/definitions/pom.xml Mon Mar 17 11:44:55 2008
@@ -40,6 +40,12 @@
             <artifactId>tuscany-policy</artifactId>
             <version>1.2-incubating-SNAPSHOT</version>
         </dependency>
+
+	<dependency>
+            <groupId>org.apache.tuscany.sca</groupId>
+            <artifactId>tuscany-core-spi</artifactId>
+            <version>1.2-incubating-SNAPSHOT</version>
+        </dependency>
         
         <dependency>
             <groupId>org.apache.tuscany.sca</groupId>

Added: incubator/tuscany/java/sca/modules/definitions/src/main/java/org/apache/tuscany/sca/definitions/SCADefinitionsProvider.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/definitions/src/main/java/org/apache/tuscany/sca/definitions/SCADefinitionsProvider.java?rev=638020&view=auto
==============================================================================
--- incubator/tuscany/java/sca/modules/definitions/src/main/java/org/apache/tuscany/sca/definitions/SCADefinitionsProvider.java (added)
+++ incubator/tuscany/java/sca/modules/definitions/src/main/java/org/apache/tuscany/sca/definitions/SCADefinitionsProvider.java Mon Mar 17 11:44:55 2008
@@ -0,0 +1,31 @@
+/*
+ * 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 org.apache.tuscany.sca.definitions;
+
+import org.apache.tuscany.sca.definitions.SCADefinitions;
+
+/**
+ * Models a provider of SCA Definitions.  Typically SCA Definitions providers 
+ * may either load a definitions.xml file or create the SCA Definitions model
+ * programmatically.
+ */
+public interface SCADefinitionsProvider {
+    SCADefinitions getSCADefinition() throws SCADefinitionsProviderException ;
+}

Propchange: incubator/tuscany/java/sca/modules/definitions/src/main/java/org/apache/tuscany/sca/definitions/SCADefinitionsProvider.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: incubator/tuscany/java/sca/modules/definitions/src/main/java/org/apache/tuscany/sca/definitions/SCADefinitionsProvider.java
------------------------------------------------------------------------------
    svn:keywords = Rev Date

Added: incubator/tuscany/java/sca/modules/definitions/src/main/java/org/apache/tuscany/sca/definitions/SCADefinitionsProviderException.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/definitions/src/main/java/org/apache/tuscany/sca/definitions/SCADefinitionsProviderException.java?rev=638020&view=auto
==============================================================================
--- incubator/tuscany/java/sca/modules/definitions/src/main/java/org/apache/tuscany/sca/definitions/SCADefinitionsProviderException.java (added)
+++ incubator/tuscany/java/sca/modules/definitions/src/main/java/org/apache/tuscany/sca/definitions/SCADefinitionsProviderException.java Mon Mar 17 11:44:55 2008
@@ -0,0 +1,30 @@
+/*
+ * 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 org.apache.tuscany.sca.definitions;
+
+/**
+ * @version $Rev$ $Date$
+ */
+public class SCADefinitionsProviderException extends Exception {
+   
+    public SCADefinitionsProviderException(Throwable e) {
+        super(e);
+    }
+}

Propchange: incubator/tuscany/java/sca/modules/definitions/src/main/java/org/apache/tuscany/sca/definitions/SCADefinitionsProviderException.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: incubator/tuscany/java/sca/modules/definitions/src/main/java/org/apache/tuscany/sca/definitions/SCADefinitionsProviderException.java
------------------------------------------------------------------------------
    svn:keywords = Rev Date

Added: incubator/tuscany/java/sca/modules/definitions/src/main/java/org/apache/tuscany/sca/definitions/SCADefinitionsProviderExtensionPoint.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/definitions/src/main/java/org/apache/tuscany/sca/definitions/SCADefinitionsProviderExtensionPoint.java?rev=638020&view=auto
==============================================================================
--- incubator/tuscany/java/sca/modules/definitions/src/main/java/org/apache/tuscany/sca/definitions/SCADefinitionsProviderExtensionPoint.java (added)
+++ incubator/tuscany/java/sca/modules/definitions/src/main/java/org/apache/tuscany/sca/definitions/SCADefinitionsProviderExtensionPoint.java Mon Mar 17 11:44:55 2008
@@ -0,0 +1,33 @@
+/*
+ * 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 org.apache.tuscany.sca.definitions;
+
+import java.util.List;
+
+/**
+ * An extension point for SCA Definitions Providers.  SCA Definition providers, load SCA Definitions
+ * items that are being specifically contributed by the module that hosts the provider in question.
+ */
+public interface SCADefinitionsProviderExtensionPoint {
+    
+    void addSCADefinitionsProvider(SCADefinitionsProvider provider);
+    void removeSCADefinitionsProvider(SCADefinitionsProvider provider);
+    List<SCADefinitionsProvider> getSCADefinitionsProviders();
+}

Propchange: incubator/tuscany/java/sca/modules/definitions/src/main/java/org/apache/tuscany/sca/definitions/SCADefinitionsProviderExtensionPoint.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: incubator/tuscany/java/sca/modules/definitions/src/main/java/org/apache/tuscany/sca/definitions/SCADefinitionsProviderExtensionPoint.java
------------------------------------------------------------------------------
    svn:keywords = Rev Date

Added: incubator/tuscany/java/sca/modules/definitions/src/main/java/org/apache/tuscany/sca/definitions/impl/DefaultSCADefinitionsProviderExtensionPoint.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/definitions/src/main/java/org/apache/tuscany/sca/definitions/impl/DefaultSCADefinitionsProviderExtensionPoint.java?rev=638020&view=auto
==============================================================================
--- incubator/tuscany/java/sca/modules/definitions/src/main/java/org/apache/tuscany/sca/definitions/impl/DefaultSCADefinitionsProviderExtensionPoint.java (added)
+++ incubator/tuscany/java/sca/modules/definitions/src/main/java/org/apache/tuscany/sca/definitions/impl/DefaultSCADefinitionsProviderExtensionPoint.java Mon Mar 17 11:44:55 2008
@@ -0,0 +1,91 @@
+/*
+ * 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 org.apache.tuscany.sca.definitions.impl;
+
+import java.lang.reflect.Constructor;
+import java.util.ArrayList;
+import java.util.List;
+import java.util.Set;
+
+import org.apache.tuscany.sca.core.ExtensionPointRegistry;
+import org.apache.tuscany.sca.definitions.SCADefinitionsProvider;
+import org.apache.tuscany.sca.definitions.SCADefinitionsProviderExtensionPoint;
+import org.apache.tuscany.sca.extensibility.ServiceDeclaration;
+import org.apache.tuscany.sca.extensibility.ServiceDiscovery;
+
+/**
+ * Concrete Implementation for the SCADefinitionsProviderExtensionPoint
+ */
+public class DefaultSCADefinitionsProviderExtensionPoint implements
+    SCADefinitionsProviderExtensionPoint {
+
+    private ExtensionPointRegistry extensionPointRegistry = null;
+    
+    private List<SCADefinitionsProvider> scaDefnsProviders = new ArrayList<SCADefinitionsProvider>();
+    
+    public DefaultSCADefinitionsProviderExtensionPoint(ExtensionPointRegistry extnPtReg) {
+        this.extensionPointRegistry = extnPtReg;
+    }
+
+    public void addSCADefinitionsProvider(SCADefinitionsProvider provider) {
+        scaDefnsProviders.add(provider);
+    }
+
+    public void removeSCADefinitionsProvider(SCADefinitionsProvider provider) {
+        scaDefnsProviders.remove(provider);
+    }
+
+    public List<SCADefinitionsProvider> getSCADefinitionsProviders() {
+        if (scaDefnsProviders.isEmpty()) {
+            loadProviders();
+        }
+        return scaDefnsProviders;
+    }
+
+    private void loadProviders() {
+        // Get the provider service declarations
+        Set<ServiceDeclaration> defnProviderDecls;
+        SCADefinitionsProvider aProvider = null;
+        Class providerClass = null;
+        Constructor constructor = null;
+
+        try {
+            defnProviderDecls =
+                ServiceDiscovery.getInstance().getServiceDeclarations(SCADefinitionsProvider.class);
+    
+            for (ServiceDeclaration aDefnProviderDecl : defnProviderDecls) {
+                providerClass = aDefnProviderDecl.loadClass();
+            
+                try {
+                    constructor = providerClass.getConstructor();
+                    aProvider = (SCADefinitionsProvider)constructor.newInstance();
+                } catch (NoSuchMethodException e1) {
+                        constructor = providerClass.getConstructor(ExtensionPointRegistry.class);
+                        aProvider = (SCADefinitionsProvider)constructor.newInstance(extensionPointRegistry);
+                } 
+                
+                scaDefnsProviders.add(aProvider);
+            }
+        } catch (Exception e) {
+            throw new RuntimeException(e);
+        }
+
+    }
+}

Propchange: incubator/tuscany/java/sca/modules/definitions/src/main/java/org/apache/tuscany/sca/definitions/impl/DefaultSCADefinitionsProviderExtensionPoint.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: incubator/tuscany/java/sca/modules/definitions/src/main/java/org/apache/tuscany/sca/definitions/impl/DefaultSCADefinitionsProviderExtensionPoint.java
------------------------------------------------------------------------------
    svn:keywords = Rev Date

Modified: incubator/tuscany/java/sca/modules/definitions/src/main/java/org/apache/tuscany/sca/definitions/util/SCADefinitionsUtil.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/definitions/src/main/java/org/apache/tuscany/sca/definitions/util/SCADefinitionsUtil.java?rev=638020&r1=638019&r2=638020&view=diff
==============================================================================
--- incubator/tuscany/java/sca/modules/definitions/src/main/java/org/apache/tuscany/sca/definitions/util/SCADefinitionsUtil.java (original)
+++ incubator/tuscany/java/sca/modules/definitions/src/main/java/org/apache/tuscany/sca/definitions/util/SCADefinitionsUtil.java Mon Mar 17 11:44:55 2008
@@ -19,6 +19,7 @@
 
 package org.apache.tuscany.sca.definitions.util;
 
+import java.net.URI;
 import java.util.HashMap;
 import java.util.Map;
 
@@ -70,6 +71,14 @@
         target.getPolicySets().addAll(source.getPolicySets());
         target.getBindingTypes().addAll(source.getBindingTypes());
         target.getImplementationTypes().addAll(source.getImplementationTypes());
+    }
+    
+    public static boolean isSCADefnsFile(URI uri) {
+        int index = uri.toString().lastIndexOf("/");
+
+        index = (index != -1) ? index + 1 : 0;
+
+        return uri.toString().substring(index).equals("definitions.xml");
     }
 
 }

Added: incubator/tuscany/java/sca/modules/definitions/src/main/resources/META-INF/services/org.apache.tuscany.sca.definitions.SCADefinitionsProviderExtensionPoint
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/definitions/src/main/resources/META-INF/services/org.apache.tuscany.sca.definitions.SCADefinitionsProviderExtensionPoint?rev=638020&view=auto
==============================================================================
--- incubator/tuscany/java/sca/modules/definitions/src/main/resources/META-INF/services/org.apache.tuscany.sca.definitions.SCADefinitionsProviderExtensionPoint (added)
+++ incubator/tuscany/java/sca/modules/definitions/src/main/resources/META-INF/services/org.apache.tuscany.sca.definitions.SCADefinitionsProviderExtensionPoint Mon Mar 17 11:44:55 2008
@@ -0,0 +1,19 @@
+# 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. 
+
+org.apache.tuscany.sca.definitions.impl.DefaultSCADefinitionsProviderExtensionPoint
+										
\ No newline at end of file

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=638020&r1=638019&r2=638020&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 Mon Mar 17 11:44:55 2008
@@ -53,6 +53,8 @@
 import org.apache.tuscany.sca.core.invocation.ProxyFactory;
 import org.apache.tuscany.sca.core.scope.ScopeRegistry;
 import org.apache.tuscany.sca.definitions.SCADefinitions;
+import org.apache.tuscany.sca.definitions.SCADefinitionsProvider;
+import org.apache.tuscany.sca.definitions.SCADefinitionsProviderExtensionPoint;
 import org.apache.tuscany.sca.definitions.impl.SCADefinitionsImpl;
 import org.apache.tuscany.sca.definitions.util.SCADefinitionsUtil;
 import org.apache.tuscany.sca.definitions.xml.SCADefinitionsDocumentProcessor;
@@ -63,8 +65,11 @@
 import org.apache.tuscany.sca.invocation.MessageFactory;
 import org.apache.tuscany.sca.policy.DefaultIntentAttachPointTypeFactory;
 import org.apache.tuscany.sca.policy.DefaultPolicyFactory;
+import org.apache.tuscany.sca.policy.Intent;
+import org.apache.tuscany.sca.policy.IntentAttachPointType;
 import org.apache.tuscany.sca.policy.IntentAttachPointTypeFactory;
 import org.apache.tuscany.sca.policy.PolicyFactory;
+import org.apache.tuscany.sca.policy.PolicySet;
 import org.apache.tuscany.sca.work.WorkScheduler;
 
 public class ReallySmallRuntime {
@@ -234,7 +239,44 @@
     }
     
     private void  loadSCADefinitions(ExtensionPointRegistry registry) throws ActivationException {
-        URLArtifactProcessorExtensionPoint documentProcessors = registry.getExtensionPoint(URLArtifactProcessorExtensionPoint.class);
+        try {
+            URLArtifactProcessorExtensionPoint documentProcessors = registry.getExtensionPoint(URLArtifactProcessorExtensionPoint.class);
+            SCADefinitionsDocumentProcessor definitionsProcessor = (SCADefinitionsDocumentProcessor)documentProcessors.getProcessor(SCADefinitions.class);
+            SCADefinitionsProviderExtensionPoint scaDefnProviders = registry.getExtensionPoint(SCADefinitionsProviderExtensionPoint.class);
+            
+            SCADefinitions systemSCADefinitions = new SCADefinitionsImpl();
+            SCADefinitions aSCADefn = null;
+            for ( SCADefinitionsProvider aProvider : scaDefnProviders.getSCADefinitionsProviders() ) {
+               aSCADefn = aProvider.getSCADefinition(); 
+               SCADefinitionsUtil.aggregateSCADefinitions(aSCADefn, systemSCADefinitions);
+            }
+            
+            //we cannot expect that providers will add the intents and policysets into the resolver
+            //so we do this here explicitly
+            for ( Intent intent : systemSCADefinitions.getPolicyIntents() ) {
+                definitionsProcessor.getSCADefinitionsResolver().addModel(intent);
+            }
+            
+            for ( PolicySet policySet : systemSCADefinitions.getPolicySets() ) {
+                definitionsProcessor.getSCADefinitionsResolver().addModel(policySet);
+            }
+            
+            for ( IntentAttachPointType attachPoinType : systemSCADefinitions.getBindingTypes() ) {
+                definitionsProcessor.getSCADefinitionsResolver().addModel(attachPoinType);
+            }
+            
+            for ( IntentAttachPointType attachPoinType : systemSCADefinitions.getImplementationTypes() ) {
+                definitionsProcessor.getSCADefinitionsResolver().addModel(attachPoinType);
+            }
+            
+            //now that all system sca definitions have been read, lets resolve them rightaway
+            definitionsProcessor.resolve(systemSCADefinitions, 
+                                         definitionsProcessor.getSCADefinitionsResolver());
+        } catch ( Exception e ) {
+            throw new ActivationException(e);
+        }
+        
+        /*URLArtifactProcessorExtensionPoint documentProcessors = registry.getExtensionPoint(URLArtifactProcessorExtensionPoint.class);
         SCADefinitionsDocumentProcessor definitionsProcessor = (SCADefinitionsDocumentProcessor)documentProcessors.getProcessor(SCADefinitions.class);
         
         try {
@@ -257,7 +299,7 @@
             throw new ActivationException(e);
         } catch ( IOException e ) {
             throw new ActivationException(e);
-        }
+        }*/
     }
     
     @SuppressWarnings("unchecked")

Added: incubator/tuscany/java/sca/modules/policy-logging/src/main/java/org/apache/tuscany/sca/policy/logging/LoggingPolicyDefinitionsProvider.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/policy-logging/src/main/java/org/apache/tuscany/sca/policy/logging/LoggingPolicyDefinitionsProvider.java?rev=638020&view=auto
==============================================================================
--- incubator/tuscany/java/sca/modules/policy-logging/src/main/java/org/apache/tuscany/sca/policy/logging/LoggingPolicyDefinitionsProvider.java (added)
+++ incubator/tuscany/java/sca/modules/policy-logging/src/main/java/org/apache/tuscany/sca/policy/logging/LoggingPolicyDefinitionsProvider.java Mon Mar 17 11:44:55 2008
@@ -0,0 +1,58 @@
+/*
+ * 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 org.apache.tuscany.sca.policy.logging;
+
+import java.net.URI;
+import java.net.URL;
+
+import org.apache.tuscany.sca.contribution.processor.ExtensibleURLArtifactProcessor;
+import org.apache.tuscany.sca.contribution.processor.URLArtifactProcessor;
+import org.apache.tuscany.sca.contribution.processor.URLArtifactProcessorExtensionPoint;
+import org.apache.tuscany.sca.core.ExtensionPointRegistry;
+import org.apache.tuscany.sca.definitions.SCADefinitions;
+import org.apache.tuscany.sca.definitions.SCADefinitionsProvider;
+import org.apache.tuscany.sca.definitions.SCADefinitionsProviderException;
+
+/**
+ * Provider for Policy Intents and PolicySet definitions related to security
+ */
+public class LoggingPolicyDefinitionsProvider implements SCADefinitionsProvider {
+    private String definitionsFile = "org/apache/tuscany/sca/policy/logging/definitions.xml";
+    URLArtifactProcessor urlArtifactProcessor = null;
+    
+    public LoggingPolicyDefinitionsProvider(ExtensionPointRegistry registry) {
+        URLArtifactProcessorExtensionPoint documentProcessors = registry.getExtensionPoint(URLArtifactProcessorExtensionPoint.class);
+        urlArtifactProcessor = (URLArtifactProcessor)documentProcessors.getProcessor(SCADefinitions.class);
+    }
+
+    public SCADefinitions getSCADefinition() throws SCADefinitionsProviderException {
+        URL defintionsFileUrl = getClass().getClassLoader().getResource(definitionsFile);
+        Object scaDefn = null;
+        try {
+            URI uri = new URI(definitionsFile);
+            return (SCADefinitions)urlArtifactProcessor.read(null, 
+                                                             uri, 
+                                                             defintionsFileUrl);
+        } catch ( Exception e ) {
+            throw new SCADefinitionsProviderException(e);
+        }
+    }
+
+}

Propchange: incubator/tuscany/java/sca/modules/policy-logging/src/main/java/org/apache/tuscany/sca/policy/logging/LoggingPolicyDefinitionsProvider.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: incubator/tuscany/java/sca/modules/policy-logging/src/main/java/org/apache/tuscany/sca/policy/logging/LoggingPolicyDefinitionsProvider.java
------------------------------------------------------------------------------
    svn:keywords = Rev Date

Added: incubator/tuscany/java/sca/modules/policy-logging/src/main/resources/META-INF/services/org.apache.tuscany.sca.definitions.SCADefinitionsProvider
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/policy-logging/src/main/resources/META-INF/services/org.apache.tuscany.sca.definitions.SCADefinitionsProvider?rev=638020&view=auto
==============================================================================
--- incubator/tuscany/java/sca/modules/policy-logging/src/main/resources/META-INF/services/org.apache.tuscany.sca.definitions.SCADefinitionsProvider (added)
+++ incubator/tuscany/java/sca/modules/policy-logging/src/main/resources/META-INF/services/org.apache.tuscany.sca.definitions.SCADefinitionsProvider Mon Mar 17 11:44:55 2008
@@ -0,0 +1,19 @@
+# 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. 
+
+# Implementation class for SCA Definitions Providers
+org.apache.tuscany.sca.policy.logging.LoggingPolicyDefinitionsProvider
\ No newline at end of file

Added: incubator/tuscany/java/sca/modules/policy-security/src/main/java/org/apache/tuscany/sca/policy/security/SecurityPolicyDefinitionsProvider.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/policy-security/src/main/java/org/apache/tuscany/sca/policy/security/SecurityPolicyDefinitionsProvider.java?rev=638020&view=auto
==============================================================================
--- incubator/tuscany/java/sca/modules/policy-security/src/main/java/org/apache/tuscany/sca/policy/security/SecurityPolicyDefinitionsProvider.java (added)
+++ incubator/tuscany/java/sca/modules/policy-security/src/main/java/org/apache/tuscany/sca/policy/security/SecurityPolicyDefinitionsProvider.java Mon Mar 17 11:44:55 2008
@@ -0,0 +1,58 @@
+/*
+ * 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 org.apache.tuscany.sca.policy.security;
+
+import java.net.URI;
+import java.net.URL;
+
+import org.apache.tuscany.sca.contribution.processor.ExtensibleURLArtifactProcessor;
+import org.apache.tuscany.sca.contribution.processor.URLArtifactProcessor;
+import org.apache.tuscany.sca.contribution.processor.URLArtifactProcessorExtensionPoint;
+import org.apache.tuscany.sca.core.ExtensionPointRegistry;
+import org.apache.tuscany.sca.definitions.SCADefinitions;
+import org.apache.tuscany.sca.definitions.SCADefinitionsProvider;
+import org.apache.tuscany.sca.definitions.SCADefinitionsProviderException;
+
+/**
+ * Provider for Policy Intents and PolicySet definitions related to security
+ */
+public class SecurityPolicyDefinitionsProvider implements SCADefinitionsProvider {
+    private String definitionsFile = "org/apache/tuscany/sca/policy/security/definitions.xml";
+    URLArtifactProcessor urlArtifactProcessor = null;
+    
+    public SecurityPolicyDefinitionsProvider(ExtensionPointRegistry registry) {
+        URLArtifactProcessorExtensionPoint documentProcessors = registry.getExtensionPoint(URLArtifactProcessorExtensionPoint.class);
+        urlArtifactProcessor = (URLArtifactProcessor)documentProcessors.getProcessor(SCADefinitions.class);
+    }
+
+    public SCADefinitions getSCADefinition() throws SCADefinitionsProviderException {
+        URL defintionsFileUrl = getClass().getClassLoader().getResource(definitionsFile);
+        Object scaDefn = null;
+        try {
+            URI uri = new URI(definitionsFile);
+            return (SCADefinitions)urlArtifactProcessor.read(null, 
+                                                             uri, 
+                                                             defintionsFileUrl);
+        } catch ( Exception e ) {
+            throw new SCADefinitionsProviderException(e);
+        }
+    }
+
+}

Propchange: incubator/tuscany/java/sca/modules/policy-security/src/main/java/org/apache/tuscany/sca/policy/security/SecurityPolicyDefinitionsProvider.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: incubator/tuscany/java/sca/modules/policy-security/src/main/java/org/apache/tuscany/sca/policy/security/SecurityPolicyDefinitionsProvider.java
------------------------------------------------------------------------------
    svn:keywords = Rev Date

Added: incubator/tuscany/java/sca/modules/policy-security/src/main/resources/META-INF/services/org.apache.tuscany.sca.definitions.SCADefinitionsProvider
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/policy-security/src/main/resources/META-INF/services/org.apache.tuscany.sca.definitions.SCADefinitionsProvider?rev=638020&view=auto
==============================================================================
--- incubator/tuscany/java/sca/modules/policy-security/src/main/resources/META-INF/services/org.apache.tuscany.sca.definitions.SCADefinitionsProvider (added)
+++ incubator/tuscany/java/sca/modules/policy-security/src/main/resources/META-INF/services/org.apache.tuscany.sca.definitions.SCADefinitionsProvider Mon Mar 17 11:44:55 2008
@@ -0,0 +1,19 @@
+# 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. 
+
+# Implementation class for SCA Definitions Providers
+org.apache.tuscany.sca.policy.security.SecurityPolicyDefinitionsProvider
\ No newline at end of file

Added: incubator/tuscany/java/sca/modules/policy-security/src/main/resources/org/apache/tuscany/sca/policy/security/definitions.xml
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/policy-security/src/main/resources/org/apache/tuscany/sca/policy/security/definitions.xml?rev=638020&view=auto
==============================================================================
--- incubator/tuscany/java/sca/modules/policy-security/src/main/resources/org/apache/tuscany/sca/policy/security/definitions.xml (added)
+++ incubator/tuscany/java/sca/modules/policy-security/src/main/resources/org/apache/tuscany/sca/policy/security/definitions.xml Mon Mar 17 11:44:55 2008
@@ -0,0 +1,48 @@
+<?xml version="1.0" encoding="ASCII"?>
+<!--
+ * 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.    
+-->
+<definitions xmlns="http://www.osoa.org/xmlns/sca/1.0"
+ 			targetNamespace="http://www.osoa.org/xmlns/sca/1.0"
+ 			xmlns:sca="http://www.osoa.org/xmlns/sca/1.0"
+ 			xmlns:tuscany="http://tuscany.apache.org/xmlns/sca/1.0">
+
+	<!-- Policy Intents Defined by the SCA Runtime -->
+	<intent name="authentication" 
+	 		constrains="sca:binding">
+		<description>
+			Specifying this intent on references requires necessary authentication information
+			to be sent along with outgoing messages. Specifying this intent on service requires
+			incoming messages to be authenticated
+		</description>
+	</intent>
+	
+	<intent name="confidentiality" 
+	 		constrains="sca:binding">
+		<description>
+			Specifying this intent requires message exchanged to be encrypted
+		</description>
+	</intent>
+	
+	<intent name="integrity" 
+	 		constrains="sca:binding">
+		<description>
+			Specifying this intent requires message exchanged to be signed
+		</description>
+	</intent>
+</definitions>
\ No newline at end of file

Propchange: incubator/tuscany/java/sca/modules/policy-security/src/main/resources/org/apache/tuscany/sca/policy/security/definitions.xml
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: incubator/tuscany/java/sca/modules/policy-security/src/main/resources/org/apache/tuscany/sca/policy/security/definitions.xml
------------------------------------------------------------------------------
    svn:keywords = Rev Date

Propchange: incubator/tuscany/java/sca/modules/policy-security/src/main/resources/org/apache/tuscany/sca/policy/security/definitions.xml
------------------------------------------------------------------------------
    svn:mime-type = text/xml

Added: incubator/tuscany/java/sca/modules/policy-transaction/src/main/java/org/apache/tuscany/sca/policy/transaction/TransactionPolicyDefinitionsProvider.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/policy-transaction/src/main/java/org/apache/tuscany/sca/policy/transaction/TransactionPolicyDefinitionsProvider.java?rev=638020&view=auto
==============================================================================
--- incubator/tuscany/java/sca/modules/policy-transaction/src/main/java/org/apache/tuscany/sca/policy/transaction/TransactionPolicyDefinitionsProvider.java (added)
+++ incubator/tuscany/java/sca/modules/policy-transaction/src/main/java/org/apache/tuscany/sca/policy/transaction/TransactionPolicyDefinitionsProvider.java Mon Mar 17 11:44:55 2008
@@ -0,0 +1,78 @@
+/*
+ * 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 org.apache.tuscany.sca.policy.transaction;
+
+import java.net.URI;
+import java.net.URL;
+
+import org.apache.tuscany.sca.contribution.processor.ExtensibleURLArtifactProcessor;
+import org.apache.tuscany.sca.contribution.processor.URLArtifactProcessor;
+import org.apache.tuscany.sca.contribution.processor.URLArtifactProcessorExtensionPoint;
+import org.apache.tuscany.sca.core.ExtensionPointRegistry;
+import org.apache.tuscany.sca.definitions.SCADefinitions;
+import org.apache.tuscany.sca.definitions.SCADefinitionsProvider;
+import org.apache.tuscany.sca.definitions.SCADefinitionsProviderException;
+import org.apache.tuscany.sca.definitions.util.SCADefinitionsUtil;
+
+/**
+ * Provider for Policy Intents and PolicySet definitions related to security
+ */
+public class TransactionPolicyDefinitionsProvider implements SCADefinitionsProvider {
+    private String scaDefinitionsFile = "org/apache/tuscany/sca/policy/transaction/definitions.xml";
+    private String tuscanyDefinitionsFile = "org/apache/tuscany/sca/policy/transaction/tuscany_definitions.xml";
+    URLArtifactProcessor urlArtifactProcessor = null;
+    
+    public TransactionPolicyDefinitionsProvider(ExtensionPointRegistry registry) {
+        URLArtifactProcessorExtensionPoint documentProcessors = registry.getExtensionPoint(URLArtifactProcessorExtensionPoint.class);
+        urlArtifactProcessor = (URLArtifactProcessor)documentProcessors.getProcessor(SCADefinitions.class);
+    }
+
+    public SCADefinitions getSCADefinition() throws SCADefinitionsProviderException {
+        
+        Object scaDefn = null;
+        try {
+            SCADefinitions scaTransactionPolicyDefns = null;
+            SCADefinitions tuscanyTransactionPolicyDefns = null;
+            
+            URI uri = new URI(scaDefinitionsFile);
+            URL defintionsFileUrl = getClass().getClassLoader().getResource(scaDefinitionsFile);
+            scaTransactionPolicyDefns = (SCADefinitions)urlArtifactProcessor.read(null, 
+                                                                               uri, 
+                                                                               defintionsFileUrl);
+            
+            uri = new URI(tuscanyDefinitionsFile);
+            defintionsFileUrl = getClass().getClassLoader().getResource(tuscanyDefinitionsFile);
+            tuscanyTransactionPolicyDefns = (SCADefinitions)urlArtifactProcessor.read(null, 
+                                                                                  uri, 
+                                                                                  defintionsFileUrl);
+            
+            
+            SCADefinitionsUtil.aggregateSCADefinitions(tuscanyTransactionPolicyDefns, 
+                                                       scaTransactionPolicyDefns);
+            
+            
+            
+            return scaTransactionPolicyDefns;
+        } catch ( Exception e ) {
+            throw new SCADefinitionsProviderException(e);
+        }
+    }
+
+}

Propchange: incubator/tuscany/java/sca/modules/policy-transaction/src/main/java/org/apache/tuscany/sca/policy/transaction/TransactionPolicyDefinitionsProvider.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: incubator/tuscany/java/sca/modules/policy-transaction/src/main/java/org/apache/tuscany/sca/policy/transaction/TransactionPolicyDefinitionsProvider.java
------------------------------------------------------------------------------
    svn:keywords = Rev Date

Added: incubator/tuscany/java/sca/modules/policy-transaction/src/main/resources/META-INF/services/org.apache.tuscany.sca.definitions.SCADefinitionsProvider
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/policy-transaction/src/main/resources/META-INF/services/org.apache.tuscany.sca.definitions.SCADefinitionsProvider?rev=638020&view=auto
==============================================================================
--- incubator/tuscany/java/sca/modules/policy-transaction/src/main/resources/META-INF/services/org.apache.tuscany.sca.definitions.SCADefinitionsProvider (added)
+++ incubator/tuscany/java/sca/modules/policy-transaction/src/main/resources/META-INF/services/org.apache.tuscany.sca.definitions.SCADefinitionsProvider Mon Mar 17 11:44:55 2008
@@ -0,0 +1,19 @@
+# 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. 
+
+# Implementation class for SCA Definitions Providers
+org.apache.tuscany.sca.policy.transaction.TransactionPolicyDefinitionsProvider
\ No newline at end of file

Copied: incubator/tuscany/java/sca/modules/policy-transaction/src/main/resources/org/apache/tuscany/sca/policy/transaction/definitions.xml (from r637581, incubator/tuscany/java/sca/modules/policy-transaction/src/main/resources/META-INF/services/definitions.xml)
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/policy-transaction/src/main/resources/org/apache/tuscany/sca/policy/transaction/definitions.xml?p2=incubator/tuscany/java/sca/modules/policy-transaction/src/main/resources/org/apache/tuscany/sca/policy/transaction/definitions.xml&p1=incubator/tuscany/java/sca/modules/policy-transaction/src/main/resources/META-INF/services/definitions.xml&r1=637581&r2=638020&rev=638020&view=diff
==============================================================================
--- incubator/tuscany/java/sca/modules/policy-transaction/src/main/resources/META-INF/services/definitions.xml (original)
+++ incubator/tuscany/java/sca/modules/policy-transaction/src/main/resources/org/apache/tuscany/sca/policy/transaction/definitions.xml Mon Mar 17 11:44:55 2008
@@ -20,38 +20,6 @@
 <definitions xmlns="http://www.osoa.org/xmlns/sca/1.0" targetNamespace="http://www.osoa.org/xmlns/sca/1.0"
     xmlns:sca="http://www.osoa.org/xmlns/sca/1.0" xmlns:tuscany="http://tuscany.apache.org/xmlns/sca/1.0">
 
-    <policySet name="tuscany:ManagedTransactionPolicySet" provides="managedTransaction" appliesTo="implementation">
-        <intentMap provides="managedTransaction" default="global">
-            <qualifier name="global">
-                <tuscany:transactionPolicy transactionTimeout="1200" action="REQUIRE_GLOBAL" />
-            </qualifier>
-            <qualifier name="local">
-                <tuscany:transactionPolicy transactionTimeout="1200" action="REQUIRE_LOCAL" />
-            </qualifier>
-        </intentMap>
-    </policySet>
-
-    <policySet name="tuscany:NoManagedTransactionPolicySet" provides="noManagedTransaction"
-        appliesTo="implementation">
-        <tuscany:transactionPolicy action="REQUIRE_NONE" />
-    </policySet>
-
-    <policySet name="tuscany:PropagatesTransactionPolicySet" provides="propagatesTransaction" appliesTo="binding">
-        <tuscany:transactionPolicy action="PROPAGATE" />
-    </policySet>
-
-    <policySet name="tuscany:SuspendsTransactionPolicySet" provides="suspendsTransaction" appliesTo="binding">
-        <tuscany:transactionPolicy action="SUSPEND" />
-    </policySet>
-
-    <policySet name="tuscany:TransactedOneWayPolicySet" provides="transactedOneWay" appliesTo="binding">
-        <tuscany:transactionPolicy action="PROPAGATE" />
-    </policySet>
-
-    <policySet name="tuscany:ImmediateOneWayPolicySet" provides="immediateOneWay" appliesTo="binding">
-        <tuscany:transactionPolicy action="SUSPEND" />
-    </policySet>
-
     <intent name="managedTransaction" constrains="implementation">
         <description>Used to indicate the transaction environment desired by a component implementation.</description>
     </intent>
@@ -95,5 +63,4 @@
             messages immediately, regardless of any transaction under which the sending/receiving component runs.
         </description>
     </intent>
-
 </definitions>

Added: incubator/tuscany/java/sca/modules/policy-transaction/src/main/resources/org/apache/tuscany/sca/policy/transaction/tuscany_definitions.xml
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/policy-transaction/src/main/resources/org/apache/tuscany/sca/policy/transaction/tuscany_definitions.xml?rev=638020&view=auto
==============================================================================
--- incubator/tuscany/java/sca/modules/policy-transaction/src/main/resources/org/apache/tuscany/sca/policy/transaction/tuscany_definitions.xml (added)
+++ incubator/tuscany/java/sca/modules/policy-transaction/src/main/resources/org/apache/tuscany/sca/policy/transaction/tuscany_definitions.xml Mon Mar 17 11:44:55 2008
@@ -0,0 +1,54 @@
+<?xml version="1.0" encoding="ASCII"?>
+<!--
+    * 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.    
+-->
+<definitions xmlns="http://www.osoa.org/xmlns/sca/1.0" targetNamespace="http://tuscany.apache.org/xmlns/sca/1.0"
+    xmlns:sca="http://www.osoa.org/xmlns/sca/1.0" xmlns:tuscany="http://tuscany.apache.org/xmlns/sca/1.0">
+
+    <policySet name="ManagedTransactionPolicySet" provides="managedTransaction" appliesTo="implementation">
+        <intentMap provides="managedTransaction" default="global">
+            <qualifier name="global">
+                <tuscany:transactionPolicy transactionTimeout="1200" action="REQUIRE_GLOBAL" />
+            </qualifier>
+            <qualifier name="local">
+                <tuscany:transactionPolicy transactionTimeout="1200" action="REQUIRE_LOCAL" />
+            </qualifier>
+        </intentMap>
+    </policySet>
+
+    <policySet name="NoManagedTransactionPolicySet" provides="noManagedTransaction"
+        appliesTo="implementation">
+        <tuscany:transactionPolicy action="REQUIRE_NONE" />
+    </policySet>
+
+    <policySet name="PropagatesTransactionPolicySet" provides="propagatesTransaction" appliesTo="binding">
+        <tuscany:transactionPolicy action="PROPAGATE" />
+    </policySet>
+
+    <policySet name="SuspendsTransactionPolicySet" provides="suspendsTransaction" appliesTo="binding">
+        <tuscany:transactionPolicy action="SUSPEND" />
+    </policySet>
+
+    <policySet name="TransactedOneWayPolicySet" provides="transactedOneWay" appliesTo="binding">
+        <tuscany:transactionPolicy action="PROPAGATE" />
+    </policySet>
+
+    <policySet name="ImmediateOneWayPolicySet" provides="immediateOneWay" appliesTo="binding">
+        <tuscany:transactionPolicy action="SUSPEND" />
+    </policySet>
+</definitions>
\ No newline at end of file

Propchange: incubator/tuscany/java/sca/modules/policy-transaction/src/main/resources/org/apache/tuscany/sca/policy/transaction/tuscany_definitions.xml
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: incubator/tuscany/java/sca/modules/policy-transaction/src/main/resources/org/apache/tuscany/sca/policy/transaction/tuscany_definitions.xml
------------------------------------------------------------------------------
    svn:keywords = Rev Date

Propchange: incubator/tuscany/java/sca/modules/policy-transaction/src/main/resources/org/apache/tuscany/sca/policy/transaction/tuscany_definitions.xml
------------------------------------------------------------------------------
    svn:mime-type = text/xml

Modified: incubator/tuscany/java/sca/modules/policy-transaction/src/test/java/org/apache/tuscany/sca/policy/transaction/PolicyReadTestCase.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/policy-transaction/src/test/java/org/apache/tuscany/sca/policy/transaction/PolicyReadTestCase.java?rev=638020&r1=638019&r2=638020&view=diff
==============================================================================
--- incubator/tuscany/java/sca/modules/policy-transaction/src/test/java/org/apache/tuscany/sca/policy/transaction/PolicyReadTestCase.java (original)
+++ incubator/tuscany/java/sca/modules/policy-transaction/src/test/java/org/apache/tuscany/sca/policy/transaction/PolicyReadTestCase.java Mon Mar 17 11:44:55 2008
@@ -44,7 +44,7 @@
 
         TransactionPolicyProcessor processor = new TransactionPolicyProcessor(null);
 
-        URL url = getClass().getResource("/META-INF/services/definitions.xml");
+        URL url = getClass().getResource("/org/apache/tuscany/sca/policy/transaction/tuscany_definitions.xml");
         XMLInputFactory inputFactory = XMLInputFactory.newInstance();
 
         InputStream urlStream = url.openStream();

Modified: incubator/tuscany/java/sca/modules/policy-xml/src/main/java/org/apache/tuscany/sca/policy/xml/BindingTypeProcessor.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/policy-xml/src/main/java/org/apache/tuscany/sca/policy/xml/BindingTypeProcessor.java?rev=638020&r1=638019&r2=638020&view=diff
==============================================================================
--- incubator/tuscany/java/sca/modules/policy-xml/src/main/java/org/apache/tuscany/sca/policy/xml/BindingTypeProcessor.java (original)
+++ incubator/tuscany/java/sca/modules/policy-xml/src/main/java/org/apache/tuscany/sca/policy/xml/BindingTypeProcessor.java Mon Mar 17 11:44:55 2008
@@ -22,8 +22,12 @@
 import javax.xml.namespace.QName;
 
 import org.apache.tuscany.sca.contribution.processor.StAXArtifactProcessor;
+import org.apache.tuscany.sca.contribution.resolver.ModelResolver;
+import org.apache.tuscany.sca.contribution.service.ContributionResolveException;
+import org.apache.tuscany.sca.policy.IntentAttachPointType;
 import org.apache.tuscany.sca.policy.IntentAttachPointTypeFactory;
 import org.apache.tuscany.sca.policy.PolicyFactory;
+import org.apache.tuscany.sca.policy.impl.BindingTypeImpl;
 
 
 /* 
@@ -37,5 +41,16 @@
 
     public QName getArtifactType() {
         return BINDING_TYPE_QNAME;
+    }
+
+    @Override
+    public IntentAttachPointType resolveExtensionType(IntentAttachPointType extnType, ModelResolver resolver) throws ContributionResolveException {
+        if ( extnType instanceof BindingTypeImpl ) {
+            BindingTypeImpl bindingType = (BindingTypeImpl)extnType;
+            return resolver.resolveModel(BindingTypeImpl.class, bindingType);
+        } else {
+            return extnType;
+        }
+        
     }
 }

Modified: incubator/tuscany/java/sca/modules/policy-xml/src/main/java/org/apache/tuscany/sca/policy/xml/ImplementationTypeProcessor.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/policy-xml/src/main/java/org/apache/tuscany/sca/policy/xml/ImplementationTypeProcessor.java?rev=638020&r1=638019&r2=638020&view=diff
==============================================================================
--- incubator/tuscany/java/sca/modules/policy-xml/src/main/java/org/apache/tuscany/sca/policy/xml/ImplementationTypeProcessor.java (original)
+++ incubator/tuscany/java/sca/modules/policy-xml/src/main/java/org/apache/tuscany/sca/policy/xml/ImplementationTypeProcessor.java Mon Mar 17 11:44:55 2008
@@ -22,8 +22,13 @@
 import javax.xml.namespace.QName;
 
 import org.apache.tuscany.sca.contribution.processor.StAXArtifactProcessor;
+import org.apache.tuscany.sca.contribution.resolver.ModelResolver;
+import org.apache.tuscany.sca.contribution.service.ContributionResolveException;
+import org.apache.tuscany.sca.policy.IntentAttachPointType;
 import org.apache.tuscany.sca.policy.IntentAttachPointTypeFactory;
 import org.apache.tuscany.sca.policy.PolicyFactory;
+import org.apache.tuscany.sca.policy.impl.BindingTypeImpl;
+import org.apache.tuscany.sca.policy.impl.ImplementationTypeImpl;
 
 
 /* 
@@ -37,5 +42,16 @@
 
     public QName getArtifactType() {
         return IMPLEMENTATION_TYPE_QNAME;
+    }
+    
+    @Override
+    public IntentAttachPointType resolveExtensionType(IntentAttachPointType extnType, ModelResolver resolver) throws ContributionResolveException {
+        if ( extnType instanceof ImplementationTypeImpl ) {
+            ImplementationTypeImpl implType = (ImplementationTypeImpl)extnType;
+            return resolver.resolveModel(ImplementationTypeImpl.class, implType);
+        } else {
+            return extnType;
+        }
+        
     }
 }

Modified: incubator/tuscany/java/sca/modules/policy-xml/src/main/java/org/apache/tuscany/sca/policy/xml/IntentAttachPointTypeProcessor.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/modules/policy-xml/src/main/java/org/apache/tuscany/sca/policy/xml/IntentAttachPointTypeProcessor.java?rev=638020&r1=638019&r2=638020&view=diff
==============================================================================
--- incubator/tuscany/java/sca/modules/policy-xml/src/main/java/org/apache/tuscany/sca/policy/xml/IntentAttachPointTypeProcessor.java (original)
+++ incubator/tuscany/java/sca/modules/policy-xml/src/main/java/org/apache/tuscany/sca/policy/xml/IntentAttachPointTypeProcessor.java Mon Mar 17 11:44:55 2008
@@ -50,6 +50,7 @@
     private IntentAttachPointTypeFactory attachPointTypeFactory;
     private PolicyFactory policyFactory; 
     
+    public abstract IntentAttachPointType resolveExtensionType(IntentAttachPointType extnType, ModelResolver resolver) throws ContributionResolveException;
 
     public IntentAttachPointTypeProcessor(PolicyFactory policyFactory, IntentAttachPointTypeFactory attachPointTypeFactory, StAXArtifactProcessor<Object> extensionProcessor) {
         this.policyFactory = policyFactory;
@@ -63,6 +64,7 @@
             if ( type.getLocalPart().startsWith(BINDING) ) {
                 IntentAttachPointType bindingType = attachPointTypeFactory.createBindingType();
                 bindingType.setName(type);
+                bindingType.setUnresolved(false);
                 
                 readAlwaysProvidedIntents(bindingType, reader);
                 readMayProvideIntents(bindingType, reader);
@@ -70,6 +72,7 @@
             } else if ( type.getLocalPart().startsWith(IMPLEMENTATION) ) {
                 IntentAttachPointType implType = attachPointTypeFactory.createImplementationType();
                 implType.setName(type);
+                implType.setUnresolved(false);
                 
                 readAlwaysProvidedIntents(implType, reader);
                 readMayProvideIntents(implType, reader);
@@ -151,19 +154,14 @@
         }
     }
     
-    private void resolveExtensionType(IntentAttachPointType extnType, ModelResolver resolver) throws ContributionResolveException {
-        //FIXME: need to resolve the binding and implementations across the assembly model
-        extnType.setUnresolved(false);
-    }
-    
     public void resolve(IntentAttachPointType extnType, ModelResolver resolver) throws ContributionResolveException {
         resolveAlwaysProvidedIntents(extnType, resolver);
         resolveMayProvideIntents(extnType, resolver);
         resolveExtensionType(extnType, resolver);
         
-        if ( !extnType.isUnresolved() ) {
+/*        if ( !extnType.isUnresolved() ) {
              resolver.addModel(extnType);
-        }
+        }*/
     }
 
     private void resolveAlwaysProvidedIntents(IntentAttachPointType extensionType,



---------------------------------------------------------------------
To unsubscribe, e-mail: tuscany-commits-unsubscribe@ws.apache.org
For additional commands, e-mail: tuscany-commits-help@ws.apache.org