You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tuscany.apache.org by sl...@apache.org on 2009/06/30 20:54:04 UTC

svn commit: r789877 - /tuscany/branches/sca-java-1.x/modules/binding-http/src/main/java/org/apache/tuscany/sca/binding/http/xml/HTTPBindingProcessor.java

Author: slaws
Date: Tue Jun 30 18:54:04 2009
New Revision: 789877

URL: http://svn.apache.org/viewvc?rev=789877&view=rev
Log:
TUSCANY-3125 - enable policy processing in binding.http. Needs reviewing. 

Modified:
    tuscany/branches/sca-java-1.x/modules/binding-http/src/main/java/org/apache/tuscany/sca/binding/http/xml/HTTPBindingProcessor.java

Modified: tuscany/branches/sca-java-1.x/modules/binding-http/src/main/java/org/apache/tuscany/sca/binding/http/xml/HTTPBindingProcessor.java
URL: http://svn.apache.org/viewvc/tuscany/branches/sca-java-1.x/modules/binding-http/src/main/java/org/apache/tuscany/sca/binding/http/xml/HTTPBindingProcessor.java?rev=789877&r1=789876&r2=789877&view=diff
==============================================================================
--- tuscany/branches/sca-java-1.x/modules/binding-http/src/main/java/org/apache/tuscany/sca/binding/http/xml/HTTPBindingProcessor.java (original)
+++ tuscany/branches/sca-java-1.x/modules/binding-http/src/main/java/org/apache/tuscany/sca/binding/http/xml/HTTPBindingProcessor.java Tue Jun 30 18:54:04 2009
@@ -31,6 +31,7 @@
 import org.apache.tuscany.sca.assembly.WireFormat;
 import org.apache.tuscany.sca.assembly.builder.impl.ProblemImpl;
 import org.apache.tuscany.sca.assembly.xml.Constants;
+import org.apache.tuscany.sca.assembly.xml.PolicyAttachPointProcessor;
 import org.apache.tuscany.sca.binding.http.HTTPBinding;
 import org.apache.tuscany.sca.binding.http.HTTPBindingFactory;
 import org.apache.tuscany.sca.contribution.ModelFactoryExtensionPoint;
@@ -45,6 +46,7 @@
 import org.apache.tuscany.sca.monitor.Monitor;
 import org.apache.tuscany.sca.monitor.Problem;
 import org.apache.tuscany.sca.monitor.Problem.Severity;
+import org.apache.tuscany.sca.policy.PolicyFactory;
 
 public class HTTPBindingProcessor extends BaseStAXArtifactProcessor implements StAXArtifactProcessor<HTTPBinding> {
     private static final String BINDING_HTTP = "binding.http";
@@ -56,6 +58,8 @@
     private HTTPBindingFactory httpBindingFactory;
     private StAXArtifactProcessor<Object> extensionProcessor;
     private StAXAttributeProcessor<Object> extensionAttributeProcessor;
+    private PolicyFactory policyFactory;
+    private PolicyAttachPointProcessor policyProcessor;
     private Monitor monitor;
 
     public HTTPBindingProcessor(ExtensionPointRegistry extensionPoints, 
@@ -66,6 +70,8 @@
         this.httpBindingFactory = modelFactories.getFactory(HTTPBindingFactory.class);
         this.extensionProcessor = (StAXArtifactProcessor<Object>)extensionProcessor;
         this.extensionAttributeProcessor = extensionAttributeProcessor;
+        this.policyFactory = modelFactories.getFactory(PolicyFactory.class);
+        this.policyProcessor = new PolicyAttachPointProcessor(policyFactory);
         this.monitor = monitor;
     }
     
@@ -80,6 +86,9 @@
     public HTTPBinding read(XMLStreamReader reader) throws ContributionReadException, XMLStreamException {
         HTTPBinding httpBinding = httpBindingFactory.createHTTPBinding();
         
+        // Read policies
+        policyProcessor.readPolicies(httpBinding, reader);
+        
         while(reader.hasNext()) {
             QName elementName = null;
             int event = reader.getEventType();
@@ -128,8 +137,11 @@
         //writer.writeStartElement(Constants.SCA10_NS, BINDING_HTTP);
         
         writeStart(writer, BINDING_HTTP_QNAME.getNamespaceURI(), BINDING_HTTP_QNAME.getLocalPart());
+
+        //write policies
+        policyProcessor.writePolicyAttributes(httpBinding, writer);
         
-        // Write binding name
+        // Write binding name
         if (httpBinding.getName() != null) {
             writer.writeAttribute(NAME, httpBinding.getName());
         }
@@ -151,9 +163,8 @@
     }
 
 
-    public void resolve(HTTPBinding model, ModelResolver resolver) throws ContributionResolveException {
-        // Should not need to do anything here for now... 
-        
+    public void resolve(HTTPBinding model, ModelResolver resolver) throws ContributionResolveException {      
+        policyProcessor.resolvePolicies(model, resolver);    
     }
     
     /**