Hi,

This commit breaks the build on Linux. It changed the following files and caused a conflict against [1]:


tuscany/java/sca/modules/binding-ws-axis2/src/test/resources/org/apache/tuscany/sca/binding/ws/axis2/itests/policy/wspolicy/WSSecurityAuthentication.composite

tuscany/java/sca/modules/binding-ws-axis2/src/test/resources/org/apache/tuscany/sca/binding/ws/axis2/itests/policy/wspolicy/definitions.xml

It seems that all definitions.xml in the contribution will be used for resolving the policySets. As a result, depending on which file is loaded first, the org.apache.tuscany.sca.binding.ws.axis2.itests.policy.wspolicy.WSSecurityAuthenticationTestCase may fail.

Thanks,
Raymond

[1] /tuscany-binding-ws-axis2/src/test/resources/org/apache/tuscany/sca/binding/ws/axis2/itests/policy/configparams/definitions.xml


--------------------------------------------------
From: <[EMAIL PROTECTED]>
Sent: Tuesday, July 08, 2008 4:04 PM
To: <[EMAIL PROTECTED]>
Subject: svn commit: r675018 - in /tuscany/java/sca: itest/policy/src/main/resources/ itest/policy/src/main/resources/META-INF/services/ itest/policy/src/test/java/org/apache/tuscany/sca/itest/ itest/validation/src/main/resources/impl/osgi/MissingComponentTypeF...

Author: lresende
Date: Tue Jul  8 16:04:16 2008
New Revision: 675018

URL: http://svn.apache.org/viewvc?rev=675018&view=rev
Log:
TUSCANY-2354 - Applying a slightly modified version of Ram's patch to get a sucessful build

Added:

tuscany/java/sca/itest/policy/src/main/resources/META-INF/services/org.apache.tuscany.sca.contribution.processor.StAXArtifactProcessor

tuscany/java/sca/itest/policy/src/test/java/org/apache/tuscany/sca/itest/Policy.java (with props)

tuscany/java/sca/itest/policy/src/test/java/org/apache/tuscany/sca/itest/TestPolicyProcessor.java (with props)
Modified:
   tuscany/java/sca/itest/policy/src/main/resources/definitions.xml

tuscany/java/sca/itest/validation/src/main/resources/impl/osgi/MissingComponentTypeFile/OSGiTestService.jar

tuscany/java/sca/itest/validation/src/main/resources/impl/osgi/PropertyShouldSpecifySR/OSGiTestService.jar

tuscany/java/sca/modules/binding-ws-axis2/src/test/resources/org/apache/tuscany/sca/binding/ws/axis2/itests/policy/mixed/definitions.xml

tuscany/java/sca/modules/binding-ws-axis2/src/test/resources/org/apache/tuscany/sca/binding/ws/axis2/itests/policy/wspolicy/WSSecurityAuthentication.composite

tuscany/java/sca/modules/binding-ws-axis2/src/test/resources/org/apache/tuscany/sca/binding/ws/axis2/itests/policy/wspolicy/definitions.xml

tuscany/java/sca/modules/definitions-xml/src/main/java/org/apache/tuscany/sca/definitions/xml/SCADefinitionsProcessor.java

tuscany/java/sca/modules/definitions-xml/src/test/resources/org/apache/tuscany/sca/definitions/test_definitions.xml

tuscany/java/sca/modules/policy-xml/src/main/java/org/apache/tuscany/sca/policy/xml/PolicyIntentProcessor.java

tuscany/java/sca/modules/policy-xml/src/main/java/org/apache/tuscany/sca/policy/xml/PolicySetProcessor.java

tuscany/java/sca/modules/policy-xml/src/main/resources/policy-xml-validation-messages.properties

tuscany/java/sca/modules/policy-xml/src/test/java/org/apache/tuscany/sca/policy/xml/ReadDocumentTestCase.java

tuscany/java/sca/modules/policy-xml/src/test/resources/org/apache/tuscany/sca/policy/xml/test_definitions.xml

tuscany/java/sca/samples/binding-echo-extension/src/test/resources/definitions.xml
   tuscany/java/sca/tools/eclipse/plugins/core/.classpath

Added: tuscany/java/sca/itest/policy/src/main/resources/META-INF/services/org.apache.tuscany.sca.contribution.processor.StAXArtifactProcessor URL: http://svn.apache.org/viewvc/tuscany/java/sca/itest/policy/src/main/resources/META-INF/services/org.apache.tuscany.sca.contribution.processor.StAXArtifactProcessor?rev=675018&view=auto
==============================================================================
--- tuscany/java/sca/itest/policy/src/main/resources/META-INF/services/org.apache.tuscany.sca.contribution.processor.StAXArtifactProcessor (added) +++ tuscany/java/sca/itest/policy/src/main/resources/META-INF/services/org.apache.tuscany.sca.contribution.processor.StAXArtifactProcessor Tue Jul 8 16:04:16 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 the artifact processor extension
+org.apache.tuscany.sca.itest.TestPolicyProcessor;qname=http://schemas.xmlsoap.org/ws/2004/09/policy#Policy,model=org.apache.tuscany.sca.itest.Policy

Modified: tuscany/java/sca/itest/policy/src/main/resources/definitions.xml
URL: http://svn.apache.org/viewvc/tuscany/java/sca/itest/policy/src/main/resources/definitions.xml?rev=675018&r1=675017&r2=675018&view=diff
==============================================================================
--- tuscany/java/sca/itest/policy/src/main/resources/definitions.xml (original) +++ tuscany/java/sca/itest/policy/src/main/resources/definitions.xml Tue Jul 8 16:04:16 2008
@@ -44,8 +44,7 @@
    </sca:intent>

    <sca:intent name="TestIntent_1.Qualifier_1" />
-
-
+    <sca:intent name="TestIntent_4.Qualifier_1" />

    <!-- PolicySets -->
<sca:policySet name="TestPolicySet_1_implementation" provides="ip:TestIntent_1"

Added: tuscany/java/sca/itest/policy/src/test/java/org/apache/tuscany/sca/itest/Policy.java URL: http://svn.apache.org/viewvc/tuscany/java/sca/itest/policy/src/test/java/org/apache/tuscany/sca/itest/Policy.java?rev=675018&view=auto
==============================================================================
--- tuscany/java/sca/itest/policy/src/test/java/org/apache/tuscany/sca/itest/Policy.java (added) +++ tuscany/java/sca/itest/policy/src/test/java/org/apache/tuscany/sca/itest/Policy.java Tue Jul 8 16:04:16 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.itest;
+
+import javax.xml.namespace.QName;
+
+/**
+ * Interface that will abstract various types of policy specifications
+ * and attachments for example WS-Policy
+ *
+ * @version $Rev$ $Date$
+ */
+public interface Policy {
+    QName getSchemaName();
+    void setUnresolved(boolean unresolved);
+    boolean isUnresolved();
+}

