diff options
author | lresende <lresende@13f79535-47bb-0310-9956-ffa450edef68> | 2010-03-04 01:19:55 +0000 |
---|---|---|
committer | lresende <lresende@13f79535-47bb-0310-9956-ffa450edef68> | 2010-03-04 01:19:55 +0000 |
commit | ea934f27ae0c4de4ca7cfa8771b220b315684b3c (patch) | |
tree | 24a74e62025081080217546bdd48ce233865f5d5 /sca-java-2.x/trunk/modules/policy-transaction/src/main/java/org/apache/tuscany/sca/policy/transaction/TransactionPolicyProcessor.java | |
parent | bfbb439e09596671c3019e3f53da16792e9b8c95 (diff) |
Providing TransactionPolicyFactory and avoiding direct access to TransactionPolicyImpl following pattern used in other tuscany modules
git-svn-id: http://svn.us.apache.org/repos/asf/tuscany@918808 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to '')
-rw-r--r-- | sca-java-2.x/trunk/modules/policy-transaction/src/main/java/org/apache/tuscany/sca/policy/transaction/TransactionPolicyProcessor.java | 17 |
1 files changed, 11 insertions, 6 deletions
diff --git a/sca-java-2.x/trunk/modules/policy-transaction/src/main/java/org/apache/tuscany/sca/policy/transaction/TransactionPolicyProcessor.java b/sca-java-2.x/trunk/modules/policy-transaction/src/main/java/org/apache/tuscany/sca/policy/transaction/TransactionPolicyProcessor.java index 341cfc0016..d6818c9b98 100644 --- a/sca-java-2.x/trunk/modules/policy-transaction/src/main/java/org/apache/tuscany/sca/policy/transaction/TransactionPolicyProcessor.java +++ b/sca-java-2.x/trunk/modules/policy-transaction/src/main/java/org/apache/tuscany/sca/policy/transaction/TransactionPolicyProcessor.java @@ -32,6 +32,7 @@ import org.apache.tuscany.sca.contribution.processor.ContributionWriteException; import org.apache.tuscany.sca.contribution.processor.ProcessorContext; import org.apache.tuscany.sca.contribution.processor.StAXArtifactProcessor; import org.apache.tuscany.sca.contribution.resolver.ModelResolver; +import org.apache.tuscany.sca.core.ExtensionPointRegistry; import org.apache.tuscany.sca.core.FactoryExtensionPoint; @@ -42,15 +43,23 @@ public class TransactionPolicyProcessor implements StAXArtifactProcessor<Transac public static final String TIMEOUT = "transactionTimeout"; public static final String ACTION = "action"; + TransactionPolicyFactory transactionPolicyFactory; + public QName getArtifactType() { return TransactionPolicy.NAME; } - public TransactionPolicyProcessor(FactoryExtensionPoint modelFactories) { + public Class<TransactionPolicy> getModelType() { + return TransactionPolicy.class; + } + + public TransactionPolicyProcessor(ExtensionPointRegistry extensions) { + FactoryExtensionPoint factories = extensions.getExtensionPoint(FactoryExtensionPoint.class); + transactionPolicyFactory = factories.getFactory(TransactionPolicyFactory.class); } public TransactionPolicy read(XMLStreamReader reader, ProcessorContext context) throws ContributionReadException, XMLStreamException { - TransactionPolicy txPolicy = new TransactionPolicyImpl(); + TransactionPolicy txPolicy = transactionPolicyFactory.createTransactionPolicy(); int event = reader.getEventType(); while (reader.hasNext()) { event = reader.getEventType(); @@ -88,10 +97,6 @@ public class TransactionPolicyProcessor implements StAXArtifactProcessor<Transac // TODO } - public Class<TransactionPolicy> getModelType() { - return TransactionPolicy.class; - } - public void resolve(TransactionPolicy policy, ModelResolver resolver, ProcessorContext context) throws ContributionResolveException { // TODO } |