diff options
Diffstat (limited to '')
4 files changed, 33 insertions, 3 deletions
diff --git a/sca-java-2.x/trunk/modules/core-spi/src/main/java/org/apache/tuscany/sca/provider/BasePolicyProvider.java b/sca-java-2.x/trunk/modules/core-spi/src/main/java/org/apache/tuscany/sca/provider/BasePolicyProvider.java index 8f93476c85..30802feb82 100644 --- a/sca-java-2.x/trunk/modules/core-spi/src/main/java/org/apache/tuscany/sca/provider/BasePolicyProvider.java +++ b/sca-java-2.x/trunk/modules/core-spi/src/main/java/org/apache/tuscany/sca/provider/BasePolicyProvider.java @@ -129,6 +129,13 @@ public abstract class BasePolicyProvider<T> implements PolicyProvider { public PhasedInterceptor createInterceptor(Operation operation) { return null; } + + public PhasedInterceptor createBindingInterceptor() { + return null; + } + + public void configureBinding(Object configuration){ + } protected InvocationChain getInvocationChain() { if (subject instanceof RuntimeEndpoint) { diff --git a/sca-java-2.x/trunk/modules/core-spi/src/main/java/org/apache/tuscany/sca/provider/PolicyProvider.java b/sca-java-2.x/trunk/modules/core-spi/src/main/java/org/apache/tuscany/sca/provider/PolicyProvider.java index 00ef0d1c3c..35b64ad56f 100644 --- a/sca-java-2.x/trunk/modules/core-spi/src/main/java/org/apache/tuscany/sca/provider/PolicyProvider.java +++ b/sca-java-2.x/trunk/modules/core-spi/src/main/java/org/apache/tuscany/sca/provider/PolicyProvider.java @@ -28,12 +28,31 @@ import org.apache.tuscany.sca.invocation.PhasedInterceptor; public interface PolicyProvider { /** * Create an interceptor for a given operation + * * @param operation - * @return An interceptor that realize the policySet + * @return An interceptor that realizes the policySet */ PhasedInterceptor createInterceptor(Operation operation); /** + * Create a binding interceptor. The binding wire is + * not operation specific so an operation parameter + * isn't required + * + * @return An interceptor that realizes the policySet + */ + PhasedInterceptor createBindingInterceptor(); + + /** + * Give the provider an opportunity to affect the + * binding configuration if required + * + * @param configurationContext the configuration context of the + * binding that will be modified + */ + void configureBinding(Object configuration); + + /** * Start the provider */ void start(); diff --git a/sca-java-2.x/trunk/modules/core/src/main/java/org/apache/tuscany/sca/core/assembly/impl/RuntimeEndpointImpl.java b/sca-java-2.x/trunk/modules/core/src/main/java/org/apache/tuscany/sca/core/assembly/impl/RuntimeEndpointImpl.java index b4743676b0..ce5f72ca94 100644 --- a/sca-java-2.x/trunk/modules/core/src/main/java/org/apache/tuscany/sca/core/assembly/impl/RuntimeEndpointImpl.java +++ b/sca-java-2.x/trunk/modules/core/src/main/java/org/apache/tuscany/sca/core/assembly/impl/RuntimeEndpointImpl.java @@ -55,7 +55,6 @@ import org.apache.tuscany.sca.invocation.Invoker; import org.apache.tuscany.sca.invocation.Message; import org.apache.tuscany.sca.invocation.MessageFactory; import org.apache.tuscany.sca.invocation.Phase; -import org.apache.tuscany.sca.provider.BindingPolicyProvider; import org.apache.tuscany.sca.provider.BindingProviderFactory; import org.apache.tuscany.sca.provider.EndpointProvider; import org.apache.tuscany.sca.provider.ImplementationProvider; @@ -306,12 +305,15 @@ public class RuntimeEndpointImpl extends EndpointImpl implements RuntimeEndpoint List<PolicyProvider> pps = getPolicyProviders(); if (pps != null) { for (PolicyProvider p : pps) { + // TODO - SL - Need to get the binding policy providers +/* if (p instanceof BindingPolicyProvider) { Interceptor interceptor = ((BindingPolicyProvider)p).createBindingInterceptor(); if (interceptor != null) { bindingInvocationChain.addInterceptor(interceptor); } } +*/ } } diff --git a/sca-java-2.x/trunk/modules/core/src/main/java/org/apache/tuscany/sca/core/assembly/impl/RuntimeEndpointReferenceImpl.java b/sca-java-2.x/trunk/modules/core/src/main/java/org/apache/tuscany/sca/core/assembly/impl/RuntimeEndpointReferenceImpl.java index 32078eabc9..fc5a942186 100644 --- a/sca-java-2.x/trunk/modules/core/src/main/java/org/apache/tuscany/sca/core/assembly/impl/RuntimeEndpointReferenceImpl.java +++ b/sca-java-2.x/trunk/modules/core/src/main/java/org/apache/tuscany/sca/core/assembly/impl/RuntimeEndpointReferenceImpl.java @@ -56,7 +56,6 @@ import org.apache.tuscany.sca.invocation.Invoker; import org.apache.tuscany.sca.invocation.Message; import org.apache.tuscany.sca.invocation.MessageFactory; import org.apache.tuscany.sca.invocation.Phase; -import org.apache.tuscany.sca.provider.BindingPolicyProvider; import org.apache.tuscany.sca.provider.BindingProviderFactory; import org.apache.tuscany.sca.provider.EndpointReferenceProvider; import org.apache.tuscany.sca.provider.PolicyProvider; @@ -347,12 +346,15 @@ public class RuntimeEndpointReferenceImpl extends EndpointReferenceImpl implemen // add the policy interceptors to the service binding wire // find out which policies are active for (PolicyProvider p : getPolicyProviders()) { + // TODO - SL - Need to get the binding policy providers +/* if (p instanceof BindingPolicyProvider) { Interceptor interceptor = ((BindingPolicyProvider)p).createBindingInterceptor(); if (interceptor != null) { bindingInvocationChain.addInterceptor(interceptor); } } +*/ } } |