Propchange: tuscany/java/sca/itest/policy/src/test/java/org/apache/tuscany/sca/itest/Policy.java
------------------------------------------------------------------------------
   svn:eol-style = native

Propchange: tuscany/java/sca/itest/policy/src/test/java/org/apache/tuscany/sca/itest/Policy.java
------------------------------------------------------------------------------
   svn:keywords = Rev Date

Added: tuscany/java/sca/itest/policy/src/test/java/org/apache/tuscany/sca/itest/TestPolicyProcessor.java URL: http://svn.apache.org/viewvc/tuscany/java/sca/itest/policy/src/test/java/org/apache/tuscany/sca/itest/TestPolicyProcessor.java?rev=675018&view=auto
==============================================================================
--- tuscany/java/sca/itest/policy/src/test/java/org/apache/tuscany/sca/itest/TestPolicyProcessor.java (added) +++ tuscany/java/sca/itest/policy/src/test/java/org/apache/tuscany/sca/itest/TestPolicyProcessor.java Tue Jul 8 16:04:16 2008
@@ -0,0 +1,82 @@
+/*
+ * 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.itest;
+
+import javax.xml.namespace.QName;
+import javax.xml.stream.XMLStreamException;
+import javax.xml.stream.XMLStreamReader;
+import javax.xml.stream.XMLStreamWriter;
+
+import org.apache.tuscany.sca.contribution.ModelFactoryExtensionPoint;
+import org.apache.tuscany.sca.contribution.processor.StAXArtifactProcessor;
+import org.apache.tuscany.sca.contribution.resolver.ModelResolver;
+import org.apache.tuscany.sca.contribution.service.ContributionReadException; +import org.apache.tuscany.sca.contribution.service.ContributionResolveException; +import org.apache.tuscany.sca.contribution.service.ContributionWriteException;
+import org.apache.tuscany.sca.monitor.Monitor;
+import org.apache.tuscany.sca.policy.Policy;
+import org.apache.tuscany.sca.policy.PolicyFactory;
+
+/**
+ * A PolicyProcessor used for testing.
+ *
+ * @version $Rev$ $Date$
+ */
+public class TestPolicyProcessor implements StAXArtifactProcessor<Policy> {
+
+ public TestPolicyProcessor(ModelFactoryExtensionPoint modelFactories, Monitor monitor) {
+
+    }
+
+    public QName getArtifactType() {
+ return new QName("http://schemas.xmlsoap.org/ws/2004/09/policy";, "Policy");
+    }
+
+ public Policy read(XMLStreamReader arg0) throws ContributionReadException, XMLStreamException {
+        return new MockPolicyImplOne();
+    }
+
+ public void write(Policy arg0, XMLStreamWriter arg1) throws ContributionWriteException, + XMLStreamException {
+    }
+
+    public Class<Policy> getModelType() {
+        // TODO Auto-generated method stub
+        return Policy.class;
+    }
+
+ public void resolve(Policy arg0, ModelResolver arg1) throws ContributionResolveException {
+
+    }
+
+
+    public class MockPolicyImplOne implements Policy {
+        public QName getSchemaName() {
+ return new QName("http://schemas.xmlsoap.org/ws/2004/09/policy";, "Policy");
+        }
+
+        public boolean isUnresolved() {
+            return false;
+        }
+
+        public void setUnresolved(boolean unresolved) {
+        }
+
+    }
+}

Propchange: tuscany/java/sca/itest/policy/src/test/java/org/apache/tuscany/sca/itest/TestPolicyProcessor.java
------------------------------------------------------------------------------
   svn:eol-style = native

Propchange: tuscany/java/sca/itest/policy/src/test/java/org/apache/tuscany/sca/itest/TestPolicyProcessor.java
------------------------------------------------------------------------------
   svn:keywords = Rev Date

Modified: tuscany/java/sca/itest/validation/src/main/resources/impl/osgi/MissingComponentTypeFile/OSGiTestService.jar URL: http://svn.apache.org/viewvc/tuscany/java/sca/itest/validation/src/main/resources/impl/osgi/MissingComponentTypeFile/OSGiTestService.jar?rev=675018&r1=675017&r2=675018&view=diff
==============================================================================
Binary files - no diff available.

Modified: tuscany/java/sca/itest/validation/src/main/resources/impl/osgi/PropertyShouldSpecifySR/OSGiTestService.jar URL: http://svn.apache.org/viewvc/tuscany/java/sca/itest/validation/src/main/resources/impl/osgi/PropertyShouldSpecifySR/OSGiTestService.jar?rev=675018&r1=675017&r2=675018&view=diff
==============================================================================
Binary files - no diff available.

Modified: tuscany/java/sca/modules/binding-ws-axis2/src/test/resources/org/apache/tuscany/sca/binding/ws/axis2/itests/policy/mixed/definitions.xml URL: http://svn.apache.org/viewvc/tuscany/java/sca/modules/binding-ws-axis2/src/test/resources/org/apache/tuscany/sca/binding/ws/axis2/itests/policy/mixed/definitions.xml?rev=675018&r1=675017&r2=675018&view=diff
==============================================================================
--- tuscany/java/sca/modules/binding-ws-axis2/src/test/resources/org/apache/tuscany/sca/binding/ws/axis2/itests/policy/mixed/definitions.xml (original) +++ tuscany/java/sca/modules/binding-ws-axis2/src/test/resources/org/apache/tuscany/sca/binding/ws/axis2/itests/policy/mixed/definitions.xml Tue Jul 8 16:04:16 2008
@@ -23,15 +23,6 @@
 xmlns:tuscany="http://tuscany.apache.org/xmlns/sca/1.0";>

 <!-- WS Security POLICY SETS -->
- <!-- A policyset that uses WS Policy -->
- <sca:intent name="wsAuthentication"
- constrains="sca:binding.ws">
- <description>
- Communitcation thro this binding required Authentication.
- </description>
- </sca:intent>
-
- <!-- WS Security POLICY SETS -->
  <sca:policySet name="wsAuthenticationPolicy"
 provides="sca:authentication"
 appliesTo="//sca:binding.ws"

Modified: tuscany/java/sca/modules/binding-ws-axis2/src/test/resources/org/apache/tuscany/sca/binding/ws/axis2/itests/policy/wspolicy/WSSecurityAuthentication.composite URL: http://svn.apache.org/viewvc/tuscany/java/sca/modules/binding-ws-axis2/src/test/resources/org/apache/tuscany/sca/binding/ws/axis2/itests/policy/wspolicy/WSSecurityAuthentication.composite?rev=675018&r1=675017&r2=675018&view=diff
==============================================================================
--- tuscany/java/sca/modules/binding-ws-axis2/src/test/resources/org/apache/tuscany/sca/binding/ws/axis2/itests/policy/wspolicy/WSSecurityAuthentication.composite (original) +++ tuscany/java/sca/modules/binding-ws-axis2/src/test/resources/org/apache/tuscany/sca/binding/ws/axis2/itests/policy/wspolicy/WSSecurityAuthentication.composite Tue Jul 8 16:04:16 2008
@@ -27,7 +27,7 @@
so for this composite the service is: http://localhost:8085/myExplicitURI
    -->

