summaryrefslogtreecommitdiffstats
path: root/sca-java-2.x/trunk/modules/policy-transaction-runtime/src/main/java/org/apache/tuscany/sca/policy/transaction/runtime/TransactionReferencePolicyProvider.java
diff options
context:
space:
mode:
Diffstat (limited to 'sca-java-2.x/trunk/modules/policy-transaction-runtime/src/main/java/org/apache/tuscany/sca/policy/transaction/runtime/TransactionReferencePolicyProvider.java')
-rw-r--r--sca-java-2.x/trunk/modules/policy-transaction-runtime/src/main/java/org/apache/tuscany/sca/policy/transaction/runtime/TransactionReferencePolicyProvider.java16
1 files changed, 2 insertions, 14 deletions
diff --git a/sca-java-2.x/trunk/modules/policy-transaction-runtime/src/main/java/org/apache/tuscany/sca/policy/transaction/runtime/TransactionReferencePolicyProvider.java b/sca-java-2.x/trunk/modules/policy-transaction-runtime/src/main/java/org/apache/tuscany/sca/policy/transaction/runtime/TransactionReferencePolicyProvider.java
index a982a2ceed..1dc0feb0b5 100644
--- a/sca-java-2.x/trunk/modules/policy-transaction-runtime/src/main/java/org/apache/tuscany/sca/policy/transaction/runtime/TransactionReferencePolicyProvider.java
+++ b/sca-java-2.x/trunk/modules/policy-transaction-runtime/src/main/java/org/apache/tuscany/sca/policy/transaction/runtime/TransactionReferencePolicyProvider.java
@@ -25,8 +25,6 @@ import org.apache.tuscany.sca.assembly.EndpointReference;
import org.apache.tuscany.sca.interfacedef.Operation;
import org.apache.tuscany.sca.invocation.Phase;
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.transaction.TransactionPolicy;
import org.apache.tuscany.sca.provider.BasePolicyProvider;
@@ -35,25 +33,15 @@ import org.apache.tuscany.sca.provider.BasePolicyProvider;
*/
public class TransactionReferencePolicyProvider extends BasePolicyProvider<TransactionPolicy> {
private TransactionManagerHelper helper;
- private List<PolicySet> policySets;
public TransactionReferencePolicyProvider(TransactionManagerHelper helper, EndpointReference epr) {
super(TransactionPolicy.class, epr);
this.helper = helper;
- this.policySets = epr.getPolicySets();
}
public PhasedInterceptor createInterceptor(Operation operation) {
- /* TODO - 2.x better way of doing this in 2.x */
- for (PolicySet policySet : policySets) {
- for (PolicyExpression p : policySet.getPolicies()) {
- if (p.getPolicy() instanceof TransactionPolicy) {
- TransactionInterceptor interceptor = new TransactionInterceptor(helper, true, (TransactionPolicy)p.getPolicy(), null,getPhase());
- return interceptor;
- }
- }
- }
- return null;
+ List<TransactionPolicy> policies = findPolicies();
+ return policies.isEmpty() ? null : new TransactionInterceptor(helper, true, policies.get(0), null, getPhase());
}
public String getPhase() {