summaryrefslogtreecommitdiffstats
path: root/sca-java-2.x/branches/2.0-Beta1/modules/assembly-xml/src/main/java/org
diff options
context:
space:
mode:
Diffstat (limited to 'sca-java-2.x/branches/2.0-Beta1/modules/assembly-xml/src/main/java/org')
-rw-r--r--sca-java-2.x/branches/2.0-Beta1/modules/assembly-xml/src/main/java/org/apache/tuscany/sca/assembly/xml/CompositeProcessor.java9
-rw-r--r--sca-java-2.x/branches/2.0-Beta1/modules/assembly-xml/src/main/java/org/apache/tuscany/sca/assembly/xml/Constants.java25
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);