Author: slaws
Date: Thu Jun 23 12:57:26 2011
New Revision: 1138859
URL: http://svn.apache.org/viewvc?rev=1138859&view=rev
Log:
TUSCANY-3878 - check policy language equality based on the namspace of the
policy element rather than the full element QName
Modified:
tuscany/sca-java-2.x/trunk/modules/assembly-xml/src/main/java/org/apache/tuscany/sca/policy/xml/PolicySetProcessor.java
tuscany/sca-java-2.x/trunk/modules/builder/src/main/java/org/apache/tuscany/sca/builder/impl/ComponentPolicyBuilderImpl.java
tuscany/sca-java-2.x/trunk/modules/builder/src/main/java/org/apache/tuscany/sca/builder/impl/CompositePolicyBuilderImpl.java
Modified:
tuscany/sca-java-2.x/trunk/modules/assembly-xml/src/main/java/org/apache/tuscany/sca/policy/xml/PolicySetProcessor.java
URL:
http://svn.apache.org/viewvc/tuscany/sca-java-2.x/trunk/modules/assembly-xml/src/main/java/org/apache/tuscany/sca/policy/xml/PolicySetProcessor.java?rev=1138859&r1=1138858&r2=1138859&view=diff
==============================================================================
---
tuscany/sca-java-2.x/trunk/modules/assembly-xml/src/main/java/org/apache/tuscany/sca/policy/xml/PolicySetProcessor.java
(original)
+++
tuscany/sca-java-2.x/trunk/modules/assembly-xml/src/main/java/org/apache/tuscany/sca/policy/xml/PolicySetProcessor.java
Thu Jun 23 12:57:26 2011
@@ -224,8 +224,8 @@ public class PolicySetProcessor extends
// check that all the policies in the policy set
are
// expressed in the same language. Compare against
the
// first expression we added
- if ((policySet.getPolicies().size() > 0) &&
(!policySet.getPolicies().get(0).getName()
- .equals(name))) {
+ if ((policySet.getPolicies().size() > 0) &&
+
(!policySet.getPolicies().get(0).getName().getNamespaceURI().equals(name.getNamespaceURI())))
{
error(monitor, "PolicyLanguageMissmatch",
reader, policySet.getName(), policySet
.getPolicies().get(0).getName(), name);
} else {
Modified:
tuscany/sca-java-2.x/trunk/modules/builder/src/main/java/org/apache/tuscany/sca/builder/impl/ComponentPolicyBuilderImpl.java
URL:
http://svn.apache.org/viewvc/tuscany/sca-java-2.x/trunk/modules/builder/src/main/java/org/apache/tuscany/sca/builder/impl/ComponentPolicyBuilderImpl.java?rev=1138859&r1=1138858&r2=1138859&view=diff
==============================================================================
---
tuscany/sca-java-2.x/trunk/modules/builder/src/main/java/org/apache/tuscany/sca/builder/impl/ComponentPolicyBuilderImpl.java
(original)
+++
tuscany/sca-java-2.x/trunk/modules/builder/src/main/java/org/apache/tuscany/sca/builder/impl/ComponentPolicyBuilderImpl.java
Thu Jun 23 12:57:26 2011
@@ -558,14 +558,14 @@ public class ComponentPolicyBuilderImpl
}
}
- protected Set<QName> getPolicyNames(PolicySubject subject) {
+ protected Set<String> getPolicyNames(PolicySubject subject) {
if (subject == null) {
return Collections.emptySet();
}
- Set<QName> names = new HashSet<QName>();
+ Set<String> names = new HashSet<String>();
for (PolicySet ps : subject.getPolicySets()) {
for (PolicyExpression exp : ps.getPolicies()) {
- names.add(exp.getName());
+ names.add(exp.getName().getNamespaceURI());
}
}
return names;
Modified:
tuscany/sca-java-2.x/trunk/modules/builder/src/main/java/org/apache/tuscany/sca/builder/impl/CompositePolicyBuilderImpl.java
URL:
http://svn.apache.org/viewvc/tuscany/sca-java-2.x/trunk/modules/builder/src/main/java/org/apache/tuscany/sca/builder/impl/CompositePolicyBuilderImpl.java?rev=1138859&r1=1138858&r2=1138859&view=diff
==============================================================================
---
tuscany/sca-java-2.x/trunk/modules/builder/src/main/java/org/apache/tuscany/sca/builder/impl/CompositePolicyBuilderImpl.java
(original)
+++
tuscany/sca-java-2.x/trunk/modules/builder/src/main/java/org/apache/tuscany/sca/builder/impl/CompositePolicyBuilderImpl.java
Thu Jun 23 12:57:26 2011
@@ -42,6 +42,7 @@ import org.apache.tuscany.sca.core.Exten
import org.apache.tuscany.sca.interfacedef.Operation;
import org.apache.tuscany.sca.monitor.Monitor;
import org.apache.tuscany.sca.policy.Intent;
+import org.apache.tuscany.sca.policy.PolicyExpression;
import org.apache.tuscany.sca.policy.PolicySet;
import org.apache.tuscany.sca.policy.PolicySubject;
import org.apache.tuscany.sca.policy.util.PolicyHelper;
@@ -410,7 +411,7 @@ public class CompositePolicyBuilderImpl
for (ComponentService componentService : component.getServices()) {
for (Endpoint ep : componentService.getEndpoints()) {
- Set<QName> policyNames = getPolicyNames(ep);
+ Set<String> policyNames = getPolicyNames(ep);
// check that only one policy language is present in the
endpoint's policy sets
if (policyNames.size() > 1){
@@ -420,19 +421,21 @@ public class CompositePolicyBuilderImpl
ep.toString(),
policyNames.toString());
} else {
- for (QName policyType : policyNames) {
- PolicyBuilder builder =
builders.getPolicyBuilder(policyType);
- if (builder != null) {
- builder.build(ep, context);
+ for (PolicySet ps : ep.getPolicySets()) {
+ for (PolicyExpression exp : ps.getPolicies()) {
+ PolicyBuilder builder =
builders.getPolicyBuilder(exp.getName());
+ if (builder != null) {
+ builder.build(ep, context);
+ }
}
- }
+ }
}
}
}
for (ComponentReference componentReference :
component.getReferences()) {
for (EndpointReference epr :
componentReference.getEndpointReferences()) {
- Set<QName> policyNames = getPolicyNames(epr);
+ Set<String> policyNames = getPolicyNames(epr);
// check that only one policy language is present in the
endpoint references's policy sets
if (policyNames.size() > 1){
@@ -442,10 +445,12 @@ public class CompositePolicyBuilderImpl
epr.toString(),
policyNames.toString());
} else {
- for (QName policyType : policyNames) {
- PolicyBuilder builder =
builders.getPolicyBuilder(policyType);
- if (builder != null) {
- builder.build(epr, context);
+ for (PolicySet ps : epr.getPolicySets()) {
+ for (PolicyExpression exp : ps.getPolicies()) {
+ PolicyBuilder builder =
builders.getPolicyBuilder(exp.getName());
+ if (builder != null) {
+ builder.build(epr, context);
+ }
}
}
}
@@ -454,7 +459,7 @@ public class CompositePolicyBuilderImpl
Implementation implementation = component.getImplementation();
if (implementation != null) {
- Set<QName> policyNames = getPolicyNames(implementation);
+ Set<String> policyNames = getPolicyNames(implementation);
// check that only one policy language is present in the
implementations's policy sets
if (policyNames.size() > 1){
@@ -464,10 +469,12 @@ public class CompositePolicyBuilderImpl
component.toString(),
policyNames.toString());
} else {
- for (QName policyType : policyNames) {
- PolicyBuilder builder =
builders.getPolicyBuilder(policyType);
- if (builder != null) {
- builder.build(component, implementation, context);
+ for (PolicySet ps : implementation.getPolicySets()) {
+ for (PolicyExpression exp : ps.getPolicies()) {
+ PolicyBuilder builder =
builders.getPolicyBuilder(exp.getName());
+ if (builder != null) {
+ builder.build(component, implementation,
context);
+ }
}
}
}