You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tuscany.apache.org by lr...@apache.org on 2010/03/04 02:19:56 UTC

svn commit: r918808 - in /tuscany/sca-java-2.x/trunk/modules/policy-transaction/src: main/java/org/apache/tuscany/sca/policy/transaction/ main/java/org/apache/tuscany/sca/policy/transaction/impl/ main/resources/META-INF/services/ test/java/org/apache/t...

Author: lresende
Date: Thu Mar  4 01:19:55 2010
New Revision: 918808

URL: http://svn.apache.org/viewvc?rev=918808&view=rev
Log:
Providing TransactionPolicyFactory and avoiding direct access to TransactionPolicyImpl following pattern used in other tuscany modules

Added:
    tuscany/sca-java-2.x/trunk/modules/policy-transaction/src/main/java/org/apache/tuscany/sca/policy/transaction/TransactionPolicyFactory.java   (with props)
    tuscany/sca-java-2.x/trunk/modules/policy-transaction/src/main/java/org/apache/tuscany/sca/policy/transaction/impl/
    tuscany/sca-java-2.x/trunk/modules/policy-transaction/src/main/java/org/apache/tuscany/sca/policy/transaction/impl/TransactionPolicyFactoryImpl.java
      - copied, changed from r918796, tuscany/sca-java-2.x/trunk/modules/policy-transaction/src/main/java/org/apache/tuscany/sca/policy/transaction/TransactionPolicyImpl.java
    tuscany/sca-java-2.x/trunk/modules/policy-transaction/src/main/java/org/apache/tuscany/sca/policy/transaction/impl/TransactionPolicyImpl.java   (contents, props changed)
      - copied, changed from r918796, tuscany/sca-java-2.x/trunk/modules/policy-transaction/src/main/java/org/apache/tuscany/sca/policy/transaction/TransactionPolicyImpl.java
    tuscany/sca-java-2.x/trunk/modules/policy-transaction/src/main/resources/META-INF/services/org.apache.tuscany.sca.policy.transaction.TransactionPolicyFactory
Removed:
    tuscany/sca-java-2.x/trunk/modules/policy-transaction/src/main/java/org/apache/tuscany/sca/policy/transaction/TransactionPolicyImpl.java
Modified:
    tuscany/sca-java-2.x/trunk/modules/policy-transaction/src/main/java/org/apache/tuscany/sca/policy/transaction/TransactionPolicyProcessor.java
    tuscany/sca-java-2.x/trunk/modules/policy-transaction/src/test/java/org/apache/tuscany/sca/policy/transaction/PolicyReadTestCase.java

Added: tuscany/sca-java-2.x/trunk/modules/policy-transaction/src/main/java/org/apache/tuscany/sca/policy/transaction/TransactionPolicyFactory.java
URL: http://svn.apache.org/viewvc/tuscany/sca-java-2.x/trunk/modules/policy-transaction/src/main/java/org/apache/tuscany/sca/policy/transaction/TransactionPolicyFactory.java?rev=918808&view=auto
==============================================================================
--- tuscany/sca-java-2.x/trunk/modules/policy-transaction/src/main/java/org/apache/tuscany/sca/policy/transaction/TransactionPolicyFactory.java (added)
+++ tuscany/sca-java-2.x/trunk/modules/policy-transaction/src/main/java/org/apache/tuscany/sca/policy/transaction/TransactionPolicyFactory.java Thu Mar  4 01:19:55 2010
@@ -0,0 +1,34 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ * 
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.    
+ */
+
+package org.apache.tuscany.sca.policy.transaction;
+
+/**
+ * Factory for Policy Transaction
+ * 
+ * @version $Rev$ $Date$
+ */
+public interface TransactionPolicyFactory {
+
+    /**
+     * Creates a new Transaction Policy
+     * @return the new Transaction policy
+     */
+    TransactionPolicy createTransactionPolicy();
+}

Propchange: tuscany/sca-java-2.x/trunk/modules/policy-transaction/src/main/java/org/apache/tuscany/sca/policy/transaction/TransactionPolicyFactory.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: tuscany/sca-java-2.x/trunk/modules/policy-transaction/src/main/java/org/apache/tuscany/sca/policy/transaction/TransactionPolicyFactory.java
------------------------------------------------------------------------------
    svn:keywords = Rev Date

