diff options
Diffstat (limited to 'sca-java-2.x/branches/2.0-Beta1/modules/assembly-xml/src/main/java/org/apache/tuscany/sca/assembly')
2 files changed, 33 insertions, 1 deletions
diff --git a/sca-java-2.x/branches/2.0-Beta1/modules/assembly-xml/src/main/java/org/apache/tuscany/sca/assembly/xml/CompositeProcessor.java b/sca-java-2.x/branches/2.0-Beta1/modules/assembly-xml/src/main/java/org/apache/tuscany/sca/assembly/xml/CompositeProcessor.java index 8922c232b0..c2deacbb35 100644 --- a/sca-java-2.x/branches/2.0-Beta1/modules/assembly-xml/src/main/java/org/apache/tuscany/sca/assembly/xml/CompositeProcessor.java +++ b/sca-java-2.x/branches/2.0-Beta1/modules/assembly-xml/src/main/java/org/apache/tuscany/sca/assembly/xml/CompositeProcessor.java @@ -1098,8 +1098,17 @@ public class CompositeProcessor extends BaseAssemblyProcessor implements StAXArt //now resolve the implementation so that even if there is a shared instance //for this that is resolved, the specified intents and policysets are safe in the //component and not lost + List<Intent> intents = implementation.getRequiredIntents(); + List<PolicySet> policySets = implementation.getPolicySets(); + + implementation = resolveImplementation(implementation, resolver, context); + implementation.getPolicySets().clear(); + implementation.getPolicySets().addAll(policySets); + implementation.getRequiredIntents().clear(); + implementation.getRequiredIntents().addAll(intents); + component.setImplementation(implementation); } diff --git a/sca-java-2.x/branches/2.0-Beta1/modules/assembly-xml/src/main/java/org/apache/tuscany/sca/assembly/xml/Constants.java b/sca-java-2.x/branches/2.0-Beta1/modules/assembly-xml/src/main/java/org/apache/tuscany/sca/assembly/xml/Constants.java index 7965002304..0c88a01b19 100644 --- a/sca-java-2.x/branches/2.0-Beta1/modules/assembly-xml/src/main/java/org/apache/tuscany/sca/assembly/xml/Constants.java +++ b/sca-java-2.x/branches/2.0-Beta1/modules/assembly-xml/src/main/java/org/apache/tuscany/sca/assembly/xml/Constants.java @@ -145,7 +145,30 @@ public interface Constants { String AUTHORIZATION_FINE_GRAIN = "authorization.fineGrain"; QName AUTHORIZATION_FINE_GRAIN_INTENT = new QName(SCA11_NS, AUTHORIZATION_FINE_GRAIN); - // TODO - add transaction intent constants + String MANAGED_TRANSACTION = "managedTransaction"; + QName MANAGED_TRANSACTION_INTENT = new QName(SCA11_NS, MANAGED_TRANSACTION); + + String NO_MANAGED_TRANSACTION = "noManagedTransaction"; + QName NO_MANAGED_TRANSACTION_INTENT = new QName(SCA11_NS, NO_MANAGED_TRANSACTION); + + String MANAGED_TRANSACTION_LOCAL = "managedTransaction.local"; + QName MANAGED_TRANSACTION_LOCAL_INTENT = new QName(SCA11_NS, MANAGED_TRANSACTION_LOCAL); + + String MANAGED_TRANSACTION_GLOBAL = "managedTransaction.global"; + QName MANAGED_TRANSACTION_GLOBAL_INTENT = new QName(SCA11_NS, MANAGED_TRANSACTION_GLOBAL); + + String PROPAGATES_TRANSACTION = "propagatesTransaction"; + QName PROPAGATES_TRANSACTION_INTENT = new QName(SCA11_NS, PROPAGATES_TRANSACTION); + + String SUSPENDS_TRANSACTION = "suspendsTransaction"; + QName SUSPENDS_TRANSACTION_INTENT = new QName(SCA11_NS, SUSPENDS_TRANSACTION); + + String TRANSACTED_ONE_WAY = "transactedOneWay"; + QName TRANSACTED_ONE_WAY_INTENT = new QName(SCA11_NS, TRANSACTED_ONE_WAY); + + String IMMEDIATE_ONE_WAY = "immediateOneWay"; + QName IMMEDIATE_ONE_WAY_INTENT = new QName(SCA11_NS, IMMEDIATE_ONE_WAY); + String NOLISTENER = "noListener"; QName NOLISTENER_INTENT = new QName(SCA11_NS, NOLISTENER); |