summaryrefslogtreecommitdiffstats
path: root/java/sca/modules/core-spi/src/main/java/org/apache/tuscany/sca/provider/BasePolicyProvider.java
diff options
context:
space:
mode:
Diffstat (limited to 'java/sca/modules/core-spi/src/main/java/org/apache/tuscany/sca/provider/BasePolicyProvider.java')
-rw-r--r--java/sca/modules/core-spi/src/main/java/org/apache/tuscany/sca/provider/BasePolicyProvider.java31
1 files changed, 14 insertions, 17 deletions
diff --git a/java/sca/modules/core-spi/src/main/java/org/apache/tuscany/sca/provider/BasePolicyProvider.java b/java/sca/modules/core-spi/src/main/java/org/apache/tuscany/sca/provider/BasePolicyProvider.java
index 785ac70271..8f93476c85 100644
--- a/java/sca/modules/core-spi/src/main/java/org/apache/tuscany/sca/provider/BasePolicyProvider.java
+++ b/java/sca/modules/core-spi/src/main/java/org/apache/tuscany/sca/provider/BasePolicyProvider.java
@@ -32,9 +32,10 @@ import org.apache.tuscany.sca.invocation.PhasedInterceptor;
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.runtime.RuntimeComponentReference;
+import org.apache.tuscany.sca.runtime.RuntimeComponent;
import org.apache.tuscany.sca.runtime.RuntimeComponentService;
-import org.apache.tuscany.sca.runtime.RuntimeWire;
+import org.apache.tuscany.sca.runtime.RuntimeEndpoint;
+import org.apache.tuscany.sca.runtime.RuntimeEndpointReference;
/**
* Abstract base class for policy providers
@@ -129,30 +130,26 @@ public abstract class BasePolicyProvider<T> implements PolicyProvider {
return null;
}
- private InvocationChain getInvocationChain() {
- if (subject instanceof Endpoint) {
- Endpoint endpoint = (Endpoint)subject;
- RuntimeComponentService service = (RuntimeComponentService)endpoint.getService();
- RuntimeWire wire = service.getRuntimeWire(endpoint.getBinding());
- List<InvocationChain> chains = wire.getInvocationChains();
+ protected InvocationChain getInvocationChain() {
+ if (subject instanceof RuntimeEndpoint) {
+ RuntimeEndpoint endpoint = (RuntimeEndpoint)subject;
+ List<InvocationChain> chains = endpoint.getInvocationChains();
for (InvocationChain chain : chains) {
configure(chain, chain.getTargetOperation());
}
- } else if (subject instanceof EndpointReference) {
- EndpointReference endpointReference = (EndpointReference)subject;
- RuntimeComponentReference reference = (RuntimeComponentReference)endpointReference.getReference();
- RuntimeWire wire = reference.getRuntimeWire(endpointReference.getBinding());
- List<InvocationChain> chains = wire.getInvocationChains();
+ } else if (subject instanceof RuntimeEndpointReference) {
+ RuntimeEndpointReference endpointReference = (RuntimeEndpointReference)subject;
+ List<InvocationChain> chains = endpointReference.getInvocationChains();
for (InvocationChain chain : chains) {
configure(chain, chain.getSourceOperation());
}
- } else if (subject instanceof Component) {
- Component component = (Component)subject;
+ } else if (subject instanceof RuntimeComponent) {
+ RuntimeComponent component = (RuntimeComponent)subject;
for (ComponentService s : component.getServices()) {
RuntimeComponentService service = (RuntimeComponentService)s;
- for (RuntimeWire wire : service.getRuntimeWires()) {
- List<InvocationChain> chains = wire.getInvocationChains();
+ for (Endpoint ep : service.getEndpoints()) {
+ List<InvocationChain> chains = ((RuntimeEndpoint)ep).getInvocationChains();
for (InvocationChain chain : chains) {
configure(chain, chain.getTargetOperation());
}