- <service name="helloWorld" promote="HelloWorldService" policySets="tuscany:wsSecurityPolicyForAuthentication"> + <service name="helloWorld" promote="HelloWorldService" policySets="tuscany:wsAuthenticationPolicy"> <interface.wsdl interface="http://helloworld-om-uri#wsdl.interface(HelloWorld)" /> <binding.ws wsdlElement="http://helloworld-om-uri#wsdl.port(HelloWorldService/HelloWorldSoapPort)" />
    </service>
@@ -41,7 +41,7 @@
        <reference name="helloWorldWS" />
    </component>

- <reference name="helloWorldWS" promote="HelloWorldComponent/helloWorldWS" policySets="tuscany:wsSecurityPolicyForAuthentication"> + <reference name="helloWorldWS" promote="HelloWorldComponent/helloWorldWS" policySets="tuscany:wsAuthenticationPolicy"> <interface.wsdl interface="http://helloworld-om-uri#wsdl.interface(HelloWorld)" /> <binding.ws wsdlElement="http://helloworld-om-uri#wsdl.binding(HelloWorldSoapBinding)"
                    uri="http://localhost:8085/myExplicitURI"/>

Modified: tuscany/java/sca/modules/binding-ws-axis2/src/test/resources/org/apache/tuscany/sca/binding/ws/axis2/itests/policy/wspolicy/definitions.xml URL: http://svn.apache.org/viewvc/tuscany/java/sca/modules/binding-ws-axis2/src/test/resources/org/apache/tuscany/sca/binding/ws/axis2/itests/policy/wspolicy/definitions.xml?rev=675018&r1=675017&r2=675018&view=diff
==============================================================================
--- tuscany/java/sca/modules/binding-ws-axis2/src/test/resources/org/apache/tuscany/sca/binding/ws/axis2/itests/policy/wspolicy/definitions.xml (original) +++ tuscany/java/sca/modules/binding-ws-axis2/src/test/resources/org/apache/tuscany/sca/binding/ws/axis2/itests/policy/wspolicy/definitions.xml Tue Jul 8 16:04:16 2008
@@ -21,20 +21,12 @@
 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";>
-
- <sca:intent name="wsAuthentication"
- constrains="sca:binding.ws">
- <description>
- Communitcation thro this binding required Authentication.
- </description>
- </sca:intent>

 <!-- WS Security POLICY SETS -->
 <!-- A policyset that uses WS Policy -->
- <sca:policySet name="wsSecurityPolicyForAuthentication"
+ <sca:policySet name="wsAuthenticationPolicy"
 provides="sca:authentication"
- appliesTo="sca:binding.ws"
- >
+ appliesTo="sca:binding.ws">
 <wsp:Policy wsu:Id="UTOverTransport"

xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd";
 xmlns:wsp="http://schemas.xmlsoap.org/ws/2004/09/policy";>

Modified: tuscany/java/sca/modules/definitions-xml/src/main/java/org/apache/tuscany/sca/definitions/xml/SCADefinitionsProcessor.java URL: http://svn.apache.org/viewvc/tuscany/java/sca/modules/definitions-xml/src/main/java/org/apache/tuscany/sca/definitions/xml/SCADefinitionsProcessor.java?rev=675018&r1=675017&r2=675018&view=diff
==============================================================================
--- tuscany/java/sca/modules/definitions-xml/src/main/java/org/apache/tuscany/sca/definitions/xml/SCADefinitionsProcessor.java (original) +++ tuscany/java/sca/modules/definitions-xml/src/main/java/org/apache/tuscany/sca/definitions/xml/SCADefinitionsProcessor.java Tue Jul 8 16:04:16 2008
@@ -22,6 +22,9 @@
import static javax.xml.stream.XMLStreamConstants.END_ELEMENT;
import static javax.xml.stream.XMLStreamConstants.START_ELEMENT;

+import java.util.List;
+import java.util.ArrayList;
+
import javax.xml.namespace.QName;
import javax.xml.stream.XMLStreamConstants;
import javax.xml.stream.XMLStreamException;
@@ -40,6 +43,7 @@
import org.apache.tuscany.sca.policy.Intent;
import org.apache.tuscany.sca.policy.IntentAttachPointType;
import org.apache.tuscany.sca.policy.PolicySet;
+import org.apache.tuscany.sca.policy.ProfileIntent;
import org.apache.tuscany.sca.policy.QualifiedIntent;
import org.apache.tuscany.sca.monitor.Monitor;

@@ -173,12 +177,28 @@
// start by adding all of the top level artifacts into the resolver as there // are many cross artifact references in a definitions file and we don't want
        // to be dependent on the order things appear
+
+    List<Intent> simpleIntents = new ArrayList<Intent>();
+    List<ProfileIntent> profileIntents = new ArrayList<ProfileIntent>();
+ List<QualifiedIntent> qualifiedIntents = new ArrayList<QualifiedIntent>();
+        List<PolicySet> simplePolicySets = new ArrayList<PolicySet>();
+        List<PolicySet> referredPolicySets = new ArrayList<PolicySet>();

        for (Intent policyIntent : scaDefns.getPolicyIntents()) {
-            resolver.addModel(policyIntent);
-        }
+        if (policyIntent instanceof ProfileIntent)
+            profileIntents.add((ProfileIntent)policyIntent);
+        else if (policyIntent instanceof QualifiedIntent)
+            qualifiedIntents.add((QualifiedIntent)policyIntent);
+        else simpleIntents.add(policyIntent);
+
+        resolver.addModel(policyIntent);
+        }

        for (PolicySet policySet : scaDefns.getPolicySets()) {
+            if (policySet.getReferencedPolicySets().isEmpty())
+                simplePolicySets.add(policySet);
+            else referredPolicySets.add(policySet);
+
            resolver.addModel(policySet);
        }

@@ -193,15 +213,20 @@
        // now resolve everything to ensure that any references between
        // artifacts are satisfied

- for (int count = 0, size = scaDefns.getPolicyIntents().size(); count < size; count++) {
-            Intent intent = scaDefns.getPolicyIntents().get(count);
-            extensionProcessor.resolve(intent, resolver);
-        }
+        for (Intent policyIntent : simpleIntents)
+            extensionProcessor.resolve(policyIntent, resolver);

- for (int count = 0, size = scaDefns.getPolicySets().size(); count < size; count++) {
-            PolicySet policySet = scaDefns.getPolicySets().get(count);
+        for (ProfileIntent policyIntent : profileIntents)
+            extensionProcessor.resolve(policyIntent, resolver);
+
+        for (QualifiedIntent policyIntent : qualifiedIntents)
+            extensionProcessor.resolve(policyIntent, resolver);
+
+        for (PolicySet policySet : simplePolicySets)
            extensionProcessor.resolve(policySet, resolver);
-        }
+
+        for (PolicySet policySet : referredPolicySets)
+            extensionProcessor.resolve(policySet, resolver);