Modified: tuscany/sca-java-2.x/trunk/modules/policy-transaction/src/main/java/org/apache/tuscany/sca/policy/transaction/TransactionPolicyProcessor.java
URL: http://svn.apache.org/viewvc/tuscany/sca-java-2.x/trunk/modules/policy-transaction/src/main/java/org/apache/tuscany/sca/policy/transaction/TransactionPolicyProcessor.java?rev=918808&r1=918807&r2=918808&view=diff
==============================================================================
--- tuscany/sca-java-2.x/trunk/modules/policy-transaction/src/main/java/org/apache/tuscany/sca/policy/transaction/TransactionPolicyProcessor.java (original)
+++ tuscany/sca-java-2.x/trunk/modules/policy-transaction/src/main/java/org/apache/tuscany/sca/policy/transaction/TransactionPolicyProcessor.java Thu Mar  4 01:19:55 2010
@@ -32,6 +32,7 @@
 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 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 @@
         // TODO 
     }
 
-    public Class<TransactionPolicy> getModelType() {
-        return TransactionPolicy.class;
-    }
-
     public void resolve(TransactionPolicy policy, ModelResolver resolver, ProcessorContext context) throws ContributionResolveException {
         // TODO
     }

Copied: tuscany/sca-java-2.x/trunk/modules/policy-transaction/src/main/java/org/apache/tuscany/sca/policy/transaction/impl/TransactionPolicyFactoryImpl.java (from r918796, tuscany/sca-java-2.x/trunk/modules/policy-transaction/src/main/java/org/apache/tuscany/sca/policy/transaction/TransactionPolicyImpl.java)
URL: http://svn.apache.org/viewvc/tuscany/sca-java-2.x/trunk/modules/policy-transaction/src/main/java/org/apache/tuscany/sca/policy/transaction/impl/TransactionPolicyFactoryImpl.java?p2=tuscany/sca-java-2.x/trunk/modules/policy-transaction/src/main/java/org/apache/tuscany/sca/policy/transaction/impl/TransactionPolicyFactoryImpl.java&p1=tuscany/sca-java-2.x/trunk/modules/policy-transaction/src/main/java/org/apache/tuscany/sca/policy/transaction/TransactionPolicyImpl.java&r1=918796&r2=918808&rev=918808&view=diff
==============================================================================
--- tuscany/sca-java-2.x/trunk/modules/policy-transaction/src/main/java/org/apache/tuscany/sca/policy/transaction/TransactionPolicyImpl.java (original)
+++ tuscany/sca-java-2.x/trunk/modules/policy-transaction/src/main/java/org/apache/tuscany/sca/policy/transaction/impl/TransactionPolicyFactoryImpl.java Thu Mar  4 01:19:55 2010
@@ -17,43 +17,20 @@
  * under the License.    
  */
 
-package org.apache.tuscany.sca.policy.transaction;
+package org.apache.tuscany.sca.policy.transaction.impl;
 
-import javax.xml.namespace.QName;
+import org.apache.tuscany.sca.policy.transaction.TransactionPolicy;
+import org.apache.tuscany.sca.policy.transaction.TransactionPolicyFactory;
 
 /**
+ * Implementation for Transaction Policy factory
+ * 
  * @version $Rev$ $Date$
  */
