You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tuscany.apache.org by js...@apache.org on 2007/09/03 11:46:47 UTC
svn commit: r572267 [6/6] - in /incubator/tuscany/java/sca: itest/ modules/
modules/assembly-xml/src/main/java/org/apache/tuscany/sca/assembly/xml/
modules/assembly-xml/src/test/java/org/apache/tuscany/sca/assembly/xml/
modules/binding-jms/src/main/jav...
Modified: incubator/tuscany/java/sca/samples/binding-echo-extension/src/main/java/echo/impl/EchoBindingProcessor.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/samples/binding-echo-extension/src/main/java/echo/impl/EchoBindingProcessor.java?rev=572267&r1=572266&r2=572267&view=diff
==============================================================================
--- incubator/tuscany/java/sca/samples/binding-echo-extension/src/main/java/echo/impl/EchoBindingProcessor.java (original)
+++ incubator/tuscany/java/sca/samples/binding-echo-extension/src/main/java/echo/impl/EchoBindingProcessor.java Mon Sep 3 02:46:41 2007
@@ -21,23 +21,21 @@
import java.util.ArrayList;
import java.util.List;
-import java.util.StringTokenizer;
import javax.xml.namespace.QName;
+import javax.xml.stream.XMLStreamException;
import javax.xml.stream.XMLStreamReader;
import javax.xml.stream.XMLStreamWriter;
+import org.apache.tuscany.sca.assembly.xml.PolicyAttachPointProcessor;
import org.apache.tuscany.sca.contribution.processor.StAXArtifactProcessor;
import org.apache.tuscany.sca.contribution.resolver.ModelResolver;
import org.apache.tuscany.sca.contribution.service.ContributionReadException;
import org.apache.tuscany.sca.contribution.service.ContributionResolveException;
import org.apache.tuscany.sca.contribution.service.ContributionWriteException;
-import org.apache.tuscany.sca.interfacedef.Operation;
import org.apache.tuscany.sca.policy.Intent;
-import org.apache.tuscany.sca.policy.IntentAttachPoint;
import org.apache.tuscany.sca.policy.PolicyFactory;
import org.apache.tuscany.sca.policy.PolicySet;
-import org.apache.tuscany.sca.policy.PolicySetAttachPoint;
import echo.EchoBinding;
import echo.EchoBindingFactory;
@@ -50,11 +48,11 @@
private QName BINDING_ECHO = new QName("http://echo", "binding.echo");
private final EchoBindingFactory factory;
- private PolicyFactory policyFactory;
+ private PolicyAttachPointProcessor policyProcessor;
- public EchoBindingProcessor(EchoBindingFactory factory, PolicyFactory pFactory) {
+ public EchoBindingProcessor(EchoBindingFactory factory, PolicyFactory policyFactory) {
this.factory = factory;
- this.policyFactory = pFactory;
+ this.policyProcessor = new PolicyAttachPointProcessor(policyFactory);
}
public QName getArtifactType() {
@@ -65,72 +63,39 @@
return EchoBinding.class;
}
- public EchoBinding read(XMLStreamReader reader) throws ContributionReadException {
+ public EchoBinding read(XMLStreamReader reader) throws ContributionReadException, XMLStreamException {
EchoBinding echoBinding = factory.createEchoBinding();
String name = reader.getAttributeValue(null, "name");
if (name != null) {
echoBinding.setName(name);
}
+
String uri = reader.getAttributeValue(null, "uri");
if (uri != null) {
echoBinding.setURI(uri);
}
- readPolicies(echoBinding, null, reader);
+ policyProcessor.readPolicies(echoBinding, reader);
+
return echoBinding;
}
- protected QName getQNameValue(XMLStreamReader reader, String value) {
- if (value != null) {
- int index = value.indexOf(':');
- String prefix = index == -1 ? "" : value.substring(0, index);
- String localName = index == -1 ? value : value.substring(index + 1);
- String ns = reader.getNamespaceContext().getNamespaceURI(prefix);
- if (ns == null) {
- ns = "";
- }
- return new QName(ns, localName, prefix);
- } else {
- return null;
- }
- }
-
- protected void readIntents(IntentAttachPoint attachPoint, Operation operation, XMLStreamReader reader) {
- String value = reader.getAttributeValue(null, "requires");
- if (value != null) {
- List<Intent> requiredIntents = attachPoint.getRequiredIntents();
- for (StringTokenizer tokens = new StringTokenizer(value); tokens.hasMoreTokens();) {
- QName qname = getQNameValue(reader, tokens.nextToken());
- Intent intent = policyFactory.createIntent();
- intent.setName(qname);
- if (operation != null) {
- //intent.getOperations().add(operation);
- }
- requiredIntents.add(intent);
- }
- }
- }
-
- protected void readPolicies(PolicySetAttachPoint attachPoint, Operation operation, XMLStreamReader reader) {
- readIntents(attachPoint, operation, reader);
+ public void write(EchoBinding echoBinding, XMLStreamWriter writer) throws ContributionWriteException, XMLStreamException {
- String value = reader.getAttributeValue(null, "policySets");
- if (value != null) {
- List<PolicySet> policySets = attachPoint.getPolicySets();
- for (StringTokenizer tokens = new StringTokenizer(value); tokens.hasMoreTokens();) {
- QName qname = getQNameValue(reader, tokens.nextToken());
- PolicySet policySet = policyFactory.createPolicySet();
- policySet.setName(qname);
- if (operation != null) {
- //policySet.getOperations().add(operation);
- }
- policySets.add(policySet);
- }
+ policyProcessor.writePolicyPrefixes(echoBinding, writer);
+ writer.writeStartElement(BINDING_ECHO.getNamespaceURI(), BINDING_ECHO.getLocalPart());
+ policyProcessor.writePolicyAttributes(echoBinding, writer);
+
+ if (echoBinding.getName() != null) {
+ writer.writeAttribute("name", echoBinding.getName());
}
- }
-
- public void write(EchoBinding echoBinding, XMLStreamWriter writer) throws ContributionWriteException {
+
+ if (echoBinding.getURI() != null) {
+ writer.writeAttribute("uri", echoBinding.getURI());
+ }
+
+ writer.writeEndElement();
}
public void resolve(EchoBinding echoBinding, ModelResolver resolver) throws ContributionResolveException {
Modified: incubator/tuscany/java/sca/samples/binding-echo-extension/src/main/java/echo/provider/policy/WSPolicyProcessor.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/samples/binding-echo-extension/src/main/java/echo/provider/policy/WSPolicyProcessor.java?rev=572267&r1=572266&r2=572267&view=diff
==============================================================================
--- incubator/tuscany/java/sca/samples/binding-echo-extension/src/main/java/echo/provider/policy/WSPolicyProcessor.java (original)
+++ incubator/tuscany/java/sca/samples/binding-echo-extension/src/main/java/echo/provider/policy/WSPolicyProcessor.java Mon Sep 3 02:46:41 2007
@@ -40,21 +40,20 @@
return new QName("http://schemas.xmlsoap.org/ws/2004/09/policy", "PolicyAttachment");
}
- public WSPolicy read(XMLStreamReader arg0) throws ContributionReadException, XMLStreamException {
+ public WSPolicy read(XMLStreamReader reader) throws ContributionReadException, XMLStreamException {
+ //FIXME Implement this method
return new WSPolicy();
}
- public void write(WSPolicy arg0, XMLStreamWriter arg1) throws ContributionWriteException,
- XMLStreamException {
-
+ public void write(WSPolicy wsPolicy, XMLStreamWriter writer) throws ContributionWriteException, XMLStreamException {
+ //FIXME Implement this method
}
public Class<WSPolicy> getModelType() {
- // TODO Auto-generated method stub
return WSPolicy.class;
}
- public void resolve(WSPolicy arg0, ModelResolver arg1) throws ContributionResolveException {
+ public void resolve(WSPolicy wsPolicy, ModelResolver modelResolver) throws ContributionResolveException {
}
}
Modified: incubator/tuscany/java/sca/samples/implementation-pojo-extension/src/main/java/pojo/impl/POJOImplementationProcessor.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/samples/implementation-pojo-extension/src/main/java/pojo/impl/POJOImplementationProcessor.java?rev=572267&r1=572266&r2=572267&view=diff
==============================================================================
--- incubator/tuscany/java/sca/samples/implementation-pojo-extension/src/main/java/pojo/impl/POJOImplementationProcessor.java (original)
+++ incubator/tuscany/java/sca/samples/implementation-pojo-extension/src/main/java/pojo/impl/POJOImplementationProcessor.java Mon Sep 3 02:46:41 2007
@@ -28,6 +28,7 @@
import org.apache.tuscany.sca.assembly.AssemblyFactory;
import org.apache.tuscany.sca.assembly.ComponentType;
import org.apache.tuscany.sca.assembly.Service;
+import org.apache.tuscany.sca.assembly.xml.PolicyAttachPointProcessor;
import org.apache.tuscany.sca.contribution.ModelFactoryExtensionPoint;
import org.apache.tuscany.sca.contribution.processor.StAXArtifactProcessor;
import org.apache.tuscany.sca.contribution.resolver.ClassReference;
@@ -39,6 +40,7 @@
import org.apache.tuscany.sca.interfacedef.java.JavaInterface;
import org.apache.tuscany.sca.interfacedef.java.JavaInterfaceContract;
import org.apache.tuscany.sca.interfacedef.java.JavaInterfaceFactory;
+import org.apache.tuscany.sca.policy.PolicyFactory;
import pojo.POJOImplementation;
import pojo.POJOImplementationFactory;
@@ -57,6 +59,8 @@
private AssemblyFactory assemblyFactory;
private JavaInterfaceFactory javaFactory;
private POJOImplementationFactory pojoImplementationFactory;
+ private PolicyFactory policyFactory;
+ private PolicyAttachPointProcessor policyProcessor;
public POJOImplementationProcessor(ModelFactoryExtensionPoint modelFactories) {
@@ -64,7 +68,9 @@
// create model objects
assemblyFactory = modelFactories.getFactory(AssemblyFactory.class);
javaFactory = modelFactories.getFactory(JavaInterfaceFactory.class);
+ policyFactory = modelFactories.getFactory(PolicyFactory.class);
pojoImplementationFactory = modelFactories.getFactory(POJOImplementationFactory.class);
+ policyProcessor = new PolicyAttachPointProcessor(policyFactory);
}
public QName getArtifactType() {
@@ -80,12 +86,13 @@
public POJOImplementation read(XMLStreamReader reader) throws ContributionReadException, XMLStreamException {
// Read an <implementation.pojo> element
+ POJOImplementation implementation = pojoImplementationFactory.createPOJOImplementation();
+
+ // Read policies
+ policyProcessor.readPolicies(implementation, reader);
// Read the POJO class attribute.
String className = reader.getAttributeValue(null, "class");
-
- // Create the POJO implementation model
- POJOImplementation implementation = pojoImplementationFactory.createPOJOImplementation();
implementation.setPOJOName(className);
// Mark the POJO model unresolved to track the fact that it's not
@@ -150,6 +157,17 @@
implementation.setUnresolved(false);
}
- public void write(POJOImplementation model, XMLStreamWriter outputSource) throws ContributionWriteException {
+ public void write(POJOImplementation implementation, XMLStreamWriter writer) throws ContributionWriteException, XMLStreamException {
+
+ // Write <implementation.pojo> element
+ policyProcessor.writePolicyPrefixes(implementation, writer);
+ writer.writeStartElement(IMPLEMENTATION_POJO.getNamespaceURI(), IMPLEMENTATION_POJO.getLocalPart());
+ policyProcessor.writePolicyAttributes(implementation, writer);
+
+ if (implementation.getPOJOName() != null) {
+ writer.writeAttribute("class", implementation.getPOJOName());
+ }
+
+ writer.writeEndElement();
}
}
Modified: incubator/tuscany/java/sca/samples/pom.xml
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/samples/pom.xml?rev=572267&r1=572266&r2=572267&view=diff
==============================================================================
--- incubator/tuscany/java/sca/samples/pom.xml (original)
+++ incubator/tuscany/java/sca/samples/pom.xml Mon Sep 3 02:46:41 2007
@@ -67,10 +67,10 @@
<module>implementation-notification</module>
<module>implementation-pojo-extension</module>
<module>loanapplication</module>
+ <!--
<module>osgi-supplychain</module>
-<!--
<module>quote-xquery</module>
--->
+ -->
<module>simple-bigbank</module>
<module>simple-bigbank-spring</module>
<module>simple-callback</module>
---------------------------------------------------------------------
To unsubscribe, e-mail: tuscany-commits-unsubscribe@ws.apache.org
For additional commands, e-mail: tuscany-commits-help@ws.apache.org