for (int count = 0, size = scaDefns.getBindingTypes().size(); count < size; count++) { IntentAttachPointType bindingType = scaDefns.getBindingTypes().get(count);

Modified: tuscany/java/sca/modules/definitions-xml/src/test/resources/org/apache/tuscany/sca/definitions/test_definitions.xml URL: http://svn.apache.org/viewvc/tuscany/java/sca/modules/definitions-xml/src/test/resources/org/apache/tuscany/sca/definitions/test_definitions.xml?rev=675018&r1=675017&r2=675018&view=diff
==============================================================================
--- tuscany/java/sca/modules/definitions-xml/src/test/resources/org/apache/tuscany/sca/definitions/test_definitions.xml (original) +++ tuscany/java/sca/modules/definitions-xml/src/test/resources/org/apache/tuscany/sca/definitions/test_definitions.xml Tue Jul 8 16:04:16 2008
@@ -30,8 +30,7 @@

<!-- Intents and Policysets to assume targetnamespace -->
<intent name="TestIntentOne"
- constrains="sca:binding"
- >
+ constrains="sca:binding">
 <description>
 Test Intent
 </description>
@@ -39,7 +38,7 @@

  <intent name="TestIntentTwo"
 constrains="sca:binding"
- requires="TestIntentOne">
+ requires="test:TestIntentOne">
 <description>
 Protect messages from unauthorized reading or modification
 </description>

Modified: tuscany/java/sca/modules/policy-xml/src/main/java/org/apache/tuscany/sca/policy/xml/PolicyIntentProcessor.java URL: http://svn.apache.org/viewvc/tuscany/java/sca/modules/policy-xml/src/main/java/org/apache/tuscany/sca/policy/xml/PolicyIntentProcessor.java?rev=675018&r1=675017&r2=675018&view=diff
==============================================================================
--- tuscany/java/sca/modules/policy-xml/src/main/java/org/apache/tuscany/sca/policy/xml/PolicyIntentProcessor.java (original) +++ tuscany/java/sca/modules/policy-xml/src/main/java/org/apache/tuscany/sca/policy/xml/PolicyIntentProcessor.java Tue Jul 8 16:04:16 2008
@@ -247,10 +247,24 @@
for (Intent requiredIntent : policyIntent.getRequiredIntents()) {
                if (requiredIntent.isUnresolved()) {
Intent resolvedRequiredIntent = resolver.resolveModel(Intent.class, requiredIntent);
-                    if (resolvedRequiredIntent != null) {
+ // At this point, when the required intent is not resolved, it does not mean + // its undeclared, chances are that their dependency are not resolved yet.
+                    // Lets try to resolve them first.
+                    if (resolvedRequiredIntent.isUnresolved()) {
+ if (resolvedRequiredIntent instanceof ProfileIntent) { + if ((((ProfileIntent)resolvedRequiredIntent).getRequiredIntents()).contains(policyIntent)) { + error("CyclicReferenceFound", resolver, requiredIntent, policyIntent);
+                                return;
+                            }
+ resolveDependent(resolvedRequiredIntent, resolver);
+                        }
+                    }
+
+                    if (!resolvedRequiredIntent.isUnresolved()) {
                        requiredIntents.add(resolvedRequiredIntent);
                    } else {
error("RequiredIntentNotFound", resolver, requiredIntent, policyIntent);
+                    return;
//throw new ContributionResolveException("Required Intent - " + requiredIntent //+ " not found for ProfileIntent " + policyIntent);
                    }
@@ -270,19 +284,36 @@
Intent qualifiableIntent = policyIntent.getQualifiableIntent();
            if (qualifiableIntent.isUnresolved()) {
Intent resolvedQualifiableIntent = resolver.resolveModel(Intent.class, qualifiableIntent);
-
-                if (resolvedQualifiableIntent != null) {
+ // At this point, when the qualifiable intent is not resolved, it does not mean + // its undeclared, chances are that their dependency are not resolved yet.
+                // Lets try to resolve them first.
+                if (resolvedQualifiableIntent.isUnresolved()) {
+ if (resolvedQualifiableIntent instanceof QualifiedIntent) { + resolveDependent(resolvedQualifiableIntent, resolver);
+                    }
+                }
+
+                if (!resolvedQualifiableIntent.isUnresolved()) {

policyIntent.setQualifiableIntent(resolvedQualifiableIntent);
                } else {
error("QualifiableIntentNotFound", resolver, qualifiableIntent, policyIntent); //throw new ContributionResolveException("Qualifiable Intent - " + qualifiableIntent //+ " not found for QualifiedIntent " + policyIntent);
-                }
-
+                }
            }
        }
    }

+ public void resolveDependent(Intent policyIntent, ModelResolver resolver) throws ContributionResolveException {
+        if (policyIntent instanceof ProfileIntent)
+            resolveProfileIntent((ProfileIntent)policyIntent, resolver);
+
+        if (policyIntent instanceof QualifiedIntent)
+ resolveQualifiedIntent((QualifiedIntent)policyIntent, resolver);
+
+        resolveContrainedArtifacts(policyIntent, resolver);
+    }
+
public void resolve(T policyIntent, ModelResolver resolver) throws ContributionResolveException {
        if (policyIntent instanceof ProfileIntent) {
            resolveProfileIntent((ProfileIntent)policyIntent, resolver);
@@ -360,11 +391,12 @@
            List<Intent> excludedIntents = new ArrayList<Intent>();
for (Intent excludedIntent : policyIntent.getExcludedIntents()) {
                if (excludedIntent.isUnresolved()) {
- Intent resolvedExcludedIntent = resolver.resolveModel(Intent.class, excludedIntent);
-                    if (resolvedExcludedIntent != null) {
+ Intent resolvedExcludedIntent = resolver.resolveModel(Intent.class, excludedIntent);
+                    if (!resolvedExcludedIntent.isUnresolved()) {
                        excludedIntents.add(resolvedExcludedIntent);
                    } else {
error("ExcludedIntentNotFound", resolver, excludedIntent, policyIntent);
+                    return;
//throw new ContributionResolveException("Excluded Intent " + excludedIntent //+ " not found for intent " + policyIntent);
                    }

Modified: tuscany/java/sca/modules/policy-xml/src/main/java/org/apache/tuscany/sca/policy/xml/PolicySetProcessor.java URL: http://svn.apache.org/viewvc/tuscany/java/sca/modules/policy-xml/src/main/java/org/apache/tuscany/sca/policy/xml/PolicySetProcessor.java?rev=675018&r1=675017&r2=675018&view=diff
==============================================================================
--- tuscany/java/sca/modules/policy-xml/src/main/java/org/apache/tuscany/sca/policy/xml/PolicySetProcessor.java (original) +++ tuscany/java/sca/modules/policy-xml/src/main/java/org/apache/tuscany/sca/policy/xml/PolicySetProcessor.java Tue Jul 8 16:04:16 2008
@@ -371,13 +371,13 @@
            for (Intent providedIntent : policySet.getProvidedIntents()) {
                if (providedIntent.isUnresolved()) {
Intent resolvedProvidedIntent = resolver.resolveModel(Intent.class, providedIntent);
-                    if (resolvedProvidedIntent != null) {
+                    if (!resolvedProvidedIntent.isUnresolved()) {
                        providedIntents.add(resolvedProvidedIntent);
                    } else {
error("ProvidedIntentNotFound", policySet, providedIntent, policySet);
+                    return;
//throw new ContributionResolveException("Provided Intent - " + providedIntent //+ " not found for PolicySet " + policySet);
-
                    }
                } else {
                    providedIntents.add(providedIntent);
@@ -394,11 +394,11 @@
            Intent mappedIntent = entry.getKey();
            if (mappedIntent.isUnresolved()) {
Intent resolvedMappedIntent = resolver.resolveModel(Intent.class, mappedIntent);
-
-                if (resolvedMappedIntent != null) {
+                if (!resolvedMappedIntent.isUnresolved()) {
mappedPolicies.put(resolvedMappedIntent, entry.getValue());
                } else {
error("MappedIntentNotFound", policySet, mappedIntent, policySet);
+                return;
//throw new ContributionResolveException("Mapped Intent - " + mappedIntent //+ " not found for PolicySet " + policySet);
                }
@@ -417,10 +417,11 @@
for (PolicySet referredPolicySet : policySet.getReferencedPolicySets()) {
            if (referredPolicySet.isUnresolved()) {
PolicySet resolvedReferredPolicySet = resolver.resolveModel(PolicySet.class, referredPolicySet);
-                if (resolvedReferredPolicySet != null) {
+                if (!resolvedReferredPolicySet.isUnresolved()) {
                    referredPolicySets.add(resolvedReferredPolicySet);
                } else {
error("ReferredPolicySetNotFound", policySet, referredPolicySet, policySet);
+                return;
//throw new ContributionResolveException("Referred PolicySet - " + referredPolicySet //+ "not found for PolicySet - " + policySet);
                }
@@ -453,9 +454,9 @@
            //resolve the policy attachments
            resolvePolicies(policySet, resolver);

-            if ( !policySet.isUnresolved() ) {
+            /*if ( !policySet.isUnresolved() ) {
                 resolver.addModel(policySet);
-            }
+            }*/
        }
     }
 }

Modified: tuscany/java/sca/modules/policy-xml/src/main/resources/policy-xml-validation-messages.properties URL: http://svn.apache.org/viewvc/tuscany/java/sca/modules/policy-xml/src/main/resources/policy-xml-validation-messages.properties?rev=675018&r1=675017&r2=675018&view=diff
==============================================================================
--- tuscany/java/sca/modules/policy-xml/src/main/resources/policy-xml-validation-messages.properties (original) +++ tuscany/java/sca/modules/policy-xml/src/main/resources/policy-xml-validation-messages.properties Tue Jul 8 16:04:16 2008
@@ -33,4 +33,5 @@
RequiredAttributeMissing = Required attribute {0} missing from BindingType Definition AlwaysProvidedIntentNotFound = Always Provided Intent - {0} not found for ExtensionType {1} MayProvideIntentNotFound = May Provide Intent - {0} not found for ExtensionType {1}
-ContributionReadException = ContributionReadException occured due to: {0}
\ No newline at end of file
+ContributionReadException = ContributionReadException occured due to: {0}
+CyclicReferenceFound = Cyclic reference detected in required attributes of ProfileIntents {0} and {1}
\ No newline at end of file

Modified: tuscany/java/sca/modules/policy-xml/src/test/java/org/apache/tuscany/sca/policy/xml/ReadDocumentTestCase.java URL: http://svn.apache.org/viewvc/tuscany/java/sca/modules/policy-xml/src/test/java/org/apache/tuscany/sca/policy/xml/ReadDocumentTestCase.java?rev=675018&r1=675017&r2=675018&view=diff
==============================================================================
--- tuscany/java/sca/modules/policy-xml/src/test/java/org/apache/tuscany/sca/policy/xml/ReadDocumentTestCase.java (original) +++ tuscany/java/sca/modules/policy-xml/src/test/java/org/apache/tuscany/sca/policy/xml/ReadDocumentTestCase.java Tue Jul 8 16:04:16 2008
@@ -23,7 +23,9 @@

import java.io.InputStream;
import java.net.URL;
+import java.util.ArrayList;
import java.util.Hashtable;
+import java.util.List;
import java.util.Map;

import javax.xml.namespace.QName;
@@ -38,6 +40,10 @@
import org.apache.tuscany.sca.contribution.resolver.DefaultModelResolver;
import org.apache.tuscany.sca.contribution.resolver.ModelResolver;
import org.apache.tuscany.sca.core.DefaultExtensionPointRegistry;
+import org.apache.tuscany.sca.core.UtilityExtensionPoint;
+import org.apache.tuscany.sca.monitor.MonitorFactory;
+import org.apache.tuscany.sca.monitor.Monitor;
+import org.apache.tuscany.sca.monitor.impl.DefaultMonitorFactoryImpl;
import org.apache.tuscany.sca.policy.Intent;
import org.apache.tuscany.sca.policy.IntentAttachPointType;
import org.apache.tuscany.sca.policy.PolicySet;
@@ -55,7 +61,7 @@

    private ModelResolver resolver;
    private StAXArtifactProcessor<Object> staxProcessor;
-
+    private Monitor monitor;

private Map<QName, Intent> intentTable = new Hashtable<QName, Intent>(); private Map<QName, PolicySet> policySetTable = new Hashtable<QName, PolicySet>();
@@ -82,8 +88,15 @@
DefaultExtensionPointRegistry extensionPoints = new DefaultExtensionPointRegistry();
        resolver = new DefaultModelResolver();
        XMLInputFactory inputFactory = XMLInputFactory.newInstance();
+        // Create a monitor
+ UtilityExtensionPoint utilities = extensionPoints.getExtensionPoint(UtilityExtensionPoint.class);
+        MonitorFactory monitorFactory = new DefaultMonitorFactoryImpl();
+        if (monitorFactory != null) {
+            monitor = monitorFactory.createMonitor();
+            utilities.addUtility(monitorFactory);
+        }
StAXArtifactProcessorExtensionPoint staxProcessors = extensionPoints.getExtensionPoint(StAXArtifactProcessorExtensionPoint.class); - staxProcessor = new ExtensibleStAXArtifactProcessor(staxProcessors, inputFactory, null, null); + staxProcessor = new ExtensibleStAXArtifactProcessor(staxProcessors, inputFactory, null, monitor);
        staxProcessors.addArtifactProcessor(new TestPolicyProcessor());

        URL url = getClass().getResource("test_definitions.xml");
@@ -187,12 +200,35 @@

assertNull(javaImplType.getAlwaysProvidedIntents().get(0).getDescription());

assertNull(javaImplType.getMayProvideIntents().get(0).getDescription());

-        for ( Intent intent : intentTable.values() ) {
+        List<Intent> simpleIntents = new ArrayList<Intent>();
+ List<ProfileIntent> profileIntents = new ArrayList<ProfileIntent>(); + List<QualifiedIntent> qualifiedIntents = new ArrayList<QualifiedIntent>();
+
+        for (Intent intent : intentTable.values()) {
+            if (intent instanceof ProfileIntent)
+                profileIntents.add((ProfileIntent)intent);
+            else if (intent instanceof QualifiedIntent)
+                qualifiedIntents.add((QualifiedIntent)intent);
+            else simpleIntents.add(intent);
+        }
+
+        for (Intent intent : simpleIntents)
+            staxProcessor.resolve(intent, resolver);
+
+        for (ProfileIntent intent : profileIntents)
            staxProcessor.resolve(intent, resolver);
+
+        for (QualifiedIntent intent : qualifiedIntents)
+            staxProcessor.resolve(intent, resolver);
+
+        for ( PolicySet policySet : policySetTable.values() ) {
+            if (policySet.getReferencedPolicySets().isEmpty())
+                staxProcessor.resolve(policySet, resolver);
        }

        for ( PolicySet policySet : policySetTable.values() ) {
-            staxProcessor.resolve(policySet, resolver);
+            if (!policySet.getReferencedPolicySets().isEmpty())
+                staxProcessor.resolve(policySet, resolver);
        }

for ( IntentAttachPointType bindingType : bindingTypesTable.values() ) {
@@ -203,8 +239,6 @@
            staxProcessor.resolve(implType, resolver);
        }

-
-
//testing if policy intents have been linked have property been linked up

assertNotNull(profileIntent.getRequiredIntents().get(0).getDescription());

assertNotNull(qualifiedIntent.getQualifiableIntent().getDescription());

Modified: tuscany/java/sca/modules/policy-xml/src/test/resources/org/apache/tuscany/sca/policy/xml/test_definitions.xml URL: http://svn.apache.org/viewvc/tuscany/java/sca/modules/policy-xml/src/test/resources/org/apache/tuscany/sca/policy/xml/test_definitions.xml?rev=675018&r1=675017&r2=675018&view=diff
==============================================================================
--- tuscany/java/sca/modules/policy-xml/src/test/resources/org/apache/tuscany/sca/policy/xml/test_definitions.xml (original) +++ tuscany/java/sca/modules/policy-xml/src/test/resources/org/apache/tuscany/sca/policy/xml/test_definitions.xml Tue Jul 8 16:04:16 2008
@@ -30,8 +30,7 @@

<!-- Intents and Policysets to assume targetnamespace -->
<intent name="TestIntentOne"
- constrains="sca:binding"
- >
+ constrains="sca:binding">
 <description>
 Test Intent
 </description>
@@ -39,7 +38,7 @@

  <intent name="TestIntentTwo"
 constrains="sca:binding"
- requires="TestIntentOne">
+ requires="test:TestIntentOne">
 <description>
 Protect messages from unauthorized reading or modification
 </description>

Modified: tuscany/java/sca/samples/binding-echo-extension/src/test/resources/definitions.xml URL: http://svn.apache.org/viewvc/tuscany/java/sca/samples/binding-echo-extension/src/test/resources/definitions.xml?rev=675018&r1=675017&r2=675018&view=diff
==============================================================================
--- tuscany/java/sca/samples/binding-echo-extension/src/test/resources/definitions.xml (original) +++ tuscany/java/sca/samples/binding-echo-extension/src/test/resources/definitions.xml Tue Jul 8 16:04:16 2008
@@ -24,9 +24,16 @@
            xmlns:p="http://sample/policy";>
    <!-- POLICY SETS -->
    <sca:policySet name="EncryptionPolicy"
-       provides="sca:confidentiality"
-       appliesTo="e:binding.echo"
-       >
+       provides="confidentiality"
+       appliesTo="e:binding.echo">
<p:echoBindingPolicy name="Encryption" strategy="echo.provider.policy.ReverseEncryptionStrategy" />
-    </sca:policySet>
+    </sca:policySet>
+
+ <sca:intent name="confidentiality"
+    constrains="sca:binding">
+    <description>
+    Communitcation thro this binding must prevent
+    unauthorized users from reading the messages.
+    </description>
+    </sca:intent>
</sca:definitions>
\ No newline at end of file

Modified: tuscany/java/sca/tools/eclipse/plugins/core/.classpath
URL: http://svn.apache.org/viewvc/tuscany/java/sca/tools/eclipse/plugins/core/.classpath?rev=675018&r1=675017&r2=675018&view=diff
==============================================================================
--- tuscany/java/sca/tools/eclipse/plugins/core/.classpath (original)
+++ tuscany/java/sca/tools/eclipse/plugins/core/.classpath Tue Jul 8 16:04:16 2008
@@ -2,55 +2,55 @@
  <classpathentry kind="src" path="."/>
  <classpathentry kind="output" path="target/classes"/>
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/> - <classpathentry kind="var" path="M2_REPO/org/eclipse/jdt/debug/ui/3.2.100-v20070531-1800/ui-3.2.100-v20070531-1800.jar"/> - <classpathentry kind="var" path="M2_REPO/org/eclipse/ui/ide/3.3.0-I20070531-1800/ide-3.3.0-I20070531-1800.jar"/> - <classpathentry kind="var" path="M2_REPO/org/eclipse/core/resources/3.3.0-v20070530/resources-3.3.0-v20070530.jar"/> - <classpathentry kind="var" path="M2_REPO/org/eclipse/core/expressions/3.3.0-v20070531-1300/expressions-3.3.0-v20070531-1300.jar"/> - <classpathentry kind="var" path="M2_REPO/org/eclipse/core/runtime/3.3.100-v20070530/runtime-3.3.100-v20070530.jar"/> - <classpathentry kind="var" path="M2_REPO/org/eclipse/osgi/3.3.0-v20070530/osgi-3.3.0-v20070530.jar"/> + <classpathentry kind="var" path="M2_REPO/org/eclipse/equinox/app/1.0.0-v20070423/app-1.0.0-v20070423.jar"/> + <classpathentry kind="var" path="M2_REPO/org/eclipse/core/commands/3.3.0-I20070523-1500/commands-3.3.0-I20070523-1500.jar"/> <classpathentry kind="var" path="M2_REPO/org/eclipse/equinox/common/3.3.0-v20070426/common-3.3.0-v20070426.jar"/> - <classpathentry kind="var" path="M2_REPO/org/eclipse/core/jobs/3.3.0-v20070423/jobs-3.3.0-v20070423.jar"/> - <classpathentry kind="var" path="M2_REPO/org/eclipse/equinox/registry/3.3.0-v20070522/registry-3.3.0-v20070522.jar"/> - <classpathentry kind="var" path="M2_REPO/org/eclipse/equinox/preferences/3.2.100-v20070522/preferences-3.2.100-v20070522.jar"/> + <classpathentry kind="var" path="M2_REPO/org/eclipse/compare/3.3.0-I20070528/compare-3.3.0-I20070528.jar"/> + <classpathentry kind="var" path="M2_REPO/org/eclipse/update/configurator/3.2.100-v20070507/configurator-3.2.100-v20070507.jar"/> + <classpathentry kind="var" path="M2_REPO/org/eclipse/ui/console/3.2.0-v20070530/console-3.2.0-v20070530.jar"/> <classpathentry kind="var" path="M2_REPO/org/eclipse/core/contenttype/3.2.100-v20070319/contenttype-3.2.100-v20070319.jar"/> - <classpathentry kind="var" path="M2_REPO/org/eclipse/equinox/app/1.0.0-v20070423/app-1.0.0-v20070423.jar"/> + <classpathentry kind="var" path="M2_REPO/org/eclipse/debug/core/3.3.0-v20070531-1800/core-3.3.0-v20070531-1800.jar"/> + <classpathentry kind="var" path="M2_REPO/org/eclipse/jdt/core/3.3.0-v_768/core-3.3.0-v_768.jar"/> + <classpathentry kind="var" path="M2_REPO/org/eclipse/team/core/3.2.100-I20070531/core-3.2.100-I20070531.jar"/> + <classpathentry kind="var" path="M2_REPO/org/eclipse/update/core/3.2.100-v20070522/core-3.2.100-v20070522.jar"/> + <classpathentry kind="var" path="M2_REPO/org/eclipse/core/databinding/1.0.0-I20070530-0100/databinding-1.0.0-I20070530-0100.jar"/> + <classpathentry kind="var" path="M2_REPO/org/eclipse/jface/databinding/1.1.0-I20070530-0100/databinding-1.1.0-I20070530-0100.jar"/> + <classpathentry kind="var" path="M2_REPO/org/eclipse/jdt/debug/3.3.0-v20070530a/debug-3.3.0-v20070530a.jar"/> + <classpathentry kind="var" path="M2_REPO/org/eclipse/ui/editors/3.3.0-v20070531-1300/editors-3.3.0-v20070531-1300.jar"/> + <classpathentry kind="var" path="M2_REPO/org/eclipse/core/expressions/3.3.0-v20070531-1300/expressions-3.3.0-v20070531-1300.jar"/> + <classpathentry kind="var" path="M2_REPO/org/eclipse/core/filebuffers/3.3.0-v20070531-1300/filebuffers-3.3.0-v20070531-1300.jar"/> <classpathentry kind="var" path="M2_REPO/org/eclipse/core/filesystem/1.1.0-v20070510/filesystem-1.1.0-v20070510.jar"/> + <classpathentry kind="var" path="M2_REPO/org/eclipse/ui/forms/3.3.0-v20070511/forms-3.3.0-v20070511.jar"/> <classpathentry kind="var" path="M2_REPO/org/eclipse/help/3.3.0-v20070524/help-3.3.0-v20070524.jar"/> - <classpathentry kind="var" path="M2_REPO/org/eclipse/ui/3.3.0-I20070601-1200/ui-3.3.0-I20070601-1200.jar"/> - <classpathentry kind="var" path="M2_REPO/org/eclipse/swt/3.3.0-v3345b/swt-3.3.0-v3345b.jar"/> + <classpathentry kind="var" path="M2_REPO/org/eclipse/ui/ide/3.3.0-I20070531-1800/ide-3.3.0-I20070531-1800.jar"/> <classpathentry kind="var" path="M2_REPO/org/eclipse/jface/3.3.0-I20070601-1200/jface-3.3.0-I20070601-1200.jar"/> - <classpathentry kind="var" path="M2_REPO/org/eclipse/core/commands/3.3.0-I20070523-1500/commands-3.3.0-I20070523-1500.jar"/> - <classpathentry kind="var" path="M2_REPO/org/eclipse/ui/workbench/3.3.0-I20070601-0010/workbench-3.3.0-I20070601-0010.jar"/> - <classpathentry kind="var" path="M2_REPO/org/eclipse/jface/databinding/1.1.0-I20070530-0100/databinding-1.1.0-I20070530-0100.jar"/> - <classpathentry kind="var" path="M2_REPO/org/eclipse/core/databinding/1.0.0-I20070530-0100/databinding-1.0.0-I20070530-0100.jar"/> - <classpathentry kind="var" path="M2_REPO/org/eclipse/ui/views/3.2.100-I20070319-0010/views-3.2.100-I20070319-0010.jar"/> - <classpathentry kind="var" path="M2_REPO/org/eclipse/update/configurator/3.2.100-v20070507/configurator-3.2.100-v20070507.jar"/> - <classpathentry kind="var" path="M2_REPO/org/eclipse/update/core/3.2.100-v20070522/core-3.2.100-v20070522.jar"/> + <classpathentry kind="var" path="M2_REPO/org/eclipse/core/jobs/3.3.0-v20070423/jobs-3.3.0-v20070423.jar"/> + <classpathentry kind="var" path="M2_REPO/org/eclipse/jdt/launching/3.3.0-v20070510/launching-3.3.0-v20070510.jar"/> + <classpathentry kind="var" path="M2_REPO/org/eclipse/jdt/core/manipulation/1.1.0-v20070531-1300/manipulation-1.1.0-v20070531-1300.jar"/> + <classpathentry kind="var" path="M2_REPO/org/eclipse/ui/navigator/3.3.0-I20070531-1800/navigator-3.3.0-I20070531-1800.jar"/> <classpathentry kind="var" path="M2_REPO/org/eclipse/core/net/1.0.0-I20070531/net-1.0.0-I20070531.jar"/> - <classpathentry kind="var" path="M2_REPO/org/eclipse/update/ui/3.2.100-v20070601a/ui-3.2.100-v20070601a.jar"/> - <classpathentry kind="var" path="M2_REPO/org/eclipse/ui/forms/3.3.0-v20070511/forms-3.3.0-v20070511.jar"/> - <classpathentry kind="var" path="M2_REPO/org/eclipse/jface/text/3.3.0-v20070531-1300/text-3.3.0-v20070531-1300.jar"/> + <classpathentry kind="var" path="M2_REPO/org/eclipse/osgi/3.3.0-v20070530/osgi-3.3.0-v20070530.jar"/> + <classpathentry kind="var" path="M2_REPO/org/eclipse/equinox/preferences/3.2.100-v20070522/preferences-3.2.100-v20070522.jar"/> + <classpathentry kind="var" path="M2_REPO/org/eclipse/ltk/core/refactoring/3.3.0-v20070531-1300/refactoring-3.3.0-v20070531-1300.jar"/> + <classpathentry kind="var" path="M2_REPO/org/eclipse/ltk/ui/refactoring/3.3.0-v20070531-1300/refactoring-3.3.0-v20070531-1300.jar"/> + <classpathentry kind="var" path="M2_REPO/org/eclipse/equinox/registry/3.3.0-v20070522/registry-3.3.0-v20070522.jar"/> + <classpathentry kind="var" path="M2_REPO/org/eclipse/core/resources/3.3.0-v20070530/resources-3.3.0-v20070530.jar"/> + <classpathentry kind="var" path="M2_REPO/org/eclipse/ui/navigator/resources/3.2.100-I20070530-0100/resources-3.2.100-I20070530-0100.jar"/> + <classpathentry kind="var" path="M2_REPO/org/eclipse/core/runtime/3.3.100-v20070530/runtime-3.3.100-v20070530.jar"/> + <classpathentry kind="var" path="M2_REPO/org/eclipse/search/3.3.0-v20070531-1300/search-3.3.0-v20070531-1300.jar"/> + <classpathentry kind="var" path="M2_REPO/org/eclipse/swt/3.3.0-v3345b/swt-3.3.0-v3345b.jar"/> + <classpathentry kind="var" path="M2_REPO/org/eclipse/ui/views/properties/tabbed/3.2.100-I20070424-0010/tabbed-3.2.100-I20070424-0010.jar"/> <classpathentry kind="var" path="M2_REPO/org/eclipse/text/3.3.0-v20070531-1300/text-3.3.0-v20070531-1300.jar"/> + <classpathentry kind="var" path="M2_REPO/org/eclipse/jface/text/3.3.0-v20070531-1300/text-3.3.0-v20070531-1300.jar"/> <classpathentry kind="var" path="M2_REPO/org/eclipse/ui/workbench/texteditor/3.3.0-v20070531-1300/texteditor-3.3.0-v20070531-1300.jar"/> - <classpathentry kind="var" path="M2_REPO/org/eclipse/ui/editors/3.3.0-v20070531-1300/editors-3.3.0-v20070531-1300.jar"/> - <classpathentry kind="var" path="M2_REPO/org/eclipse/core/filebuffers/3.3.0-v20070531-1300/filebuffers-3.3.0-v20070531-1300.jar"/> - <classpathentry kind="var" path="M2_REPO/org/eclipse/core/variables/3.2.0-v20070426/variables-3.2.0-v20070426.jar"/> - <classpathentry kind="var" path="M2_REPO/org/eclipse/jdt/core/3.3.0-v_768/core-3.3.0-v_768.jar"/> + <classpathentry kind="var" path="M2_REPO/org/eclipse/ui/3.3.0-I20070601-1200/ui-3.3.0-I20070601-1200.jar"/> <classpathentry kind="var" path="M2_REPO/org/eclipse/debug/ui/3.3.0-v20070531-1800/ui-3.3.0-v20070531-1800.jar"/> - <classpathentry kind="var" path="M2_REPO/org/eclipse/ui/console/3.2.0-v20070530/console-3.2.0-v20070530.jar"/> - <classpathentry kind="var" path="M2_REPO/org/eclipse/debug/core/3.3.0-v20070531-1800/core-3.3.0-v20070531-1800.jar"/> - <classpathentry kind="var" path="M2_REPO/org/eclipse/jdt/debug/3.3.0-v20070530a/debug-3.3.0-v20070530a.jar"/> - <classpathentry kind="var" path="M2_REPO/org/eclipse/jdt/launching/3.3.0-v20070510/launching-3.3.0-v20070510.jar"/> <classpathentry kind="var" path="M2_REPO/org/eclipse/jdt/ui/3.3.0-v20070531-1300/ui-3.3.0-v20070531-1300.jar"/> - <classpathentry kind="var" path="M2_REPO/org/eclipse/search/3.3.0-v20070531-1300/search-3.3.0-v20070531-1300.jar"/> - <classpathentry kind="var" path="M2_REPO/org/eclipse/compare/3.3.0-I20070528/compare-3.3.0-I20070528.jar"/> + <classpathentry kind="var" path="M2_REPO/org/eclipse/jdt/debug/ui/3.2.100-v20070531-1800/ui-3.2.100-v20070531-1800.jar"/> <classpathentry kind="var" path="M2_REPO/org/eclipse/team/ui/3.3.0-I20070524/ui-3.3.0-I20070524.jar"/> - <classpathentry kind="var" path="M2_REPO/org/eclipse/team/core/3.2.100-I20070531/core-3.2.100-I20070531.jar"/> - <classpathentry kind="var" path="M2_REPO/org/eclipse/ui/navigator/3.3.0-I20070531-1800/navigator-3.3.0-I20070531-1800.jar"/> - <classpathentry kind="var" path="M2_REPO/org/eclipse/ui/navigator/resources/3.2.100-I20070530-0100/resources-3.2.100-I20070530-0100.jar"/> - <classpathentry kind="var" path="M2_REPO/org/eclipse/ui/views/properties/tabbed/3.2.100-I20070424-0010/tabbed-3.2.100-I20070424-0010.jar"/> - <classpathentry kind="var" path="M2_REPO/org/eclipse/ltk/core/refactoring/3.3.0-v20070531-1300/refactoring-3.3.0-v20070531-1300.jar"/> - <classpathentry kind="var" path="M2_REPO/org/eclipse/ltk/ui/refactoring/3.3.0-v20070531-1300/refactoring-3.3.0-v20070531-1300.jar"/> - <classpathentry kind="var" path="M2_REPO/org/eclipse/jdt/core/manipulation/1.1.0-v20070531-1300/manipulation-1.1.0-v20070531-1300.jar"/> + <classpathentry kind="var" path="M2_REPO/org/eclipse/update/ui/3.2.100-v20070601a/ui-3.2.100-v20070601a.jar"/> + <classpathentry kind="var" path="M2_REPO/org/eclipse/core/variables/3.2.0-v20070426/variables-3.2.0-v20070426.jar"/> + <classpathentry kind="var" path="M2_REPO/org/eclipse/ui/views/3.2.100-I20070319-0010/views-3.2.100-I20070319-0010.jar"/> + <classpathentry kind="var" path="M2_REPO/org/eclipse/ui/workbench/3.3.0-I20070601-0010/workbench-3.3.0-I20070601-0010.jar"/> <classpathentry kind="var" path="M2_REPO/org/eclipse/swt/win32/win32/x86/3.3.0-v3346/x86-3.3.0-v3346.jar"/>
</classpath>
\ No newline at end of file


Reply via email to