summaryrefslogtreecommitdiffstats
path: root/sca-java-2.x/trunk/modules/core-spi/src
diff options
context:
space:
mode:
Diffstat (limited to 'sca-java-2.x/trunk/modules/core-spi/src')
-rw-r--r--sca-java-2.x/trunk/modules/core-spi/src/main/java/org/apache/tuscany/sca/provider/BasePolicyProvider.java7
-rw-r--r--sca-java-2.x/trunk/modules/core-spi/src/main/java/org/apache/tuscany/sca/provider/PolicyProvider.java21
2 files changed, 27 insertions, 1 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();