diff options
author | rfeng <rfeng@13f79535-47bb-0310-9956-ffa450edef68> | 2009-06-23 22:48:13 +0000 |
---|---|---|
committer | rfeng <rfeng@13f79535-47bb-0310-9956-ffa450edef68> | 2009-06-23 22:48:13 +0000 |
commit | 90ba7b1a18706b434520d531358619438a43b4f0 (patch) | |
tree | 4c571d7829da8a0df07368ac51292bc07db5526e /java/sca/modules/assembly-xml/src | |
parent | 40ddf83655bc926c1babc72ba36a1c658eadb516 (diff) |
Add a QName as the type for binding/implementation and use it to compare model types instead of class
git-svn-id: http://svn.us.apache.org/repos/asf/tuscany@787865 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'java/sca/modules/assembly-xml/src')
4 files changed, 177 insertions, 173 deletions
diff --git a/java/sca/modules/assembly-xml/src/main/java/org/apache/tuscany/sca/assembly/xml/CompositeProcessor.java b/java/sca/modules/assembly-xml/src/main/java/org/apache/tuscany/sca/assembly/xml/CompositeProcessor.java index 7a2eba494f..59465b9700 100644 --- a/java/sca/modules/assembly-xml/src/main/java/org/apache/tuscany/sca/assembly/xml/CompositeProcessor.java +++ b/java/sca/modules/assembly-xml/src/main/java/org/apache/tuscany/sca/assembly/xml/CompositeProcessor.java @@ -6,15 +6,15 @@ * 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. + * under the License. */ package org.apache.tuscany.sca.assembly.xml; @@ -107,8 +107,8 @@ import org.apache.tuscany.sca.policy.PolicySubject; import org.w3c.dom.Document; /** - * A composite processor. - * + * A composite processor. + * * @version $Rev$ $Date$ */ public class CompositeProcessor extends BaseAssemblyProcessor implements StAXArtifactProcessor<Composite> { @@ -117,29 +117,29 @@ public class CompositeProcessor extends BaseAssemblyProcessor implements StAXArt private StAXAttributeProcessor<Object> extensionAttributeProcessor; private ContributionFactory contributionFactory; - + /** * Construct a new composite processor - * + * * @param extensionPoints * @param extensionProcessor */ public CompositeProcessor(ExtensionPointRegistry extensionPoints, StAXArtifactProcessor extensionProcessor, - StAXAttributeProcessor extensionAttributeProcessor, + StAXAttributeProcessor extensionAttributeProcessor, Monitor monitor) { - - this(modelFactories(extensionPoints), - extensionProcessor, - extensionAttributeProcessor, + + this(modelFactories(extensionPoints), + extensionProcessor, + extensionAttributeProcessor, monitor(extensionPoints)); - + this.extensionAttributeProcessor = extensionAttributeProcessor; } - + /** * Constructs a new composite processor - * + * * @param modelFactories * @param extensionProcessor * @param monitor @@ -148,15 +148,15 @@ public class CompositeProcessor extends BaseAssemblyProcessor implements StAXArt StAXArtifactProcessor extensionProcessor, StAXAttributeProcessor extensionAttributeProcessor, Monitor monitor) { - + super(modelFactories, extensionProcessor, monitor); this.intentAttachPointTypeFactory = modelFactories.getFactory(PolicyFactory.class); this.xPathFactory = modelFactories.getFactory(XPathFactory.class); this.contributionFactory = modelFactories.getFactory(ContributionFactory.class); this.extensionAttributeProcessor = extensionAttributeProcessor; - + } - + public Composite read(XMLStreamReader reader) throws ContributionReadException { Composite composite = null; Composite include = null; @@ -179,60 +179,60 @@ public class CompositeProcessor extends BaseAssemblyProcessor implements StAXArt switch (event) { case START_ELEMENT: name = reader.getName(); - + if (COMPOSITE_QNAME.equals(name)) { - + // Read a <composite> composite = assemblyFactory.createComposite(); composite.setSpecVersion(Constants.SCA11_NS); - + composite.setName(new QName(getString(reader, TARGET_NAMESPACE), getString(reader, NAME))); - + if(!isSet(reader, TARGET_NAMESPACE)){ // spec says that a composite must have a namespace - warning("NoCompositeNamespace", composite, composite.getName().toString()); + warning("NoCompositeNamespace", composite, composite.getName().toString()); } - + if(isSet(reader, AUTOWIRE)) { composite.setAutowire(getBoolean(reader, AUTOWIRE)); } - + //handle extension attributes this.readExtendedAttributes(reader, name, composite, extensionAttributeProcessor); - + composite.setLocal(getBoolean(reader, LOCAL)); composite.setConstrainingType(readConstrainingType(reader)); policyProcessor.readPolicies(composite, reader); - + } else if (INCLUDE_QNAME.equals(name)) { - + // Read an <include> include = assemblyFactory.createComposite(); include.setName(getQName(reader, NAME)); include.setURI(getString(reader, URI)); include.setUnresolved(true); composite.getIncludes().add(include); - + } else if (SERVICE_QNAME.equals(name)) { if (component != null) { - + // Read a <component><service> componentService = assemblyFactory.createComponentService(); contract = componentService; componentService.setName(getString(reader, NAME)); - + //handle extension attributes this.readExtendedAttributes(reader, name, componentService, extensionAttributeProcessor); - + component.getServices().add(componentService); policyProcessor.readPolicies(contract, reader); } else { - + // Read a <composite><service> compositeService = assemblyFactory.createCompositeService(); contract = compositeService; compositeService.setName(getString(reader, NAME)); - + String promoted = getString(reader, PROMOTE); if (promoted != null) { String promotedComponentName; @@ -245,25 +245,25 @@ public class CompositeProcessor extends BaseAssemblyProcessor implements StAXArt promotedComponentName = promoted.substring(0, s); promotedServiceName = promoted.substring(s + 1); } - + Component promotedComponent = assemblyFactory.createComponent(); promotedComponent.setUnresolved(true); promotedComponent.setName(promotedComponentName); compositeService.setPromotedComponent(promotedComponent); - + ComponentService promotedService = assemblyFactory.createComponentService(); promotedService.setUnresolved(true); promotedService.setName(promotedServiceName); compositeService.setPromotedService(promotedService); } - + //handle extension attributes this.readExtendedAttributes(reader, name, compositeService, extensionAttributeProcessor); - + composite.getServices().add(compositeService); policyProcessor.readPolicies(contract, reader); } - + } else if (REFERENCE_QNAME.equals(name)) { if (component != null) { // Read a <component><reference> @@ -281,10 +281,10 @@ public class CompositeProcessor extends BaseAssemblyProcessor implements StAXArt } readTargets(componentReference, reader); componentReference.setWiredByImpl(getBoolean(reader, WIRED_BY_IMPL)); - + //handle extension attributes this.readExtendedAttributes(reader, name, componentReference, extensionAttributeProcessor); - + component.getReferences().add(componentReference); policyProcessor.readPolicies(contract, reader); } else { @@ -303,7 +303,7 @@ public class CompositeProcessor extends BaseAssemblyProcessor implements StAXArt if (index == -1) { error("Invalid reference name", compositeReference, refName); } - String promotedComponentName = refName.substring(0, index); + String promotedComponentName = refName.substring(0, index); promotedComponent.setName(promotedComponentName); promotedComponent.setUnresolved(true); compositeReference.getPromotedComponents().add(promotedComponent); @@ -315,17 +315,17 @@ public class CompositeProcessor extends BaseAssemblyProcessor implements StAXArt } } compositeReference.setWiredByImpl(getBoolean(reader, WIRED_BY_IMPL)); - + //handle extension attributes this.readExtendedAttributes(reader, name, compositeReference, extensionAttributeProcessor); - - composite.getReferences().add(compositeReference); + + composite.getReferences().add(compositeReference); policyProcessor.readPolicies(contract, reader); } - + } else if (PROPERTY_QNAME.equals(name)) { if (component != null) { - + // Read a <component><property> componentProperty = assemblyFactory.createComponentProperty(); property = componentProperty; @@ -359,41 +359,41 @@ public class CompositeProcessor extends BaseAssemblyProcessor implements StAXArt } } componentProperty.setFile(getString(reader, FILE)); - + //handle extension attributes this.readExtendedAttributes(reader, name, componentProperty, extensionAttributeProcessor); - + policyProcessor.readPolicies(property, reader); readAbstractProperty(componentProperty, reader); - + // Read the property value Document value = readPropertyValue(property.getXSDElement(), property.getXSDType(), reader); property.setValue(value); - + component.getProperties().add(componentProperty); } else { - + // Read a <composite><property> property = assemblyFactory.createProperty(); policyProcessor.readPolicies(property, reader); readAbstractProperty(property, reader); - + // Read the property value Document value = readPropertyValue(property.getXSDElement(), property.getXSDType(), reader); property.setValue(value); - + composite.getProperties().add(property); } - + // TUSCANY-1949 // If the property doesn't have a value, the END_ELEMENT event is read by the readPropertyValue if (reader.getEventType() == END_ELEMENT && PROPERTY_QNAME.equals(reader.getName())) { property = null; componentProperty = null; } - + } else if (COMPONENT_QNAME.equals(name)) { - + // Read a <component> component = assemblyFactory.createComponent(); component.setName(getString(reader, NAME)); @@ -403,70 +403,70 @@ public class CompositeProcessor extends BaseAssemblyProcessor implements StAXArt if (isSet(reader, URI)) { component.setURI(getString(reader, URI)); } - + //handle extension attributes this.readExtendedAttributes(reader, name, component, extensionAttributeProcessor); - + component.setConstrainingType(readConstrainingType(reader)); composite.getComponents().add(component); policyProcessor.readPolicies(component, reader); - + } else if (WIRE_QNAME.equals(name)) { - + // Read a <wire> wire = assemblyFactory.createWire(); ComponentReference source = assemblyFactory.createComponentReference(); source.setUnresolved(true); source.setName(getString(reader, SOURCE)); wire.setSource(source); - + ComponentService target = assemblyFactory.createComponentService(); target.setUnresolved(true); target.setName(getString(reader, TARGET)); wire.setTarget(target); - + // Read @replace String replace = reader.getAttributeValue(null, REPLACE); if (replace != null) { wire.setReplace(Boolean.parseBoolean(replace)); } - + //handle extension attributes this.readExtendedAttributes(reader, name, wire, extensionAttributeProcessor); - + composite.getWires().add(wire); policyProcessor.readPolicies(wire, reader); - + } else if (CALLBACK_QNAME.equals(name)) { - + // Read a <callback> callback = assemblyFactory.createCallback(); contract.setCallback(callback); - + //handle extension attributes this.readExtendedAttributes(reader, name, callback, extensionAttributeProcessor); - + policyProcessor.readPolicies(callback, reader); - + } else if (IMPLEMENTATION_COMPOSITE_QNAME.equals(name)) { - + // Read an implementation.composite Composite implementation = assemblyFactory.createComposite(); implementation.setName(getQName(reader, NAME)); implementation.setUnresolved(true); - + //handle extension attributes this.readExtendedAttributes(reader, name, implementation, extensionAttributeProcessor); - + component.setImplementation(implementation); policyProcessor.readPolicies(implementation, reader); } else { - + // Read an extension element Object extension = extensionProcessor.read(reader); if (extension != null) { if (extension instanceof InterfaceContract) { - + // <service><interface> and // <reference><interface> if (contract != null) { @@ -484,7 +484,7 @@ public class CompositeProcessor extends BaseAssemblyProcessor implements StAXArt ExtensionType bindingType = intentAttachPointTypeFactory.createBindingType(); bindingType.setType(name); bindingType.setUnresolved(true); - ((PolicySubject)extension).setType(bindingType); + ((PolicySubject)extension).setExtensionType(bindingType); } // <service><binding> and // <reference><binding> @@ -502,13 +502,13 @@ public class CompositeProcessor extends BaseAssemblyProcessor implements StAXArt } } } - + } else if (extension instanceof Implementation) { if ( extension instanceof PolicySubject ) { ExtensionType implType = intentAttachPointTypeFactory.createImplementationType(); implType.setType(name); implType.setUnresolved(true); - ((PolicySubject)extension).setType(implType); + ((PolicySubject)extension).setExtensionType(implType); } // <component><implementation> if (component != null) { @@ -522,7 +522,7 @@ public class CompositeProcessor extends BaseAssemblyProcessor implements StAXArt } } } else { - + // Add the extension element to the current // element if (callback != null) { @@ -540,13 +540,13 @@ public class CompositeProcessor extends BaseAssemblyProcessor implements StAXArt } } break; - + case XMLStreamConstants.CHARACTERS: break; - + case END_ELEMENT: name = reader.getName(); - + // Clear current state when reading reaching end element if (SERVICE_QNAME.equals(name)) { componentService = null; @@ -570,7 +570,7 @@ public class CompositeProcessor extends BaseAssemblyProcessor implements StAXArt } break; } - + // Read the next element if (reader.hasNext()) { reader.next(); @@ -581,7 +581,7 @@ public class CompositeProcessor extends BaseAssemblyProcessor implements StAXArt ContributionReadException ex = new ContributionReadException(e); error("XMLStreamException", reader, ex); } - + return composite; } @@ -596,7 +596,7 @@ public class CompositeProcessor extends BaseAssemblyProcessor implements StAXArt new XAttr(LOCAL, composite.isLocal() ? Boolean.TRUE : null), new XAttr(AUTOWIRE, composite.getAutowire()), policyProcessor.writePolicies(composite)); - + //write extended attributes this.writeExtendedAttributes(writer, composite, extensionAttributeProcessor); @@ -610,7 +610,7 @@ public class CompositeProcessor extends BaseAssemblyProcessor implements StAXArt //write extended attributes this.writeExtendedAttributes(writer, include, extensionAttributeProcessor); - + writeEnd(writer); } @@ -631,11 +631,11 @@ public class CompositeProcessor extends BaseAssemblyProcessor implements StAXArt } writeStart(writer, SERVICE, new XAttr(NAME, service.getName()), new XAttr(PROMOTE, promote), policyProcessor.writePolicies(service)); - + //write extended attributes this.writeExtendedAttributes(writer, service, extensionAttributeProcessor); - + // Write service interface extensionProcessor.write(service.getInterfaceContract(), writer); @@ -649,7 +649,7 @@ public class CompositeProcessor extends BaseAssemblyProcessor implements StAXArt Callback callback = service.getCallback(); writeStart(writer, CALLBACK, policyProcessor.writePolicies(callback)); - + //write extended attributes this.writeExtendedAttributes(writer, callback, extensionAttributeProcessor); @@ -657,12 +657,12 @@ public class CompositeProcessor extends BaseAssemblyProcessor implements StAXArt for (Binding binding : callback.getBindings()) { extensionProcessor.write(binding, writer); } - - // Write extensions + + // Write extensions for (Object extension : callback.getExtensions()) { extensionProcessor.write(extension, writer); } - + writeEnd(writer); } @@ -670,7 +670,7 @@ public class CompositeProcessor extends BaseAssemblyProcessor implements StAXArt for (Object extension : service.getExtensions()) { extensionProcessor.write(extension, writer); } - + writeEnd(writer); } @@ -680,15 +680,15 @@ public class CompositeProcessor extends BaseAssemblyProcessor implements StAXArt new XAttr(URI, component.getURI()), new XAttr(AUTOWIRE, component.getAutowire()), policyProcessor.writePolicies(component)); - + //write extended attributes this.writeExtendedAttributes(writer, component, extensionAttributeProcessor); - + // Write the component implementation Implementation implementation = component.getImplementation(); if (implementation instanceof Composite) { writeStart(writer, IMPLEMENTATION_COMPOSITE, new XAttr(NAME, ((Composite)implementation).getName())); - + //write extended attributes this.writeExtendedAttributes(writer, (Composite)implementation, extensionAttributeProcessor); @@ -696,11 +696,11 @@ public class CompositeProcessor extends BaseAssemblyProcessor implements StAXArt } else { extensionProcessor.write(component.getImplementation(), writer); } - + for (Object extension : component.getExtensions()) { extensionProcessor.write(extension, writer); - } - + } + // Write <service> elements for (ComponentService service : component.getServices()) { writeStart(writer, SERVICE, new XAttr(NAME, service.getName()), @@ -711,12 +711,12 @@ public class CompositeProcessor extends BaseAssemblyProcessor implements StAXArt // Write service interface extensionProcessor.write(service.getInterfaceContract(), writer); - + // Write bindings for (Binding binding : service.getBindings()) { extensionProcessor.write(binding, writer); } - + // Write <callback> element if (service.getCallback() != null) { Callback callback = service.getCallback(); @@ -729,32 +729,32 @@ public class CompositeProcessor extends BaseAssemblyProcessor implements StAXArt for (Binding binding : callback.getBindings()) { extensionProcessor.write(binding, writer); } - - // Write extensions + + // Write extensions for (Object extension : callback.getExtensions()) { extensionProcessor.write(extension, writer); } - + writeEnd(writer); } - + // Write extensions for (Object extension : service.getExtensions()) { extensionProcessor.write(extension, writer); } - + writeEnd(writer); } - + // Write <reference> elements for (ComponentReference reference : component.getReferences()) { - writeStart(writer, - REFERENCE, - new XAttr(NAME, reference.getName()), - new XAttr(AUTOWIRE, reference.getAutowire()), - (reference.isNonOverridable() ? new XAttr(NONOVERRIDABLE, true) : null), - writeMultiplicity(reference), - writeTargets(reference), + writeStart(writer, + REFERENCE, + new XAttr(NAME, reference.getName()), + new XAttr(AUTOWIRE, reference.getAutowire()), + (reference.isNonOverridable() ? new XAttr(NONOVERRIDABLE, true) : null), + writeMultiplicity(reference), + writeTargets(reference), policyProcessor.writePolicies(reference)); //write extended attributes @@ -767,12 +767,12 @@ public class CompositeProcessor extends BaseAssemblyProcessor implements StAXArt for (Binding binding : reference.getBindings()) { extensionProcessor.write(binding, writer); } - + // Write callback if (reference.getCallback() != null) { Callback callback = reference.getCallback(); writeStart(writer, CALLBACK, policyProcessor.writePolicies(callback)); - + //write extended attributes this.writeExtendedAttributes(writer, callback, extensionAttributeProcessor); @@ -780,23 +780,23 @@ public class CompositeProcessor extends BaseAssemblyProcessor implements StAXArt for (Binding binding : callback.getBindings()) { extensionProcessor.write(binding, writer); } - + // Write extensions for (Object extensions : callback.getExtensions()) { extensionProcessor.write(extensions, writer); } - + writeEnd(writer); } - + // Write extensions for (Object extensions : reference.getExtensions()) { extensionProcessor.write(extensions, writer); } - + writeEnd(writer); } - + // Write <property> elements for (ComponentProperty property : component.getProperties()) { writeStart(writer, @@ -823,7 +823,7 @@ public class CompositeProcessor extends BaseAssemblyProcessor implements StAXArt writeEnd(writer); } - + writeEnd(writer); } @@ -836,7 +836,7 @@ public class CompositeProcessor extends BaseAssemblyProcessor implements StAXArt for (ComponentReference promoted: compositeReference.getPromotedReferences()) { promote.add(promoted.getName()); } - + // Write <reference> element writeStart(writer, REFERENCE, new XAttr(NAME, reference.getName()), new XAttr(PROMOTE, promote), @@ -848,17 +848,17 @@ public class CompositeProcessor extends BaseAssemblyProcessor implements StAXArt // Write reference interface extensionProcessor.write(reference.getInterfaceContract(), writer); - + // Write bindings for (Binding binding : reference.getBindings()) { extensionProcessor.write(binding, writer); } - + // Write <callback> element if (reference.getCallback() != null) { Callback callback = reference.getCallback(); writeStart(writer, CALLBACK); - + //write extended attributes this.writeExtendedAttributes(writer, callback, extensionAttributeProcessor); @@ -866,20 +866,20 @@ public class CompositeProcessor extends BaseAssemblyProcessor implements StAXArt for (Binding binding : callback.getBindings()) { extensionProcessor.write(binding, writer); } - + // Write extensions for (Object extension : callback.getExtensions()) { extensionProcessor.write(extension, writer); } - + writeEnd(writer); } - + // Write extensions for (Object extension : reference.getExtensions()) { extensionProcessor.write(extension, writer); } - + writeEnd(writer); } @@ -912,7 +912,7 @@ public class CompositeProcessor extends BaseAssemblyProcessor implements StAXArt for (Wire wire : composite.getWires()) { writeStart(writer, WIRE, new XAttr(SOURCE, wire.getSource().getName()), new XAttr(TARGET, wire.getTarget() .getName()), wire.isReplace() ? new XAttr(Constants.REPLACE, true) : null); - + //write extended attributes this.writeExtendedAttributes(writer, wire, extensionAttributeProcessor); @@ -926,7 +926,7 @@ public class CompositeProcessor extends BaseAssemblyProcessor implements StAXArt for (Object extension : composite.getExtensions()) { extensionProcessor.write(extension, writer); } - + writeEndDocument(writer); } @@ -966,11 +966,11 @@ public class CompositeProcessor extends BaseAssemblyProcessor implements StAXArt constrainingType = resolver.resolveModel(ConstrainingType.class, constrainingType); component.setConstrainingType(constrainingType); } - - //resolve component services and references + + //resolve component services and references resolveContracts(component, component.getServices(), resolver); resolveContracts(component, component.getReferences(), resolver); - + for (ComponentProperty componentProperty : component.getProperties()) { if (componentProperty.getFile() != null) { Artifact artifact = contributionFactory.createArtifact(); @@ -981,7 +981,7 @@ public class CompositeProcessor extends BaseAssemblyProcessor implements StAXArt } } } - + //resolve component implementation Implementation implementation = component.getImplementation(); if (implementation != null) { @@ -1008,7 +1008,7 @@ public class CompositeProcessor extends BaseAssemblyProcessor implements StAXArt } } } - + public QName getArtifactType() { return COMPOSITE_QNAME; } @@ -1019,17 +1019,17 @@ public class CompositeProcessor extends BaseAssemblyProcessor implements StAXArt /** * Returns the model factory extension point to use. - * + * * @param extensionPoints * @return */ private static FactoryExtensionPoint modelFactories(ExtensionPointRegistry extensionPoints) { return extensionPoints.getExtensionPoint(FactoryExtensionPoint.class); } - + /** * Returns the monitor to use. - * + * * @param extensionPoints * @return */ @@ -1043,5 +1043,5 @@ public class CompositeProcessor extends BaseAssemblyProcessor implements StAXArt } return null; } - + } diff --git a/java/sca/modules/assembly-xml/src/main/java/org/apache/tuscany/sca/assembly/xml/EndpointProcessor.java b/java/sca/modules/assembly-xml/src/main/java/org/apache/tuscany/sca/assembly/xml/EndpointProcessor.java index 8eebf1f5e5..1f9dfcd237 100644 --- a/java/sca/modules/assembly-xml/src/main/java/org/apache/tuscany/sca/assembly/xml/EndpointProcessor.java +++ b/java/sca/modules/assembly-xml/src/main/java/org/apache/tuscany/sca/assembly/xml/EndpointProcessor.java @@ -97,6 +97,7 @@ public class EndpointProcessor extends BaseAssemblyProcessor implements StAXArti try {
Composite composite = assemblyFactory.createComposite();
composite.setName(ENDPOINT_QNAME);
+ composite.setLocal(false);
Component component = (Component)endpoint.getComponent().clone();
composite.getComponents().add(component);
component.getReferences().clear();
diff --git a/java/sca/modules/assembly-xml/src/main/java/org/apache/tuscany/sca/assembly/xml/SCABindingProcessor.java b/java/sca/modules/assembly-xml/src/main/java/org/apache/tuscany/sca/assembly/xml/SCABindingProcessor.java index dfdc26f7ad..a5c1f97c66 100644 --- a/java/sca/modules/assembly-xml/src/main/java/org/apache/tuscany/sca/assembly/xml/SCABindingProcessor.java +++ b/java/sca/modules/assembly-xml/src/main/java/org/apache/tuscany/sca/assembly/xml/SCABindingProcessor.java @@ -6,15 +6,15 @@ * 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.
+ * under the License.
*/
package org.apache.tuscany.sca.assembly.xml;
@@ -28,7 +28,6 @@ import javax.xml.stream.XMLStreamWriter; import org.apache.tuscany.sca.assembly.SCABinding;
import org.apache.tuscany.sca.assembly.SCABindingFactory;
-import org.apache.tuscany.sca.assembly.xml.PolicySubjectProcessor;
import org.apache.tuscany.sca.contribution.processor.ContributionReadException;
import org.apache.tuscany.sca.contribution.processor.ContributionResolveException;
import org.apache.tuscany.sca.contribution.processor.ContributionWriteException;
@@ -46,14 +45,14 @@ import org.apache.tuscany.sca.policy.PolicySubject; */
public class SCABindingProcessor implements StAXArtifactProcessor<SCABinding> {
- private static final String NAME = "name";
- private static final String URI = "uri";
-
- private static final String SCA11_NS = "http://docs.oasis-open.org/ns/opencsa/sca/200903";
+ private static final String NAME = "name";
+ private static final String URI = "uri";
+
+ private static final String SCA11_NS = "http://docs.oasis-open.org/ns/opencsa/sca/200903";
private static final String BINDING_SCA = "binding.sca";
private static final QName BINDING_SCA_QNAME = new QName(SCA11_NS, BINDING_SCA);
-
- private PolicyFactory policyFactory;
+
+ private PolicyFactory policyFactory;
private SCABindingFactory scaBindingFactory;
private PolicySubjectProcessor policyProcessor;
private PolicyFactory intentAttachPointTypeFactory;
@@ -79,11 +78,11 @@ public class SCABindingProcessor implements StAXArtifactProcessor<SCABinding> { ExtensionType bindingType = intentAttachPointTypeFactory.createBindingType();
bindingType.setType(getArtifactType());
bindingType.setUnresolved(true);
- ((PolicySubject)scaBinding).setType(bindingType);
-
+ ((PolicySubject)scaBinding).setExtensionType(bindingType);
+
// Read policies
policyProcessor.readPolicies(scaBinding, reader);
-
+
// Read binding name
String name = reader.getAttributeValue(null, NAME);
if (name != null) {
@@ -104,10 +103,10 @@ public class SCABindingProcessor implements StAXArtifactProcessor<SCABinding> { }
return scaBinding;
}
-
+
public void resolve(SCABinding model, ModelResolver resolver) throws ContributionResolveException {
policyProcessor.resolvePolicies(model, resolver);
- }
+ }
public void write(SCABinding scaBinding, XMLStreamWriter writer) throws ContributionWriteException, XMLStreamException {
@@ -120,13 +119,13 @@ public class SCABindingProcessor implements StAXArtifactProcessor<SCABinding> { if (scaBinding.getName() != null) {
writer.writeAttribute(NAME, scaBinding.getName());
}
-
+
// Write binding URI
if (scaBinding.getURI() != null) {
writer.writeAttribute(URI, scaBinding.getURI());
}
-
+
writer.writeEndElement();
}
-
+
}
diff --git a/java/sca/modules/assembly-xml/src/test/java/org/apache/tuscany/sca/assembly/xml/TestSCABindingImpl.java b/java/sca/modules/assembly-xml/src/test/java/org/apache/tuscany/sca/assembly/xml/TestSCABindingImpl.java index d41881dc37..2f13eb8b6d 100644 --- a/java/sca/modules/assembly-xml/src/test/java/org/apache/tuscany/sca/assembly/xml/TestSCABindingImpl.java +++ b/java/sca/modules/assembly-xml/src/test/java/org/apache/tuscany/sca/assembly/xml/TestSCABindingImpl.java @@ -6,15 +6,15 @@ * 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. + * under the License. */ package org.apache.tuscany.sca.assembly.xml; @@ -36,18 +36,18 @@ import org.apache.tuscany.sca.policy.PolicySubject; /** * A test cheel for the SCA binding. - * + * * @version $Rev$ $Date$ */ public class TestSCABindingImpl implements SCABinding, OptimizableBinding, PolicySubject { private String name; private String uri; private List<Object> extensions = new ArrayList<Object>(); - + private Component targetComponent; private ComponentService targetComponentService; private Binding targetBinding; - + private List<Intent> requiredIntents = new ArrayList<Intent>(); private List<PolicySet> policySets = new ArrayList<PolicySet>(); private ExtensionType bindingType = new TestSCABindingType(); @@ -57,7 +57,7 @@ public class TestSCABindingImpl implements SCABinding, OptimizableBinding, Polic */ protected TestSCABindingImpl() { } - + public String getName() { return name; } @@ -77,11 +77,11 @@ public class TestSCABindingImpl implements SCABinding, OptimizableBinding, Polic public List<Object> getExtensions() { return extensions; } - + public boolean isUnresolved() { return false; } - + public void setUnresolved(boolean unresolved) { } @@ -134,7 +134,7 @@ public class TestSCABindingImpl implements SCABinding, OptimizableBinding, Polic public void setTargetBinding(Binding targetBinding) { this.targetBinding = targetBinding; } - + public List<PolicySet> getPolicySets() { // TODO Auto-generated method stub return policySets; @@ -145,15 +145,19 @@ public class TestSCABindingImpl implements SCABinding, OptimizableBinding, Polic return requiredIntents; } - public ExtensionType getType() { + public ExtensionType getExtensionType() { // TODO Auto-generated method stub return bindingType; } - public void setType(ExtensionType type) { + public void setExtensionType(ExtensionType type) { this.bindingType = type; } - + + public QName getType() { + return TYPE; + } + private class TestSCABindingType implements ExtensionType { private QName name = new QName("http://docs.oasis-open.org/ns/opencsa/sca/200903","binding"); public QName getBaseType() { @@ -182,5 +186,5 @@ public class TestSCABindingImpl implements SCABinding, OptimizableBinding, Polic public void setUnresolved(boolean unresolved) { } } - + } |