-public class TransactionPolicyImpl implements TransactionPolicy {
-    private boolean unresolved;
-    private int transactionTimeout = 1200;
-    private Action action = Action.PROPAGATE;
+public class TransactionPolicyFactoryImpl implements TransactionPolicyFactory {
 
-    public int getTransactionTimeout() {
-        return transactionTimeout;
+    public TransactionPolicy createTransactionPolicy() {
+        return new TransactionPolicyImpl();
     }
 
-    public void setTransactionTimeout(int transactionTimeout) {
-        this.transactionTimeout = transactionTimeout;
-    }
-
-    public Action getAction() {
-        return action;
-    }
-
-    public void setAction(Action policy) {
-        this.action = policy;
-    }
-
-    public QName getSchemaName() {
-        return NAME;
-    }
-
-    public boolean isUnresolved() {
-        return unresolved;
-    }
-
-    public void setUnresolved(boolean unresolved) {
-        this.unresolved = unresolved;
-    }
 }

Copied: tuscany/sca-java-2.x/trunk/modules/policy-transaction/src/main/java/org/apache/tuscany/sca/policy/transaction/impl/TransactionPolicyImpl.java (from r918796, tuscany/sca-java-2.x/trunk/modules/policy-transaction/src/main/java/org/apache/tuscany/sca/policy/transaction/TransactionPolicyImpl.java)
URL: http://svn.apache.org/viewvc/tuscany/sca-java-2.x/trunk/modules/policy-transaction/src/main/java/org/apache/tuscany/sca/policy/transaction/impl/TransactionPolicyImpl.java?p2=tuscany/sca-java-2.x/trunk/modules/policy-transaction/src/main/java/org/apache/tuscany/sca/policy/transaction/impl/TransactionPolicyImpl.java&p1=tuscany/sca-java-2.x/trunk/modules/policy-transaction/src/main/java/org/apache/tuscany/sca/policy/transaction/TransactionPolicyImpl.java&r1=918796&r2=918808&rev=918808&view=diff
==============================================================================
--- tuscany/sca-java-2.x/trunk/modules/policy-transaction/src/main/java/org/apache/tuscany/sca/policy/transaction/TransactionPolicyImpl.java (original)
+++ tuscany/sca-java-2.x/trunk/modules/policy-transaction/src/main/java/org/apache/tuscany/sca/policy/transaction/impl/TransactionPolicyImpl.java Thu Mar  4 01:19:55 2010
@@ -17,10 +17,13 @@
  * under the License.    
  */
 
-package org.apache.tuscany.sca.policy.transaction;
+package org.apache.tuscany.sca.policy.transaction.impl;
 
 import javax.xml.namespace.QName;
 
+import org.apache.tuscany.sca.policy.transaction.TransactionPolicy;
+import org.apache.tuscany.sca.policy.transaction.TransactionPolicy.Action;
+
 /**
  * @version $Rev$ $Date$
  */

Propchange: tuscany/sca-java-2.x/trunk/modules/policy-transaction/src/main/java/org/apache/tuscany/sca/policy/transaction/impl/TransactionPolicyImpl.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: tuscany/sca-java-2.x/trunk/modules/policy-transaction/src/main/java/org/apache/tuscany/sca/policy/transaction/impl/TransactionPolicyImpl.java
------------------------------------------------------------------------------
    svn:keywords = Rev Date

Added: tuscany/sca-java-2.x/trunk/modules/policy-transaction/src/main/resources/META-INF/services/org.apache.tuscany.sca.policy.transaction.TransactionPolicyFactory
URL: http://svn.apache.org/viewvc/tuscany/sca-java-2.x/trunk/modules/policy-transaction/src/main/resources/META-INF/services/org.apache.tuscany.sca.policy.transaction.TransactionPolicyFactory?rev=918808&view=auto
==============================================================================
--- tuscany/sca-java-2.x/trunk/modules/policy-transaction/src/main/resources/META-INF/services/org.apache.tuscany.sca.policy.transaction.TransactionPolicyFactory (added)
+++ tuscany/sca-java-2.x/trunk/modules/policy-transaction/src/main/resources/META-INF/services/org.apache.tuscany.sca.policy.transaction.TransactionPolicyFactory Thu Mar  4 01:19:55 2010
@@ -0,0 +1,19 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License.  You may obtain a copy of the License at
+# 
+#   http://www.apache.org/licenses/LICENSE-2.0
+# 
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied.  See the License for the
+# specific language governing permissions and limitations
+# under the License. 
+
+# Implementation class for the model factory
+org.apache.tuscany.sca.policy.transaction.impl.TransactionPolicyFactoryImpl

Modified: tuscany/sca-java-2.x/trunk/modules/policy-transaction/src/test/java/org/apache/tuscany/sca/policy/transaction/PolicyReadTestCase.java
URL: http://svn.apache.org/viewvc/tuscany/sca-java-2.x/trunk/modules/policy-transaction/src/test/java/org/apache/tuscany/sca/policy/transaction/PolicyReadTestCase.java?rev=918808&r1=918807&r2=918808&view=diff
==============================================================================
--- tuscany/sca-java-2.x/trunk/modules/policy-transaction/src/test/java/org/apache/tuscany/sca/policy/transaction/PolicyReadTestCase.java (original)
+++ tuscany/sca-java-2.x/trunk/modules/policy-transaction/src/test/java/org/apache/tuscany/sca/policy/transaction/PolicyReadTestCase.java Thu Mar  4 01:19:55 2010
@@ -25,6 +25,8 @@
 import javax.xml.stream.XMLStreamReader;
 
 import org.apache.tuscany.sca.contribution.processor.ProcessorContext;
+import org.apache.tuscany.sca.core.DefaultExtensionPointRegistry;
+import org.apache.tuscany.sca.core.ExtensionPointRegistry;
 
 import junit.framework.TestCase;
 
@@ -40,8 +42,8 @@
     }
 
     public void testPolicyReading() throws Exception {
-
-        TransactionPolicyProcessor processor = new TransactionPolicyProcessor(null);
+        ExtensionPointRegistry extensionPoints = new DefaultExtensionPointRegistry();
+        TransactionPolicyProcessor processor = new TransactionPolicyProcessor(extensionPoints);
 
         URL url = getClass().getResource("/org/apache/tuscany/sca/policy/transaction/definitions.xml");
         XMLInputFactory inputFactory = XMLInputFactory.newInstance();