summaryrefslogtreecommitdiffstats
path: root/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main
diff options
context:
space:
mode:
authorlresende <lresende@13f79535-47bb-0310-9956-ffa450edef68>2013-10-07 22:23:21 +0000
committerlresende <lresende@13f79535-47bb-0310-9956-ffa450edef68>2013-10-07 22:23:21 +0000
commit5963a2d3d6860fe57afc138f095bf2d2eb5a7b80 (patch)
tree018d3d8c637e265b8292d34e5f7c11ca8ce11b7d /sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main
parent132aa8a77685ec92bc90c03f987650d275a7b639 (diff)
Official Tuscany 2.0.1 Release
git-svn-id: http://svn.us.apache.org/repos/asf/tuscany@1530096 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main')
-rw-r--r--sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/AbstractContract.java78
-rw-r--r--sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/AbstractProperty.java151
-rw-r--r--sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/AbstractReference.java43
-rw-r--r--sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/AbstractService.java28
-rw-r--r--sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/AssemblyFactory.java167
-rw-r--r--sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/Base.java45
-rw-r--r--sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/Binding.java114
-rw-r--r--sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/Callback.java53
-rw-r--r--sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/Component.java142
-rw-r--r--sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/ComponentProperty.java89
-rw-r--r--sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/ComponentReference.java113
-rw-r--r--sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/ComponentService.java59
-rw-r--r--sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/ComponentType.java90
-rw-r--r--sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/Composite.java137
-rw-r--r--sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/CompositeReference.java44
-rw-r--r--sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/CompositeService.java57
-rw-r--r--sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/ConfiguredOperation.java62
-rw-r--r--sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/Contract.java118
-rw-r--r--sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/DefaultAssemblyFactory.java41
-rw-r--r--sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/Endpoint.java179
-rw-r--r--sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/EndpointReference.java185
-rw-r--r--sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/Extensible.java45
-rw-r--r--sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/Extension.java66
-rw-r--r--sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/Implementation.java36
-rw-r--r--sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/Multiplicity.java50
-rw-r--r--sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/OperationSelector.java29
-rw-r--r--sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/OperationsConfigurator.java33
-rw-r--r--sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/Property.java40
-rw-r--r--sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/Reference.java80
-rw-r--r--sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/SCABinding.java62
-rw-r--r--sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/SCABindingFactory.java35
-rw-r--r--sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/Service.java59
-rw-r--r--sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/Wire.java85
-rw-r--r--sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/WireFormat.java31
-rw-r--r--sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/builder/BindingBuilder.java54
-rw-r--r--sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/builder/BuilderContext.java107
-rw-r--r--sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/builder/BuilderExtensionPoint.java149
-rw-r--r--sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/builder/CompositeBuilder.java51
-rw-r--r--sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/builder/CompositeBuilderException.java45
-rw-r--r--sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/builder/ContractBuilder.java37
-rw-r--r--sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/builder/DefaultBuilderExtensionPoint.java479
-rw-r--r--sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/builder/ImplementationBuilder.java50
-rw-r--r--sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/builder/Messages.java31
-rw-r--r--sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/builder/PolicyBuilder.java84
-rw-r--r--sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/builder/WireBuilder.java39
-rw-r--r--sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/AbstractPropertyImpl.java112
-rw-r--r--sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/AbstractReferenceImpl.java46
-rw-r--r--sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/AbstractServiceImpl.java36
-rw-r--r--sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/AssemblyFactoryImpl.java138
-rw-r--r--sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/BaseImpl.java45
-rw-r--r--sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/BindingImpl.java124
-rw-r--r--sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/CallbackImpl.java77
-rw-r--r--sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/ComponentImpl.java186
-rw-r--r--sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/ComponentPropertyImpl.java97
-rw-r--r--sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/ComponentReferenceImpl.java119
-rw-r--r--sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/ComponentServiceImpl.java71
-rw-r--r--sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/ComponentTypeImpl.java176
-rw-r--r--sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/CompositeImpl.java200
-rw-r--r--sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/CompositeReferenceImpl.java63
-rw-r--r--sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/CompositeServiceImpl.java62
-rw-r--r--sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/ConfiguredOperationImpl.java95
-rw-r--r--sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/ContractImpl.java88
-rw-r--r--sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/EndpointImpl.java321
-rw-r--r--sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/EndpointReferenceImpl.java289
-rw-r--r--sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/ExtensibleImpl.java49
-rw-r--r--sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/ExtensionImpl.java62
-rw-r--r--sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/ImplementationImpl.java89
-rw-r--r--sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/PropertyImpl.java59
-rw-r--r--sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/ReferenceImpl.java156
-rw-r--r--sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/SCABindingFactoryImpl.java40
-rw-r--r--sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/SCABindingImpl.java169
-rw-r--r--sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/ServiceImpl.java126
-rw-r--r--sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/WireImpl.java105
-rw-r--r--sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/definitions/DefaultDefinitionsFactory.java32
-rw-r--r--sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/definitions/Definitions.java113
-rw-r--r--sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/definitions/DefinitionsBuilder.java34
-rw-r--r--sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/definitions/DefinitionsBuilderException.java43
-rw-r--r--sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/definitions/DefinitionsFactory.java31
-rw-r--r--sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/definitions/impl/DefinitionsBuilderImpl.java307
-rw-r--r--sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/definitions/impl/DefinitionsImpl.java103
-rw-r--r--sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/definitions/util/DefinitionsUtil.java110
-rw-r--r--sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/interfacedef/Compatibility.java29
-rw-r--r--sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/interfacedef/DataType.java120
-rw-r--r--sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/interfacedef/FaultExceptionMapper.java63
-rw-r--r--sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/interfacedef/IncompatibleInterfaceContractException.java69
-rw-r--r--sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/interfacedef/Interface.java125
-rw-r--r--sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/interfacedef/InterfaceContract.java100
-rw-r--r--sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/interfacedef/InterfaceContractMapper.java245
-rw-r--r--sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/interfacedef/InvalidAnnotationException.java40
-rw-r--r--sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/interfacedef/InvalidCallbackException.java35
-rw-r--r--sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/interfacedef/InvalidInterfaceException.java43
-rw-r--r--sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/interfacedef/InvalidOperationException.java43
-rw-r--r--sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/interfacedef/Operation.java272
-rw-r--r--sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/interfacedef/OverloadedOperationException.java46
-rw-r--r--sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/interfacedef/ParameterMode.java28
-rw-r--r--sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/interfacedef/impl/DataTypeImpl.java242
-rw-r--r--sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/interfacedef/impl/InterfaceContractImpl.java142
-rw-r--r--sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/interfacedef/impl/InterfaceContractMapperImpl.java594
-rw-r--r--sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/interfacedef/impl/InterfaceImpl.java359
-rw-r--r--sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/interfacedef/impl/OperationImpl.java363
-rw-r--r--sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/interfacedef/impl/TuscanyInterfaceContractImpl.java38
-rw-r--r--sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/interfacedef/util/Audit.java45
-rw-r--r--sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/interfacedef/util/ElementInfo.java124
-rw-r--r--sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/interfacedef/util/FaultException.java83
-rw-r--r--sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/interfacedef/util/JavaXMLMapper.java144
-rw-r--r--sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/interfacedef/util/TypeInfo.java101
-rw-r--r--sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/interfacedef/util/WrapperInfo.java181
-rw-r--r--sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/interfacedef/util/XMLType.java153
-rw-r--r--sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/policy/BindingType.java27
-rw-r--r--sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/policy/DefaultIntent.java53
-rw-r--r--sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/policy/DefaultPolicyFactory.java30
-rw-r--r--sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/policy/DefaultingPolicySubject.java48
-rw-r--r--sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/policy/ExtensionType.java82
-rw-r--r--sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/policy/ExternalAttachment.java85
-rw-r--r--sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/policy/ImplementationType.java27
-rw-r--r--sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/policy/Intent.java161
-rw-r--r--sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/policy/IntentMap.java49
-rw-r--r--sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/policy/PolicyAttachment.java31
-rw-r--r--sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/policy/PolicyContainer.java37
-rw-r--r--sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/policy/PolicyExpression.java66
-rw-r--r--sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/policy/PolicyFactory.java78
-rw-r--r--sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/policy/PolicySet.java159
-rw-r--r--sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/policy/PolicySubject.java57
-rw-r--r--sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/policy/Qualifier.java44
-rw-r--r--sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/policy/impl/BindingTypeImpl.java38
-rw-r--r--sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/policy/impl/DefaultIntentImpl.java60
-rw-r--r--sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/policy/impl/ExtensionTypeImpl.java97
-rw-r--r--sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/policy/impl/ExternalAttachmentImpl.java76
-rw-r--r--sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/policy/impl/ImplementationTypeImpl.java39
-rw-r--r--sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/policy/impl/IntentImpl.java168
-rw-r--r--sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/policy/impl/IntentMapImpl.java78
-rw-r--r--sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/policy/impl/PolicyExpressionImpl.java87
-rw-r--r--sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/policy/impl/PolicyFactoryImpl.java80
-rw-r--r--sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/policy/impl/PolicySetImpl.java154
-rw-r--r--sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/policy/impl/QualifierImpl.java48
-rw-r--r--sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/policy/util/PolicyHelper.java117
-rw-r--r--sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/resources/META-INF/services/org.apache.tuscany.sca.assembly.AssemblyFactory18
-rw-r--r--sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/resources/META-INF/services/org.apache.tuscany.sca.assembly.SCABindingFactory19
-rw-r--r--sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/resources/META-INF/services/org.apache.tuscany.sca.assembly.builder.BuilderExtensionPoint18
-rw-r--r--sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/resources/META-INF/services/org.apache.tuscany.sca.definitions.DefinitionsFactory17
-rw-r--r--sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/resources/META-INF/services/org.apache.tuscany.sca.interfacedef.InterfaceContractMapper19
-rw-r--r--sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/resources/META-INF/services/org.apache.tuscany.sca.policy.PolicyFactory18
-rw-r--r--sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/resources/org/apache/tuscany/sca/assembly/builder/assembly-validation-messages.properties85
-rw-r--r--sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/resources/org/apache/tuscany/sca/assembly/builder/assembly-validation-messages_it.properties30
-rw-r--r--sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/resources/org/apache/tuscany/sca/assembly/builder/definitions-validation-messages.properties25
145 files changed, 0 insertions, 13897 deletions
diff --git a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/AbstractContract.java b/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/AbstractContract.java
deleted file mode 100644
index dca1decb76..0000000000
--- a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/AbstractContract.java
+++ /dev/null
@@ -1,78 +0,0 @@
-/*
- * 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.assembly;
-
-import org.apache.tuscany.sca.interfacedef.InterfaceContract;
-import org.apache.tuscany.sca.policy.PolicySubject;
-
-/**
- * Interface contracts define one or more business functions. These business
- * functions are provided by services and are used by references.
- *
- * @version $Rev$ $Date$
- * @tuscany.spi.extension.asclient
- */
-public interface AbstractContract extends Base, Extensible, PolicySubject {
-
- /**
- * Returns the name of the contract.
- *
- * @return the name of the contract
- */
- String getName();
-
- /**
- * Sets the name of the contract.
- *
- * @param name the name of the contract
- */
- void setName(String name);
-
- /**
- * Returns the interface contract defining the interface and callback
- * interface for the contract.
- *
- * @return the interface contract
- */
- InterfaceContract getInterfaceContract();
-
- /**
- * Sets the interface contract defining the interface and callback
- * interface for the contract.
- *
- * @param interfaceContract the interface contract
- */
- void setInterfaceContract(InterfaceContract interfaceContract);
-
- /**
- * Returns true if this contract is a reference or service created internally
- * to handle a callback interface of another contract, false otherwise.
- *
- * @return true for a callback contract, false otherwise
- */
- boolean isForCallback();
-
- /**
- * Sets a flag indicating whether this is a callback contract.
- *
- * @param isCallback true for a callback contract, false otherwise
- */
- void setForCallback(boolean isCallback);
-
-}
diff --git a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/AbstractProperty.java b/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/AbstractProperty.java
deleted file mode 100644
index 45fa05d66c..0000000000
--- a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/AbstractProperty.java
+++ /dev/null
@@ -1,151 +0,0 @@
-/*
- * 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.assembly;
-
-import javax.xml.namespace.QName;
-
-import org.apache.tuscany.sca.interfacedef.DataType;
-
-/**
- * A property allows for the configuration of an implementation with externally
- * set data values. An implementation can have zero or more properties. Each
- * property has a data type, which may be either simple or complex. An
- * implementation may also define a default value for a property.
- *
- * @version $Rev$ $Date$
- */
-public interface AbstractProperty extends Base, Extensible {
-
- /**
- * Returns the property name.
- *
- * @return the property name
- */
- String getName();
-
- /**
- * Sets the property name.
- *
- * @param name the property name
- */
- void setName(String name);
-
- /**
- * Returns the default value of the property.
- *
- * @return the default value of this property
- */
- Object getValue();
-
- /**
- * Sets the default value of the property.
- *
- * @param defaultValue the default value of this property
- */
- void setValue(Object defaultValue);
-
- /**
- * Returns true if the property allows multiple values.
- *
- * @return true if the property allows multiple values
- */
- boolean isMany();
-
- /**
- * Sets whether or not the property allows multiple values.
- *
- * @param many true if the property should allow multiple values
- */
- void setMany(boolean many);
-
- /**
- * Returns true if a value must be supplied for the property.
- *
- * @return true is a value must be supplied for the property
- */
- boolean isMustSupply();
-
- /**
- * Sets whether a value must be supplied for the property.
- *
- * @param mustSupply set to true to require that a value be supplied for
- * uses of this property
- */
- void setMustSupply(boolean mustSupply);
-
- /**
- * Returns the data type of this property. This is the qualified name of an
- * XML schema type.
- *
- * @return the type of this property
- */
- QName getXSDType();
-
- /**
- * Sets the data type of this property. This is the qualified name of an XML
- * schema type.
- *
- * @param type the type of this property
- */
- void setXSDType(QName type);
-
- /**
- * Returns the element defining the data type of this property. This is the
- * qualified name of an XML schema element.
- *
- * @return the element defining the type of this property
- */
- QName getXSDElement();
-
- /**
- * Sets the element defining the data type of this property. This is the
- * qualified name of an XML schema element.
- *
- * @param element the element defining the type of this property
- */
- void setXSDElement(QName element);
-
- /**
- * Get the data type for this property
- * @return The data type
- */
- DataType getDataType();
-
- /**
- * Set the data type
- * @param dataType The data type
- */
- void setDataType(DataType dataType);
-
- /**
- * Get the XML schema that represents the type if this property.
- * Used during property value validation
- *
- * @return
- */
- Object getXSDDefinition();
-
- /**
- * Set the XML schema that represents the type if this property.
- * Used during property value validation
- *
- * @param xsdDefintion
- */
- void setXSDDefinition(Object xsdDefintion);
-}
diff --git a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/AbstractReference.java b/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/AbstractReference.java
deleted file mode 100644
index a9ef26bbb9..0000000000
--- a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/AbstractReference.java
+++ /dev/null
@@ -1,43 +0,0 @@
-/*
- * 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.assembly;
-
-/**
- * Represents a reference contract.
- *
- * @version $Rev$ $Date$
- */
-public interface AbstractReference extends AbstractContract {
-
- /**
- * Returns the multiplicity allowed for wires connected to this reference.
- *
- * @return the multiplicity allowed for wires connected to this reference
- */
- Multiplicity getMultiplicity();
-
- /**
- * Sets the multiplicity allowed for wires connected to this reference.
- *
- * @param multiplicity the multiplicity allowed for wires connected to this
- * reference
- */
- void setMultiplicity(Multiplicity multiplicity);
-
-}
diff --git a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/AbstractService.java b/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/AbstractService.java
deleted file mode 100644
index 9ae511c07b..0000000000
--- a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/AbstractService.java
+++ /dev/null
@@ -1,28 +0,0 @@
-/*
- * 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.assembly;
-
-/**
- * Represents a service contract.
- *
- * @version $Rev$ $Date$
- */
-public interface AbstractService extends AbstractContract {
-
-}
diff --git a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/AssemblyFactory.java b/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/AssemblyFactory.java
deleted file mode 100644
index 5d82b9b727..0000000000
--- a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/AssemblyFactory.java
+++ /dev/null
@@ -1,167 +0,0 @@
-/*
- * 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.assembly;
-
-/**
- * A factory for the assembly model
- *
- * @version $Rev$ $Date$
- * @tuscany.spi.extension.asclient
- */
-public interface AssemblyFactory {
-
- /**
- * Create a new abstract property.
- *
- * @return a new abstract property
- */
- AbstractProperty createAbstractProperty();
-
- /**
- * Create a new abstract reference.
- *
- * @return a new abstract reference
- */
- AbstractReference createAbstractReference();
-
- /**
- * Create a new abstract service.
- *
- * @return a new abstract service
- */
- AbstractService createAbstractService();
-
- /**
- * Create a new callback.
- *
- * @return
- */
- Callback createCallback();
-
- /**
- * Create a new component.
- *
- * @return a new component
- */
- Component createComponent();
-
- /**
- * Create a new component property.
- *
- * @return a new component property
- */
- ComponentProperty createComponentProperty();
-
- /**
- * Create a new component reference.
- *
- * @return a new component reference
- */
- ComponentReference createComponentReference();
-
- /**
- * Create a new component service.
- *
- * @return a new component service
- */
- ComponentService createComponentService();
-
- /**
- * Create a new component type
- *
- * @return a new component type
- */
- ComponentType createComponentType();
-
- /**
- * Create a new composite.
- *
- * @return a new composite
- */
- Composite createComposite();
-
- /**
- * Create a new composite reference.
- *
- * @return a new composite reference
- */
- CompositeReference createCompositeReference();
-
- /**
- * Create a new composite service.
- *
- * @return a new composite service
- */
- CompositeService createCompositeService();
-
- /**
- * Create a new property.
- *
- * @return a new property
- */
- Property createProperty();
-
- /**
- * Create a new reference.
- *
- * @return a new reference
- */
- Reference createReference();
-
- /**
- * Create a new service.
- *
- * @return a new service
- */
- Service createService();
-
- /**
- * Create a new wire.
- *
- * @return a new wire
- */
- Wire createWire();
-
- /**
- * Create an Extension
- * @return
- */
- Extension createExtension();
-
- /**
- * Create a new endpoint
- *
- * @return a new endpoint
- */
- Endpoint createEndpoint();
-
- /**
- * Create a new endpoint reference
- *
- * @return a new endpoint reference
- */
- EndpointReference createEndpointReference();
-
- /**
- * Create a new configured operation.
- *
- * @return a new ConfiguredOperation
- */
- ConfiguredOperation createConfiguredOperation();
-}
diff --git a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/Base.java b/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/Base.java
deleted file mode 100644
index b9abb90b03..0000000000
--- a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/Base.java
+++ /dev/null
@@ -1,45 +0,0 @@
-/*
- * 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.assembly;
-
-/**
- * Base interface for all assembly model objects.
- *
- * @version $Rev$ $Date$
- * @tuscany.spi.extension.inheritfrom
- */
-public interface Base {
- String SCA11_NS = "http://docs.oasis-open.org/ns/opencsa/sca/200912";
- String SCA11_TUSCANY_NS = "http://tuscany.apache.org/xmlns/sca/1.1";
-
- /**
- * Returns true if the model element is unresolved.
- *
- * @return true if the model element is unresolved.
- */
- boolean isUnresolved();
-
- /**
- * Sets whether the model element is unresolved.
- *
- * @param unresolved whether the model element is unresolved
- */
- void setUnresolved(boolean unresolved);
-
-}
diff --git a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/Binding.java b/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/Binding.java
deleted file mode 100644
index 9b96556173..0000000000
--- a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/Binding.java
+++ /dev/null
@@ -1,114 +0,0 @@
-/*
- * 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.assembly;
-
-import javax.xml.namespace.QName;
-
-/**
- * Represents a binding.
- *
- * @version $Rev$ $Date$
- * @tuscany.spi.extension.inheritfrom
- */
-public interface Binding extends Base, Cloneable {
-
- /**
- * Returns the binding URI.
- *
- * @return the binding URI
- */
- String getURI();
-
- /**
- * Sets the binding URI.
- *
- * @param uri the binding URI
- */
- void setURI(String uri);
-
- /**
- * Returns the binding name.
- *
- * @return the binding name
- */
- String getName();
-
- /**
- * Sets the binding name.
- *
- * @param name the binding name
- */
- void setName(String name);
-
- /**
- * Clone the binding
- *
- * @return the clone
- */
- Object clone() throws CloneNotSupportedException;
-
- /**
- * Returns the QName type for the binding
- *
- * @return the binding type QName
- */
- QName getType();
-
- /**
- * Returns the request wire format
- *
- * @return the request wire format or null is none is specified
- */
- WireFormat getRequestWireFormat();
-
- /**
- * Sets the request wire format
- *
- * @param wireFormat the request wire format
- */
- void setRequestWireFormat(WireFormat wireFormat);
-
- /**
- * Returns the response wire format
- *
- * @return the response wire format or null is none is specified
- */
- WireFormat getResponseWireFormat();
-
- /**
- * Sets the response wire format
- *
- * @param wireFormat the response wire format
- */
- void setResponseWireFormat(WireFormat wireFormat);
-
- /**
- * Returns the operation selector
- *
- * @return the operation selector or null is none is specified
- */
- OperationSelector getOperationSelector();
-
- /**
- * Sets the operation selector
- *
- * @param operationSelector the operation selector
- */
- void setOperationSelector(OperationSelector operationSelector);
-}
diff --git a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/Callback.java b/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/Callback.java
deleted file mode 100644
index a220f14159..0000000000
--- a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/Callback.java
+++ /dev/null
@@ -1,53 +0,0 @@
-/*
- * 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.assembly;
-
-import java.util.List;
-
-import org.apache.tuscany.sca.policy.PolicySubject;
-
-/**
- * Represents a callback object describing the bindings to use for callbacks.
- *
- * @version $Rev$ $Date$
- */
-public interface Callback extends Base, Extensible, PolicySubject {
-
- /**
- * Returns the bindings supported for callbacks.
- *
- * @return the bindings supported for callbacks
- */
- List<Binding> getBindings();
-
- /**
- * Returns the contract that holds this callback
- *
- * @return the contract that holds this callback
- */
- Contract getParentContract();
-
- /**
- * Sets the contract that holds this callback
- *
- * @param contract the contract that holds this callback
- */
- void setParentContract(Contract contract);
-
-}
diff --git a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/Component.java b/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/Component.java
deleted file mode 100644
index efd8557e07..0000000000
--- a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/Component.java
+++ /dev/null
@@ -1,142 +0,0 @@
-/*
- * 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.assembly;
-
-import java.util.List;
-
-import org.apache.tuscany.sca.policy.PolicySubject;
-
-/**
- * Represents a component. A component is a configured instance of an
- * implementation.
- *
- * @version $Rev$ $Date$
- * @tuscany.spi.extension.asclient
- */
-public interface Component extends Base, Extensible, PolicySubject, Cloneable {
-
- /**
- * Returns the URI of the component.
- *
- * @return the URI of the component
- */
- String getURI();
-
- /**
- * Sets the URI of the component.
- *
- * @param uri the URI of the component
- */
- void setURI(String uri);
-
- /**
- * Returns the name of the component.
- *
- * @return the name of the component
- */
- String getName();
-
- /**
- * Sets the name of the component.
- *
- * @param name the name of the component
- */
- void setName(String name);
-
- /**
- * Returns the component implementation.
- *
- * @return the component implementation
- */
- Implementation getImplementation();
-
- /**
- * Sets the component implementation
- *
- * @param implementation the component implementation
- */
- void setImplementation(Implementation implementation);
-
- /**
- * Returns a list of references used by the component.
- *
- * @return a list of references used by the component
- */
- List<ComponentReference> getReferences();
-
- /**
- * Return a reference by name
- *
- * @param name the reference name
- * @return reference the reference
- */
- ComponentReference getReference(String name);
-
- /**
- * Returns a list of services exposed by the component.
- *
- * @return a list of services exposed by the component
- */
- List<ComponentService> getServices();
-
- /**
- * Return a service by name
- *
- * @param name the service name
- * @return service the service
- */
- ComponentService getService(String name);
-
- /**
- * Returns a list of properties for the component.
- *
- * @return a list of properties
- */
- List<ComponentProperty> getProperties();
-
- /**
- * Return a property by name
- *
- * @param name the property name
- * @return property the property
- */
- ComponentProperty getProperty(String name);
-
- /**
- * Return the Boolean value of autowire
- * @return null/TRUE/FALSE
- */
- Boolean getAutowire();
-
- /**
- * Sets whether component references should be autowired.
- *
- * @param autowire whether component references should be autowired
- */
- void setAutowire(Boolean autowire);
-
- /**
- * Returns a clone of the component.
- *
- * @return a clone of the component
- * @throws CloneNotSupportedException
- */
- Object clone() throws CloneNotSupportedException;
-
-}
diff --git a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/ComponentProperty.java b/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/ComponentProperty.java
deleted file mode 100644
index 1202b4d83a..0000000000
--- a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/ComponentProperty.java
+++ /dev/null
@@ -1,89 +0,0 @@
-/*
- * 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.assembly;
-
-import javax.xml.xpath.XPathExpression;
-
-/**
- * Represents a configured property of a component.
- *
- * @version $Rev$ $Date$
- * @tuscany.spi.extension.asclient
- */
-public interface ComponentProperty extends Property {
-
- /**
- * Returns the property defined by the component implementation.
- *
- * @return the property defined by the component implementation
- */
- Property getProperty();
-
- /**
- * Sets the property defined by this component implementation.
- *
- * @param property the property defined by this component implementation
- */
- void setProperty(Property property);
-
- /**
- * Returns an XPath expression referencing a property of the enclosing
- * composite.
- *
- * @return an XPath expression referencing a property of the enclosing
- * composite
- */
- String getSource();
-
- /**
- * Sets an XPath expression referencing a property of the enclosing
- * composite.
- *
- * @param source an XPath expression referencing a property of the enclosing
- * composite
- */
- void setSource(String source);
-
- /**
- * Get the XPath expression for the source attribute
- * @return the XPath expression for the source attribute
- */
- XPathExpression getSourceXPathExpression();
-
- /**
- * Set the XPath expression for the source attribute
- * @param sourceXPathExpression the XPath expression for the source attribute
- */
- void setSourceXPathExpression(XPathExpression sourceXPathExpression);
-
- /**
- * Returns a URI to a file containing the property value.
- *
- * @return a URI to a file containing the property value
- */
- String getFile();
-
- /**
- * Sets a URI to a file containing the property value.
- *
- * @param file a URI to a file containing the property value
- */
- void setFile(String file);
-
-}
diff --git a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/ComponentReference.java b/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/ComponentReference.java
deleted file mode 100644
index ad72780de8..0000000000
--- a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/ComponentReference.java
+++ /dev/null
@@ -1,113 +0,0 @@
-/*
- * 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.assembly;
-
-/**
- * An instance of a reference associated with a particular component.
- *
- * @version $Rev$ $Date$
- * @tuscany.spi.extension.asclient
- */
-public interface ComponentReference extends Reference {
-
- /**
- * Returns the reference defined by the implementation for this reference.
- *
- * @return the implementation reference
- */
- Reference getReference();
-
- /**
- * Sets the reference defined by the implementation for this reference.
- *
- * @param reference the implementation reference
- */
- void setReference(Reference reference);
-
- /**
- * Return the Boolean value of autowire
- * @return null/TRUE/FALSE
- */
- Boolean getAutowire();
-
- /**
- * Sets whether component references should be autowired.
- *
- * @param autowire whether component references should be autowired
- */
- void setAutowire(Boolean autowire);
-
- /**
- * Returns the callback service created internally as a target endpoint
- * for callbacks to this reference.
- *
- * @return the callback service
- */
- ComponentService getCallbackService();
-
- /**
- * Sets the callback service created internally as a target endpoint
- * for callbacks to this reference.
- *
- * @param callbackService the callback service
- */
- void setCallbackService(ComponentService callbackService);
-
- /**
- * A boolean value, "false" by default, which indicates whether this component reference
- * can have its targets overridden by a composite reference which promotes the
- * component reference.
- *
- * If @nonOverridable==false, the target(s) of the promoting composite reference
- * replace all the targets explicitly declared on the component reference for any
- * value of @multiplicity on the component reference.
- *
- * If the component reference has @nonOverridable==false and @multiplicity 1..1
- * and the reference has a target, then any composite reference which promotes
- * the component reference has @multiplicity 0..1.by default and MAY have an explicit @multiplicity of either
- * 0..1 or 1..1.
- *
- * If @nonOverridable==true, and the component reference has @multiplicity 0..1 or
- * 1..1 and the component reference also declares a target, promotion implies
- * that the promoting composite reference has @wiredbyImpl==true and the composite
- * reference cannot supply a target, but can influence the policy attached to the
- * component reference.
- *
- * If @nonOverridable==true, and the component reference @multiplicity is 0..n
- * or 1..n, promotion targeting is additive
- *
- * @return
- */
- boolean isNonOverridable();
-
- /**
- * Set the nonOverridable flag
- * @param nonOverridable
- */
- void setNonOverridable(boolean nonOverridable);
-
- /**
- * Sets whether this Component Reference is promoted
- * @param isPromoted - true if the component reference is promoted
- */
- void setPromoted(boolean isPromoted);
-
- boolean isPromoted();
-
-}
diff --git a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/ComponentService.java b/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/ComponentService.java
deleted file mode 100644
index e1e3eab90c..0000000000
--- a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/ComponentService.java
+++ /dev/null
@@ -1,59 +0,0 @@
-/*
- * 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.assembly;
-
-/**
- * An addressable instance of a service associated with a particular component.
- *
- * @version $Rev$ $Date$
- * @tuscany.spi.extension.asclient
- */
-public interface ComponentService extends Service {
-
- /**
- * Returns the service defined by the implementation for this service.
- *
- * @return
- */
- Service getService();
-
- /**
- * Sets the service defined by the implementation for this service.
- *
- * @param service
- */
- void setService(Service service);
-
- /**
- * Returns the callback reference created internally as a source endpoint
- * for callbacks from this service.
- *
- * @return the callback reference
- */
- ComponentReference getCallbackReference();
-
- /**
- * Sets the callback reference created internally as a source endpoint
- * for callbacks from this service.
- *
- * @param callbackReference the callback reference
- */
- void setCallbackReference(ComponentReference callbackReference);
-
-}
diff --git a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/ComponentType.java b/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/ComponentType.java
deleted file mode 100644
index f748828999..0000000000
--- a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/ComponentType.java
+++ /dev/null
@@ -1,90 +0,0 @@
-/*
- * 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.assembly;
-
-import java.util.List;
-
-import org.apache.tuscany.sca.policy.PolicySubject;
-
-/**
- * Describes an implementation and represents its configurable aspects.
- *
- * @version $Rev$ $Date$
- * @tuscany.spi.extension.asclient
- */
-public interface ComponentType extends Base, PolicySubject {
-
- /**
- * Returns the URI of this component type.
- * @return the URI of the component type
- */
- String getURI();
-
- /**
- * Sets the URI of this component type.
- * @param uri the URI of the component type
- */
- void setURI(String uri);
-
- /**
- * Returns a list of services that are offered.
- *
- * @return a list of services that are offered
- */
- List<Service> getServices();
-
- /**
- * Return a service by name
- *
- * @param name the service name
- * @return service the service
- */
- Service getService(String name);
-
- /**
- * Returns the list of reference types that are used.
- *
- * @return the list of reference types that are used
- */
- List<Reference> getReferences();
-
- /**
- * Return a reference by name
- *
- * @param name the reference name
- * @return reference the reference
- */
- Reference getReference(String name);
-
- /**
- * Returns the list of properties that can be set.
- *
- * @return the list of properties that can be set
- */
- List<Property> getProperties();
-
- /**
- * Return a property by name
- *
- * @param name the property name
- * @return property the property
- */
- Property getProperty(String name);
-
-}
diff --git a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/Composite.java b/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/Composite.java
deleted file mode 100644
index 2c619be680..0000000000
--- a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/Composite.java
+++ /dev/null
@@ -1,137 +0,0 @@
-/*
- * 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.assembly;
-
-import java.util.List;
-
-import javax.xml.namespace.QName;
-
-import org.apache.tuscany.sca.policy.PolicySubject;
-
-/**
- * Represents a composite.
- *
- * @version $Rev$ $Date$
- */
-public interface Composite extends Implementation, Extensible, Cloneable, PolicySubject {
- /**
- * Special name for the domain composite
- */
- QName DOMAIN_COMPOSITE = new QName(SCA11_NS, "");
- QName TYPE = new QName(SCA11_NS, "implementation.composite");
-
- /**
- * Returns the spec version of the composite used to build this model
- *
- * @return the spec version used to build this model
- */
- String getSpecVersion();
-
- /**
- * Sets the spec version of the composite used to build this model
- *
- * @param specVersion the spec version used to build this model
- */
- void setSpecVersion(String specVersion);
-
- String getContributionURI();
- void setContributionURI(String contributionURI);
-
- /**
- * Returns the name of the composite.
- *
- * @return the name of the composite
- */
- QName getName();
-
- /**
- * Sets the name of the composite.
- *
- * @param name the name of the composite
- */
- void setName(QName name);
-
- /**
- * Returns a list of composites included in this composite.
- *
- * @return a list of composites included in this composite.
- */
- List<Composite> getIncludes();
-
- public List<Composite> getFusedIncludes();
-
- /**
- * Returns a list of components contained in this composite.
- *
- * @return a list of components contained in this composite
- */
- List<Component> getComponents();
-
- /**
- * Returns a component by name
- */
- Component getComponent(String name);
-
- /**
- * Returns a list of wires contained in this composite.
- *
- * @return a list of wires contained in this composite
- */
- List<Wire> getWires();
-
- /**
- * Returns true if all the components within the composite must run in the
- * same process.
- *
- * @return true if all the components within the composite must run in the
- * same process
- */
- boolean isLocal();
-
- /**
- * Sets whether all the components within the composite must run in the same
- * process.
- *
- * @param local whether all the components within the composite must run in
- * the same process
- */
- void setLocal(boolean local);
-
- /**
- * Return the Boolean value of autowire
- * @return null/TRUE/FALSE
- */
- Boolean getAutowire();
-
- /**
- * Sets whether component references should be autowired.
- *
- * @param autowire whether component references should be autowired
- */
- void setAutowire(Boolean autowire);
-
- /**
- * Returns a clone of the component type.
- *
- * @return a clone of the component type
- * @throws CloneNotSupportedException
- */
- Object clone() throws CloneNotSupportedException;
-
-}
diff --git a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/CompositeReference.java b/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/CompositeReference.java
deleted file mode 100644
index 88cb2f9a2c..0000000000
--- a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/CompositeReference.java
+++ /dev/null
@@ -1,44 +0,0 @@
-/*
- * 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.assembly;
-
-import java.util.List;
-
-/**
- * Represents composite reference.
- *
- * @version $Rev$ $Date$
- */
-public interface CompositeReference extends Reference {
- /**
- * Returns the promoted components. For each promoted component/reference,
- * they have the same index in the component and reference list.
- *
- * @return the promoted components
- */
- List<Component> getPromotedComponents();
-
- /**
- * Returns the promoted component references.
- *
- * @return the promoted component references
- */
- List<ComponentReference> getPromotedReferences();
-
-}
diff --git a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/CompositeService.java b/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/CompositeService.java
deleted file mode 100644
index 575d0784ce..0000000000
--- a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/CompositeService.java
+++ /dev/null
@@ -1,57 +0,0 @@
-/*
- * 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.assembly;
-
-/**
- * Represents a composite service.
- *
- * @version $Rev$ $Date$
- * @tuscany.spi.extension.asclient
- */
-public interface CompositeService extends Service {
-
- /**
- * Returns the promoted component.
- *
- * @return the promoted component.
- */
- Component getPromotedComponent();
-
- /**
- * Sets the promoted component
- *
- * @param promotedComponent the promoted component.
- */
- void setPromotedComponent(Component promotedComponent);
-
- /**
- * Returns the promoted component service .
- *
- * @return the promoted component service.
- */
- ComponentService getPromotedService();
-
- /**
- * Sets the promoted component service
- *
- * @param promotedService the promoted component service.
- */
- void setPromotedService(ComponentService promotedService);
-
-}
diff --git a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/ConfiguredOperation.java b/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/ConfiguredOperation.java
deleted file mode 100644
index 25ae82aa8f..0000000000
--- a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/ConfiguredOperation.java
+++ /dev/null
@@ -1,62 +0,0 @@
-/*
- * 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.assembly;
-
-import org.apache.tuscany.sca.policy.PolicySubject;
-
-/**
- * Represents an Operation. Typically Operation elements are used when there is a
- * need to apply certain facets such as intents and policysets only to a specific
- * operation provided by a service or reference.
- *
- * @tuscany.spi.extension.asclient
- * @version $Rev$ $Date$
- */
-public interface ConfiguredOperation extends Base, PolicySubject {
- /**
- * Returns the name of the operation.
- *
- * @return the name of the operation
- */
- String getName();
-
- /**
- * Sets the name of the operation.
- *
- * @param name the name of the operation
- */
- void setName(String name);
-
- /**
- * Returns the name of the service or reference to which this operation belongs.
- * This method is particularly useful when operation elements are specified under implementation
- * elements and it is necessary to identify which of the various services provided by the
- * implementation is referred to by the operation element in question
- *
- * @return the name of the contract to which this operation belongs
- */
- String getContractName();
-
- /**
- * Sets the name of the service or reference to which this operation belongs.
- *
- * @param contractName the name of the contract to which this operation belongs
- */
- void setContractName(String contractName);
-}
diff --git a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/Contract.java b/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/Contract.java
deleted file mode 100644
index b3a1bf9b16..0000000000
--- a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/Contract.java
+++ /dev/null
@@ -1,118 +0,0 @@
-/*
- * 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.assembly;
-
-import java.util.List;
-
-import org.apache.tuscany.sca.interfacedef.InterfaceContract;
-import org.apache.tuscany.sca.policy.PolicySubject;
-
-/**
- * Represents a contract. A contract can be either a service or a reference.
- *
- * @version $Rev$ $Date$
- * @tuscany.spi.extension.asclient
- */
-public interface Contract extends AbstractContract, PolicySubject, Cloneable {
-
- /**
- * Returns the bindings supported by this contract.
- *
- * @return the bindings supported by this contract
- */
- List<Binding> getBindings();
-
- /**
- * Return the named binding
- *
- * @return the named binding or null if it can't be found
- */
- Binding getBinding(String name);
-
- /**
- * Returns a binding of the specified type or null if there is no such
- * binding configured on this contract.
- *
- * @param <B> the binding type
- * @param bindingClass the binding type class
- * @return the binding or null if there is no binding of the specified type
- */
- <B> B getBinding(Class<B> bindingClass);
-
- /**
- * Returns a callback binding of the specified type or null if there is no such
- * callback binding configured on this contract.
- *
- * @param <B> the callback binding type
- * @param bindingClass the callback binding type class
- * @return the callback binding or null if there is no callback binding of the specified type
- */
- <B> B getCallbackBinding(Class<B> bindingClass);
-
- /**
- * Returns a callback definition of the bindings to use for callbacks.
- *
- * @return a definition of the bindings to use for callbacks
- */
- Callback getCallback();
-
- /**
- * Sets a callback definition of the bindings to use for callbacks
- *
- * @param callback a definition of the bindings to use for callbacks
- */
- void setCallback(Callback callback);
-
- /**
- * Returns a clone of the contract.
- *
- * @return a clone of the reference
- * @throws CloneNotSupportedException
- */
- Object clone() throws CloneNotSupportedException;
-
- /**
- * Returns the interface contract given a binding. Important in the case where
- * a reference with multiplicity > 1 has been promoted and has it's list of
- * resolved bindings extended by a promoting reference. Here the binding
- * from the promoting reference may need the interface contract from the
- * promoting reference and not the promoted reference.
- * TODO - remove this wrinkle with better endpoint support.
- *
- * @param binding the binding for which the interface contract is required
- * @return the interface contract
- */
- InterfaceContract getInterfaceContract(Binding binding);
-
- /**
- * A flag to tell if there are any binding elements specified for this service or reference.
- * If true, they override the the bindings in the corresponding reference/service in the
- * component type or promoted reference/service.
- * @return
- */
- boolean isOverridingBindings();
-
- /**
- * Set the flag depending on if there are any binding elements specified for this service or
- * reference.
- * @param overridingBindings true if there are binding elements specified
- */
- void setOverridingBindings(boolean overridingBindings);
-
-}
diff --git a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/DefaultAssemblyFactory.java b/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/DefaultAssemblyFactory.java
deleted file mode 100644
index 6d8350fc66..0000000000
--- a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/DefaultAssemblyFactory.java
+++ /dev/null
@@ -1,41 +0,0 @@
-/*
- * 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.assembly;
-
-import org.apache.tuscany.sca.assembly.impl.AssemblyFactoryImpl;
-import org.apache.tuscany.sca.core.DefaultExtensionPointRegistry;
-import org.apache.tuscany.sca.core.ExtensionPointRegistry;
-
-/**
- * A factory for the assembly model.
- *
- * @version $Rev$ $Date$
- */
-public class DefaultAssemblyFactory extends AssemblyFactoryImpl implements AssemblyFactory {
-
- public DefaultAssemblyFactory(ExtensionPointRegistry registry) {
- super(registry);
- }
-
- public DefaultAssemblyFactory() {
- super(new DefaultExtensionPointRegistry());
- }
-
-}
diff --git a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/Endpoint.java b/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/Endpoint.java
deleted file mode 100644
index 014913cfa8..0000000000
--- a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/Endpoint.java
+++ /dev/null
@@ -1,179 +0,0 @@
-/*
- * 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.assembly;
-
-import java.io.Serializable;
-import java.util.List;
-
-import org.apache.tuscany.sca.interfacedef.InterfaceContract;
-import org.apache.tuscany.sca.policy.PolicySubject;
-
-/**
- * Represents a service endpoint which is what results from having a configured
- * binding applied to a component service. In a deployed application an endpoint
- * will relate directly to a physical endpoint, for example, a HTTP URL or a
- * JMS destination.
- *
- * @version $Rev$ $Date$
- * @tuscany.spi.extension.asclient
- */
-public interface Endpoint extends Base, PolicySubject, Cloneable, Serializable {
-
- /**
- * Get the structural URI of the service binding
- * @return structural URI of the service/binding
- */
- String getURI();
-
- /**
- * Set the structural URI of the service binding
- * @param uri &lt;componentURI&gt;#service-binding(serviceName/bindingName)
- * or &lt;componentURI&gt;#service(serviceName)
- */
- void setURI(String uri);
-
- /**
- * Get the deployed URI
- * @return The deployed URI
- */
- String getDeployedURI();
- /**
- * Set the deployed URI
- * @param deployedURI
- */
- void setDeployedURI(String deployedURI);
-
- /**
- * Get the component model object
- *
- * @return component
- */
- Component getComponent();
-
- /**
- * Set the component model object
- *
- * @param component
- */
- void setComponent(Component component);
-
- /**
- * Get the service model object
- *
- * @return service
- */
- ComponentService getService();
-
- /**
- * Set the service model object
- *
- * @param service
- */
- void setService(ComponentService service);
-
- /**
- * Get the resolved target binding
- *
- * @return target binding
- */
- Binding getBinding();
-
- /**
- * Set the binding
- *
- * @param binding
- */
- void setBinding(Binding binding);
-
- /**
- * Returns the interface contract defining the interface
- *
- * @return the interface contract
- */
- InterfaceContract getComponentServiceInterfaceContract();
-
- /**
- * Get the service's callback endpoint references that
- * represent endpoint references from which callbacks
- * originate
- *
- * @return callbackEndpoint the reference callback endpoint
- */
- List<EndpointReference> getCallbackEndpointReferences();
-
- /**
- * Returns true if this endpoint represents a serivce that is not
- * running in this JVM
- *
- * @return true if the endpoint is remote
- */
- boolean isRemote();
-
- /**
- * Set true if this endpoint represents a serivce that is not
- * running in this JVM
- *
- * @param remote set to true if the endpoint is remote
- */
- void setRemote(boolean remote);
-
- /**
- * Supports endpoint cloning
- *
- * @return endpoint
- * @throws CloneNotSupportedException
- */
- Object clone() throws CloneNotSupportedException;
-
- /**
- * Tests if the URI of this endpoint matches the service URI
- * @param serviceName the service URI to test
- * @return true if the endpoint URI matches the service URI
- */
- boolean matches(String serviceURI);
-
- /**
- * When true this endpoint is able to process the invocation
- * asynchronously. The forward call is effectively one-way
- * and the response will arrive asynchronously
- *
- * @return true if the service is asynchronous
- */
- boolean isAsyncInvocation();
-
- /**
- * Get the spec version for this endpoint. This is intended to help
- * interop scenarios where having an OASIS endpoint talk to an
- * OSOA endpoint implies some restrictions.
- *
- * @return the spec version, namespace for either SCA-1.0 or SCA-1.1
- */
- String getSpecVersion();
-
- /**
- * Set the spec version for this endpoint. This is intended to help
- * interop scenarios where having an OASIS endpoint talk to an
- * OSOA endpoint implies some restrictions. If unset it defaults
- * to the namespace for SCA-1.1
- *
- * @param specVersion the spec version, namspace for either SCA-1.0 or SCA-1.1
- */
- void setSpecVersion(String specVersion);
-
-}
diff --git a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/EndpointReference.java b/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/EndpointReference.java
deleted file mode 100644
index f4f1cd2a8d..0000000000
--- a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/EndpointReference.java
+++ /dev/null
@@ -1,185 +0,0 @@
-/*
- * 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.assembly;
-
-import java.io.Serializable;
-
-import org.apache.tuscany.sca.interfacedef.InterfaceContract;
-import org.apache.tuscany.sca.policy.PolicySubject;
-
-/**
- * Represents an endpoint reference. An SCA reference can reference service endpoints in a
- * number of ways. Target names, autowire, configured bindings. The endpoint reference
- * captures the result of specifying one of these things.
- *
- * @version $Rev$ $Date$
- * @tuscany.spi.extension.asclient
- */
-public interface EndpointReference extends Base, PolicySubject, Cloneable, Serializable {
-
- /**
- * Status of the endpoint reference resolution
- */
- enum Status {
- NOT_CONFIGURED, // Not configured
- RESOLVED_BINDING, // The endpoint reference is configured with a binding
- AUTOWIRE_PLACEHOLDER, // Autowire to be performed
- WIRED_TARGET_NOT_FOUND, // Wire target not found
- WIRED_TARGET_FOUND_READY_FOR_MATCHING, // Wire target found and ready to be resolved to an endpoint
- WIRED_TARGET_FOUND_AND_MATCHED, // Wire target found and resolved to an endpoint
- WIRED_TARGET_IN_BINDING_URI // SCA target specified by the binding uri
- };
-
- /**
- * Get the structural URI of the reference binding
- * @return The structural URI of the reference/binding
- */
- String getURI();
-
- /**
- * Set the structural URI of the reference binding
- * @param uri &lt;componentURI&gt;#reference-binding(referenceName/bindingName)
- * or &lt;componentURI&gt;#reference(referenceName) if binding is not present
- *
- */
- void setURI(String uri);
-
- /**
- * Supports endpoint reference cloning
- *
- * @return endpointReference
- * @throws CloneNotSupportedException
- */
- Object clone() throws CloneNotSupportedException;
-
- /**
- * Get the component model object
- *
- * @return component
- */
- Component getComponent();
-
- /**
- * Set the component model object
- *
- * @param component the component for the endpoint
- */
- void setComponent(Component component);
-
- /**
- * Get the source component reference model object
- *
- * @return reference the source component reference for the endpoint
- */
- ComponentReference getReference();
-
- /**
- * Set the source component reference model object
- *
- * @param reference
- */
- void setReference(ComponentReference reference);
-
- /**
- * Get the resolved reference binding
- *
- * @return binding the resolved reference binding
- */
- Binding getBinding();
-
- /**
- * Set the resolved reference binding
- *
- * @param binding the resolved reference binding
- */
- void setBinding(Binding binding);
-
- /**
- * Get the target endpoint
- *
- * @return endpoint the target endpoint
- */
- Endpoint getTargetEndpoint();
-
- /**
- * Set the target endpoint model object
- *
- * @param endpoint the target endpoint
- */
- void setTargetEndpoint(Endpoint targetEndpoint);
-
- /**
- * Get the deployed URI of the corresponding service endpoint
- * @return The deployed URI
- */
- String getDeployedURI();
- /**
- * Set the deployed URI
- * @param deployedURI
- */
- void setDeployedURI(String deployedURI);
-
- /**
- * Returns the interface contract defining the interface
- *
- * @return the interface contract
- */
- InterfaceContract getComponentReferenceInterfaceContract();
-
- /**
- * Get the reference callback endpoint that
- * represents that target endpoint to which callback
- * messages will be directed
- *
- * @return callbackEndpoint the reference callback endpoint
- */
- Endpoint getCallbackEndpoint();
-
- /**
- * Set the reference callback endpoint
- *
- * @param callbackEndpoint the reference callback endpoint
- */
- void setCallbackEndpoint(Endpoint callbackEndpoint);
-
- /**
- * Rather than relying on combinations of unresolved flags and
- * other data we maintain a status enumeration
- *
- * @return status
- */
- Status getStatus();
-
- /**
- * Rather than relying on combinations of unresolved flags and
- * other data we maintain a status enumeration
- *
- * @param status the new status
- */
- void setStatus(Status status);
-
- /**
- * When true this endpoint reference is able to process the invocation
- * asynchronously. The forward call is effectively one-way
- * and the response will arrive asynchronously
- *
- * @return true if the reference is asynchronous
- */
- boolean isAsyncInvocation();
-}
diff --git a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/Extensible.java b/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/Extensible.java
deleted file mode 100644
index da8d054140..0000000000
--- a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/Extensible.java
+++ /dev/null
@@ -1,45 +0,0 @@
-/*
- * 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.assembly;
-
-import java.util.List;
-
-/**
- * Base interface for extensible assembly model objects.
- *
- * @version $Rev$ $Date$
- * @tuscany.spi.extension.inheritfrom
- */
-public interface Extensible extends Base {
-
- /**
- * Returns a list of extension objects contained in this model object.
- *
- * @return a list of extension objects container in this model object
- */
- List<Object> getExtensions();
-
- /**
- * Returns a list of attribute extensions contained in this model object
- *
- * @return a list of attribute extensions contained in this model object
- */
- List<Extension> getAttributeExtensions();
-
-}
diff --git a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/Extension.java b/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/Extension.java
deleted file mode 100644
index d179ce7b3b..0000000000
--- a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/Extension.java
+++ /dev/null
@@ -1,66 +0,0 @@
-/*
- * 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.assembly;
-
-import javax.xml.namespace.QName;
-
-/**
- * Base interface for storing contents of extensible assembly model objects.
- *
- * @version $Rev$ $Date$
- * @tuscany.spi.extension.asclient
- */
-public interface Extension {
-
- /**
- * Return QName for the extension
- * @return the extension QName
- */
- QName getQName();
-
- /**
- * Set QName for the extension
- * @param qName the extension QName
- */
- void setQName(QName qName);
-
- /**
- * Return the original extension value
- * @return the extension value
- */
- <T> T getValue();
-
- /**
- * Set the original extension value
- * @param value the extension value
- */
- <T> void setValue(T value);
-
- /**
- * Return whether or not the extension is an attribute
- * @return
- */
- boolean isAttribute();
-
- /**
- * Set whether or not the extension is an attribute
- * @param value
- */
- void setAttribute(boolean isAttribute);
-}
diff --git a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/Implementation.java b/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/Implementation.java
deleted file mode 100644
index 3912896f0c..0000000000
--- a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/Implementation.java
+++ /dev/null
@@ -1,36 +0,0 @@
-/*
- * 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.assembly;
-
-import java.util.List;
-
-import javax.xml.namespace.QName;
-
-import org.apache.tuscany.sca.interfacedef.Operation;
-
-/**
- * Represents a component implementation.
- *
- * @version $Rev$ $Date$
- * @tuscany.spi.extension.inheritfrom
- */
-public interface Implementation extends ComponentType {
- QName getType();
- List<Operation> getOperations();
-}
diff --git a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/Multiplicity.java b/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/Multiplicity.java
deleted file mode 100644
index 5b719e50bc..0000000000
--- a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/Multiplicity.java
+++ /dev/null
@@ -1,50 +0,0 @@
-/*
- * 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.assembly;
-
-/**
- * Enumeration for multiplicity. Defines the number of wires that can connect a
- * reference to target services.
- *
- * @version $Rev$ $Date$
- * @tuscany.spi.extension
- */
-public enum Multiplicity {
-
- /**
- * Zero or one wire can have the reference as a source.
- */
- ZERO_ONE,
-
- /**
- * The default setting, one wire can have the reference as a source.
- */
- ONE_ONE,
-
- /**
- * Zero or more wires can have the reference as a source.
- */
- ZERO_N,
-
- /**
- * One or more wires can have the reference as a source.
- */
- ONE_N
-
-}
diff --git a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/OperationSelector.java b/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/OperationSelector.java
deleted file mode 100644
index 9df72e358d..0000000000
--- a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/OperationSelector.java
+++ /dev/null
@@ -1,29 +0,0 @@
-/*
- * 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.assembly;
-
-/**
- * Represents an operationSelector
- *
- * @version $Rev$ $Date$
- * @tuscany.spi.extension.asclient
- */
-public interface OperationSelector extends Base, Cloneable {
-
-}
diff --git a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/OperationsConfigurator.java b/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/OperationsConfigurator.java
deleted file mode 100644
index 9563d2e1cb..0000000000
--- a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/OperationsConfigurator.java
+++ /dev/null
@@ -1,33 +0,0 @@
-/*
- * 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.assembly;
-
-import java.util.List;
-
-/**
- * Interface to be implemented by SCA artifacts that support configuration of 'operation' child
- * elements for policies etc.
- * @tuscany.spi.extension.inheritfrom
- * @version $Rev$ $Date$
- */
-
-public interface OperationsConfigurator {
- List<ConfiguredOperation> getConfiguredOperations();
-}
diff --git a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/Property.java b/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/Property.java
deleted file mode 100644
index c65b6213b0..0000000000
--- a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/Property.java
+++ /dev/null
@@ -1,40 +0,0 @@
-/*
- * 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.assembly;
-
-/**
- * A property allows for the configuration of an implementation with externally
- * set data values. An implementation can have zero or more properties. Each
- * property has a data type, which may be either simple or complex. An
- * implementation may also define a default value for a property.
- *
- * @version $Rev$ $Date$
- * @tuscany.spi.extension.asclient
- */
-public interface Property extends AbstractProperty, Cloneable {
-
- /**
- * Returns a clone of the property.
- *
- * @return a clone of the property
- * @throws CloneNotSupportedException
- */
- Object clone() throws CloneNotSupportedException;
-
-}
diff --git a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/Reference.java b/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/Reference.java
deleted file mode 100644
index db677bdabb..0000000000
--- a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/Reference.java
+++ /dev/null
@@ -1,80 +0,0 @@
-/*
- * 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.assembly;
-
-import java.util.List;
-
-/**
- * Represents a reference. References within an implementation represent links
- * to services that the implementation uses that must be provided by other
- * components.
- *
- * @version $Rev$ $Date$
- * @tuscany.spi.extension.asclient
- */
-public interface Reference extends AbstractReference, Contract {
-
- /**
- * Returns a boolean value, "false" by default, which indicates that the
- * implementation wires this reference dynamically.
- *
- * @return true if the implementation wires this reference dynamically
- */
- boolean isWiredByImpl();
-
- /**
- * Sets a boolean value, "false" by default, which indicates that the
- * implementation wires this reference dynamically.
- *
- * @param wiredByImpl whether the implementation wires this reference
- * dynamically
- */
- void setWiredByImpl(boolean wiredByImpl);
-
-
- /**
- * Returns the targets of this reference.
- *
- * @return the targets of this reference.
- */
- List<ComponentService> getTargets();
-
- /**
- * Returns the endpoint references implied by this reference.
- *
- * Endpoint references are used to represent:
- *
- * - manually specified reference targets
- * - reference targets determined by autowire
- * - manually configured remote bindings
- *
- * @return the endpoint references implied by this reference
- */
- List<EndpointReference> getEndpointReferences();
-
- /**
- * Indicate if the reference allows pass by reference for remotable operations
- */
- boolean isAllowsPassByReference();
-
- /**
- * @param allowsPassByReference the allowsPassByReference to set
- */
- void setAllowsPassByReference(boolean allowsPassByReference);
-}
diff --git a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/SCABinding.java b/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/SCABinding.java
deleted file mode 100644
index 317655ee98..0000000000
--- a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/SCABinding.java
+++ /dev/null
@@ -1,62 +0,0 @@
-/*
- * 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.assembly;
-
-import javax.xml.namespace.QName;
-
-/**
- * Represents an SCA binding.
- *
- * @version $Rev$ $Date$
- */
-public interface SCABinding extends Binding {
- QName TYPE = new QName(SCA11_NS, "binding.sca");
-
- /**
- * Retrieve the type of the binding that this binding.sca
- * delegates to
- *
- * @return delegate binding type
- */
- String getDelegateBindingType();
-
- /**
- * Set the type of the binding that this binding.sca
- * delegates to
- *
- * @param delegateBindingType
- */
- void setDelegateBindingType(String delegateBindingType);
-
- /**
- * Get the URI for the binding that this binding.sca
- * delegates to
- *
- * @return delegate binding URI
- */
- String getDelegateBindingURI();
-
- /**
- * Set the URI for the binding that this binding.sca
- * delegates to
- *
- * @param delegateBindingURI
- */
- void setDelegateBindingURI(String delegateBindingURI);
-}
diff --git a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/SCABindingFactory.java b/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/SCABindingFactory.java
deleted file mode 100644
index feae980326..0000000000
--- a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/SCABindingFactory.java
+++ /dev/null
@@ -1,35 +0,0 @@
-/*
- * 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.assembly;
-
-/**
- * A factory for the SCA binding model
- *
- * @version $Rev$ $Date$
- */
-public interface SCABindingFactory {
-
- /**
- * Create a new SCA binding.
- *
- * @return a new SCA binding
- */
- SCABinding createSCABinding();
-
-}
diff --git a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/Service.java b/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/Service.java
deleted file mode 100644
index 9caa7563c9..0000000000
--- a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/Service.java
+++ /dev/null
@@ -1,59 +0,0 @@
-/*
- * 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.assembly;
-
-import java.util.List;
-
-/**
- * Represents a service. Services are used to publish services provided by
- * implementations, so that they are addressable by other components.
- *
- * @version $Rev$ $Date$
- * @tuscany.spi.extension.asclient
- */
-public interface Service extends AbstractService, Contract {
- /**
- * Returns the endpoints implied by this service.
- *
- * Endpoints represent configured bindings for a service. Hence a service
- * with two bindings will expose two Endpoints. Where a promoted service has
- * new binding configuration applied by a promoting component Endpoints are
- * introduced to represent these new bindings.
- *
- * @return the endpoints implied by this service
- */
- List<Endpoint> getEndpoints();
-
-
- /**
- * Returns true if this service was defined based on JAXWS annotations
- * in a Java implementation
- *
- * @return
- */
- boolean isJAXWSService();
-
- /**
- * Allows the JAXWSService flag to be set. It should be set true if the service
- * configuration has been affected by JAXWS annotations.
- *
- * @param isJAXWSService
- */
- void setJAXWSService(boolean isJAXWSService);
-}
diff --git a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/Wire.java b/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/Wire.java
deleted file mode 100644
index 075b50eec1..0000000000
--- a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/Wire.java
+++ /dev/null
@@ -1,85 +0,0 @@
-/*
- * 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.assembly;
-
-import org.apache.tuscany.sca.policy.PolicySubject;
-
-/**
- * Represents a wire.
- *
- * @version $Rev$ $Date$
- */
-public interface Wire extends Base, Extensible, PolicySubject, Cloneable {
-
- /**
- * Returns the source of the wire.
- *
- * @return the source of the wire
- */
- ComponentReference getSource();
-
- /**
- * Sets the source of the wire.
- *
- * @param source the source of the wire
- */
- void setSource(ComponentReference source);
-
- /**
- * Returns the target of the wire.
- *
- * @return the target of the wire
- */
- ComponentService getTarget();
-
- /**
- * Sets the target of the wire.
- *
- * @param target the target of the wire
- */
- void setTarget(ComponentService target);
-
- /**
- * A boolean value, with the default of "false". When a wire element has
- * @replace="false", the wire is added to the set of wires which apply to
- * the reference identified by the @source attribute. When a wire element
- * has @replace="true", the wire is added to the set of wires which apply to
- * the reference identified by the @source attribute - but any wires for that
- * reference specified by means of the @target attribute of the reference
- * are removed from the set of wires which apply to the reference.
- *
- * @return
- */
- boolean isReplace();
-
- /**
- * Set the replace flag for the wire
- * @param replace
- */
- void setReplace(boolean replace);
-
- /**
- * Returns a clone of the wire.
- *
- * @return a clone of the wire
- * @throws CloneNotSupportedException
- */
- Object clone() throws CloneNotSupportedException;
-
-}
diff --git a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/WireFormat.java b/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/WireFormat.java
deleted file mode 100644
index c622737454..0000000000
--- a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/WireFormat.java
+++ /dev/null
@@ -1,31 +0,0 @@
-/*
- * 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.assembly;
-
-import javax.xml.namespace.QName;
-
-/**
- * Represents a wireFormat.
- *
- * @version $Rev$ $Date$
- * @tuscany.spi.extension.inheritfrom
- */
-public interface WireFormat extends Base, Cloneable {
- QName getSchemaName();
-}
diff --git a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/builder/BindingBuilder.java b/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/builder/BindingBuilder.java
deleted file mode 100644
index 8c56385c9e..0000000000
--- a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/builder/BindingBuilder.java
+++ /dev/null
@@ -1,54 +0,0 @@
-/*
- * 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.assembly.builder;
-
-import javax.xml.namespace.QName;
-
-import org.apache.tuscany.sca.assembly.Binding;
-import org.apache.tuscany.sca.assembly.Component;
-import org.apache.tuscany.sca.assembly.Contract;
-
-/**
- * A builder that handles any build-time configuration needed by bindings.
- *
- * @version $Rev$ $Date$
- * @tuscany.spi.extension.inheritfrom
- */
-public interface BindingBuilder<B extends Binding> {
-
- /**
- * Configure a binding.
- *
- * @param component The component for the binding's service or reference
- * @param contract The binding's service or reference
- * @param context The context for the builder
- * @param rebuild Set true to have derived data in the binding rebuilt
- * caching can cause problems in the late binding case so we
- * need to be able to remove cached data
- */
- void build(Component component, Contract contract, B binding, BuilderContext context, boolean rebuild);
-
- /**
- * Get QName of the binding type
- * @return The binding type
- */
- QName getBindingType();
-
-}
diff --git a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/builder/BuilderContext.java b/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/builder/BuilderContext.java
deleted file mode 100644
index 374c36c1f5..0000000000
--- a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/builder/BuilderContext.java
+++ /dev/null
@@ -1,107 +0,0 @@
-/*
- * 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.assembly.builder;
-
-import java.util.Collections;
-import java.util.List;
-import java.util.Map;
-
-import javax.xml.namespace.QName;
-
-import org.apache.tuscany.sca.core.ExtensionPointRegistry;
-import org.apache.tuscany.sca.core.UtilityExtensionPoint;
-import org.apache.tuscany.sca.definitions.Definitions;
-import org.apache.tuscany.sca.monitor.DefaultMonitorFactory;
-import org.apache.tuscany.sca.monitor.Monitor;
-import org.apache.tuscany.sca.monitor.MonitorFactory;
-
-/**
- * Context for builders
- * @tuscany.spi.extension.asclient
- */
-public class BuilderContext {
- protected Definitions definitions;
- protected Map<QName, List<String>> bindingBaseURIs = Collections.emptyMap();
- protected Monitor monitor;
-
- /**
- * @param definitions
- * @param bindingBaseURIs
- * @param monitor
- */
- public BuilderContext(Definitions definitions, Map<QName, List<String>> bindingBaseURIs, Monitor monitor) {
- super();
- this.definitions = definitions;
- if (bindingBaseURIs != null) {
- this.bindingBaseURIs = bindingBaseURIs;
- }
- this.monitor = monitor;
- }
-
- /**
- * Create a builder context with the monitor
- * @param monitor
- */
- public BuilderContext(Monitor monitor) {
- super();
- this.monitor = monitor;
- }
-
- /**
- * Create a builder context with the extension point registry
- * @param registry
- */
- public BuilderContext(ExtensionPointRegistry registry) {
- super();
- MonitorFactory monitorFactory =
- registry.getExtensionPoint(UtilityExtensionPoint.class).getUtility(MonitorFactory.class);
- this.monitor = monitorFactory.createMonitor();
- }
-
- /**
- * Create a builder context with a default monitor
- */
- public BuilderContext() {
- super();
- this.monitor = new DefaultMonitorFactory().createMonitor();
- }
-
- public Monitor getMonitor() {
- return monitor;
- }
-
- public Monitor setMonitor(Monitor monitor) {
- Monitor old = this.monitor;
- this.monitor = monitor;
- return old;
- }
-
- public Definitions getDefinitions() {
- return definitions;
- }
-
- public Map<QName, List<String>> getBindingBaseURIs() {
- return bindingBaseURIs;
- }
-
- public void setDefinitions(Definitions definitions) {
- this.definitions = definitions;
- }
-}
diff --git a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/builder/BuilderExtensionPoint.java b/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/builder/BuilderExtensionPoint.java
deleted file mode 100644
index 14ae2042d3..0000000000
--- a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/builder/BuilderExtensionPoint.java
+++ /dev/null
@@ -1,149 +0,0 @@
-/*
- * 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.assembly.builder;
-
-import java.util.Collection;
-
-import javax.xml.namespace.QName;
-
-import org.apache.tuscany.sca.assembly.Binding;
-import org.apache.tuscany.sca.assembly.Implementation;
-
-/**
- * An extension point for Composite builders.
- *
- * @version $Rev$ $Date$
- * @tuscany.spi.extension.asclient
- */
-public interface BuilderExtensionPoint {
-
- /**
- * Adds a contract builder.
- *
- * @param compositeBuilder
- */
- void addContractBuilder(ContractBuilder contractBuilder);
-
- /**
- * Removes a contract builder.
- *
- * @param compositeBuilder
- */
- void removeContractBuilder(ContractBuilder contractBuilder);
-
- /**
- * Returns the contract builder
- *
- * @param id
- * @return
- */
- ContractBuilder getContractBuilder();
-
- /**
- * Adds a composite builder.
- *
- * @param compositeBuilder
- */
- void addCompositeBuilder(CompositeBuilder compositeBuilder);
-
- /**
- * Removes a composite builder.
- *
- * @param compositeBuilder
- */
- void removeCompositeBuilder(CompositeBuilder compositeBuilder);
-
- /**
- * Returns the composite builder with the given id.
- *
- * @param id
- * @return
- */
- CompositeBuilder getCompositeBuilder(String id);
-
- /**
- * Add a binding builder
- * @param bindingBuilder
- */
- void addBindingBuilder(BindingBuilder<?> bindingBuilder);
-
- /**
- * Look up a binding builder by the binding type
- * @param <B>
- * @param bindingType
- * @return
- */
- <B extends Binding> BindingBuilder<B> getBindingBuilder(QName bindingType);
-
- /**
- * Remove a binding builder
- * @param <B>
- * @param builder
- */
- <B extends Binding> void removeBindingBuilder(BindingBuilder<B> builder);
-
- /**
- * Add an implementation builder
- * @param implementationBuilder
- */
- void addImplementationBuilder(ImplementationBuilder<?> implementationBuilder);
-
- /**
- * Look up an implementation builder by implementation type
- * @param <I>
- * @param implementationType
- * @return
- */
- <I extends Implementation> ImplementationBuilder<I> getImplementationBuilder(QName implementationType);
-
- /**
- * Remove an implementation builder
- * @param <I>
- * @param builder
- */
- <I extends Implementation> void removeImplementationBuilder(ImplementationBuilder<I> builder);
-
- /**
- * Add a policy builder
- * @param policyBuilder
- */
- void addPolicyBuilder(PolicyBuilder<?> policyBuilder);
-
- /**
- * Look up a Policy builder by the Policy type
- * @param <P>
- * @param policyType
- * @return
- */
- <P> PolicyBuilder<P> getPolicyBuilder(QName policyType);
-
- /**
- * Remove a Policy builder
- * @param <P>
- * @param builder
- */
- <P> void removePolicyBuilder(PolicyBuilder<P> builder);
-
- /**
- * Get a collection of policy builders
- * @return
- */
- public Collection<PolicyBuilder> getPolicyBuilders();
-}
diff --git a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/builder/CompositeBuilder.java b/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/builder/CompositeBuilder.java
deleted file mode 100644
index 50bf10f54a..0000000000
--- a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/builder/CompositeBuilder.java
+++ /dev/null
@@ -1,51 +0,0 @@
-/*
- * 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.assembly.builder;
-
-import org.apache.tuscany.sca.assembly.Composite;
-
-/**
- * A builder that handles the configuration of the components inside a
- * composite and the wiring of component references to component services.
- *
- * @version $Rev$ $Date$
- */
-public interface CompositeBuilder {
-
- /**
- * Returns the ID of the builder.
- *
- * @return An ID that identifies the builder
- */
- String getID();
-
- /**
- * Build a composite.
- *
- * @param composite The composite
- * @param context The builder context
- * @return The composite built from the original one. In most cases, it is the same as the orginal one as
- * most builders only change the content of the composite.
- *
- * @throws CompositeBuilderException
- */
- Composite build(Composite composite, BuilderContext context) throws CompositeBuilderException;
-
-}
diff --git a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/builder/CompositeBuilderException.java b/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/builder/CompositeBuilderException.java
deleted file mode 100644
index 5a2015f55e..0000000000
--- a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/builder/CompositeBuilderException.java
+++ /dev/null
@@ -1,45 +0,0 @@
-/*
- * 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.assembly.builder;
-
-/**
- * Reports a composite builder exception.
- *
- * @version $Rev$ $Date$
- */
-public class CompositeBuilderException extends Exception {
- private static final long serialVersionUID = -8916323176803443856L;
-
- public CompositeBuilderException() {
- }
-
- public CompositeBuilderException(String message) {
- super(message);
- }
-
- public CompositeBuilderException(Throwable cause) {
- super(cause);
- }
-
- public CompositeBuilderException(String message, Throwable cause) {
- super(message, cause);
- }
-
-}
diff --git a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/builder/ContractBuilder.java b/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/builder/ContractBuilder.java
deleted file mode 100644
index 99a58dc1c8..0000000000
--- a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/builder/ContractBuilder.java
+++ /dev/null
@@ -1,37 +0,0 @@
-/*
- * 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.assembly.builder;
-
-import org.apache.tuscany.sca.assembly.Endpoint;
-import org.apache.tuscany.sca.assembly.EndpointReference;
-import org.apache.tuscany.sca.interfacedef.InterfaceContract;
-
-/**
- * A builder that builds WSDL versions of component contracts so that the
- * component contracts can be compared with binding contracts in a generic way.
- * The generic interface format defined by the Assembly spec is WSDL 1.1
- */
-public interface ContractBuilder {
-
- /**
- * Build the WSDL version of the Interface Contract
- */
- boolean build(InterfaceContract interfaceContract, BuilderContext context);
-}
diff --git a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/builder/DefaultBuilderExtensionPoint.java b/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/builder/DefaultBuilderExtensionPoint.java
deleted file mode 100644
index 8b037a7534..0000000000
--- a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/builder/DefaultBuilderExtensionPoint.java
+++ /dev/null
@@ -1,479 +0,0 @@
-/*
- * 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.assembly.builder;
-
-import java.lang.reflect.Constructor;
-import java.util.Collection;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-
-import javax.xml.namespace.QName;
-
-import org.apache.tuscany.sca.assembly.Binding;
-import org.apache.tuscany.sca.assembly.Component;
-import org.apache.tuscany.sca.assembly.Composite;
-import org.apache.tuscany.sca.assembly.Contract;
-import org.apache.tuscany.sca.assembly.Endpoint;
-import org.apache.tuscany.sca.assembly.EndpointReference;
-import org.apache.tuscany.sca.assembly.Implementation;
-import org.apache.tuscany.sca.core.ExtensionPointRegistry;
-import org.apache.tuscany.sca.core.FactoryExtensionPoint;
-import org.apache.tuscany.sca.core.LifeCycleListener;
-import org.apache.tuscany.sca.core.UtilityExtensionPoint;
-import org.apache.tuscany.sca.extensibility.ServiceDeclaration;
-import org.apache.tuscany.sca.extensibility.ServiceDeclarationParser;
-import org.apache.tuscany.sca.extensibility.ServiceDiscovery;
-import org.apache.tuscany.sca.interfacedef.InterfaceContract;
-import org.apache.tuscany.sca.interfacedef.InterfaceContractMapper;
-
-/**
- * Default implementation of a provider factory extension point.
- *
- * @version $Rev$ $Date$
- */
-public class DefaultBuilderExtensionPoint implements BuilderExtensionPoint, LifeCycleListener {
-
- private ExtensionPointRegistry registry;
- private final Map<String, CompositeBuilder> builders = new HashMap<String, CompositeBuilder>();
- private final Map<QName, BindingBuilder> bindingBuilders = new HashMap<QName, BindingBuilder>();
- private final Map<QName, ImplementationBuilder> implementationBuilders =
- new HashMap<QName, ImplementationBuilder>();
- private final Map<QName, PolicyBuilder> policyBuilders = new HashMap<QName, PolicyBuilder>();
- private ContractBuilder contractBuilder = null;
-
- private boolean loaded;
-
- public DefaultBuilderExtensionPoint(ExtensionPointRegistry registry) {
- this.registry = registry;
- }
-
- public void start() {
- }
-
- public void stop() {
- builders.clear();
- bindingBuilders.clear();
- implementationBuilders.clear();
- loaded = false;
- }
-
- public void addCompositeBuilder(CompositeBuilder builder) {
- builders.put(builder.getID(), builder);
- }
-
- public void removeCompositeBuilder(CompositeBuilder builder) {
- builders.remove(builder.getID());
- }
-
- public CompositeBuilder getCompositeBuilder(String id) {
- loadBuilders();
- return builders.get(id);
- }
-
- public void addContractBuilder(ContractBuilder contractBuilder){
- this.contractBuilder = contractBuilder;
- }
-
- public void removeContractBuilder(ContractBuilder contractBuilder){
- this.contractBuilder = null;
- }
-
- public ContractBuilder getContractBuilder(){
- loadBuilders();
- return contractBuilder;
- }
-
- /**
- * Load builders declared under META-INF/services.
- */
- private synchronized void loadBuilders() {
- if (loaded)
- return;
-
- FactoryExtensionPoint factories = registry.getExtensionPoint(FactoryExtensionPoint.class);
-
- UtilityExtensionPoint utils = registry.getExtensionPoint(UtilityExtensionPoint.class);
- InterfaceContractMapper mapper = utils.getUtility(InterfaceContractMapper.class);
-
- // Get the provider factory service declarations
- Collection<ServiceDeclaration> builderDeclarations;
- ServiceDiscovery serviceDiscovery = registry.getServiceDiscovery();
- try {
- builderDeclarations = serviceDiscovery.getServiceDeclarations(CompositeBuilder.class.getName());
- } catch (Exception e) {
- throw new IllegalStateException(e);
- }
-
- for (ServiceDeclaration builderDeclaration : builderDeclarations) {
- Map<String, String> attributes = builderDeclaration.getAttributes();
- String id = attributes.get("id");
-
- CompositeBuilder builder = new LazyCompositeBuilder(id, builderDeclaration, this, factories, mapper);
- builders.put(id, builder);
- }
-
- try {
- builderDeclarations = serviceDiscovery.getServiceDeclarations(BindingBuilder.class);
- } catch (Exception e) {
- throw new IllegalStateException(e);
- }
-
- for (ServiceDeclaration builderDeclaration : builderDeclarations) {
- BindingBuilder<?> builder = new LazyBindingBuilder(builderDeclaration);
- bindingBuilders.put(builder.getBindingType(), builder);
- }
-
- try {
- builderDeclarations = serviceDiscovery.getServiceDeclarations(ImplementationBuilder.class);
- } catch (Exception e) {
- throw new IllegalStateException(e);
- }
-
- for (ServiceDeclaration builderDeclaration : builderDeclarations) {
- ImplementationBuilder<?> builder = new LazyImplementationBuilder(builderDeclaration);
- implementationBuilders.put(builder.getImplementationType(), builder);
- }
-
- try {
- builderDeclarations = serviceDiscovery.getServiceDeclarations(PolicyBuilder.class);
- } catch (Exception e) {
- throw new IllegalStateException(e);
- }
-
- for (ServiceDeclaration builderDeclaration : builderDeclarations) {
- PolicyBuilder<?> builder = new LazyPolicyBuilder(builderDeclaration);
- policyBuilders.put(builder.getPolicyType(), builder);
- }
-
- try {
- builderDeclarations = serviceDiscovery.getServiceDeclarations(ContractBuilder.class);
- } catch (Exception e) {
- throw new IllegalStateException(e);
- }
-
- for (ServiceDeclaration builderDeclaration : builderDeclarations) {
- contractBuilder = new LazyContractBuilder(builderDeclaration);
- }
-
-
- loaded = true;
-
- }
-
- public void addBindingBuilder(BindingBuilder<?> bindingBuilder) {
- bindingBuilders.put(bindingBuilder.getBindingType(), bindingBuilder);
- }
-
- public <B extends Binding> BindingBuilder<B> getBindingBuilder(QName bindingType) {
- loadBuilders();
- return (BindingBuilder<B>)bindingBuilders.get(bindingType);
- }
-
- public <B extends Binding> void removeBindingBuilder(BindingBuilder<B> builder) {
- bindingBuilders.remove(builder.getBindingType());
- }
-
- public void addImplementationBuilder(ImplementationBuilder<?> implementationBuilder) {
- implementationBuilders.put(implementationBuilder.getImplementationType(), implementationBuilder);
- }
-
- public <I extends Implementation> ImplementationBuilder<I> getImplementationBuilder(QName implementationType) {
- loadBuilders();
- return (ImplementationBuilder<I>)implementationBuilders.get(implementationType);
- }
-
- public <I extends Implementation> void removeImplementationBuilder(ImplementationBuilder<I> builder) {
- implementationBuilders.remove(builder.getImplementationType());
- }
-
- public void addPolicyBuilder(PolicyBuilder<?> policyBuilder) {
- policyBuilders.put(policyBuilder.getPolicyType(), policyBuilder);
- }
-
- public <B> PolicyBuilder<B> getPolicyBuilder(QName policyType) {
- loadBuilders();
- return (PolicyBuilder<B>)policyBuilders.get(policyType);
- }
-
- public Collection<PolicyBuilder> getPolicyBuilders() {
- loadBuilders();
- return policyBuilders.values();
- }
-
- public <B> void removePolicyBuilder(PolicyBuilder<B> builder) {
- policyBuilders.remove(builder.getPolicyType());
- }
-
- /**
- * A wrapper around a composite builder allowing lazy
- * loading and initialization of implementation providers.
- */
- private class LazyCompositeBuilder implements CompositeBuilder {
-
- private FactoryExtensionPoint factories;
- private InterfaceContractMapper mapper;
- private String id;
- private ServiceDeclaration builderDeclaration;
- private CompositeBuilder builder;
- private BuilderExtensionPoint builders;
-
- private LazyCompositeBuilder(String id,
- ServiceDeclaration factoryDeclaration,
- BuilderExtensionPoint builders,
- FactoryExtensionPoint factories,
- InterfaceContractMapper mapper) {
- this.id = id;
- this.builderDeclaration = factoryDeclaration;
- this.builders = builders;
- this.factories = factories;
- this.mapper = mapper;
- }
-
- public String getID() {
- return id;
- }
-
- public Composite build(Composite composite, BuilderContext context)
- throws CompositeBuilderException {
- return getBuilder().build(composite, context);
- }
-
- private CompositeBuilder getBuilder() {
- if (builder == null) {
- try {
- Class<CompositeBuilder> builderClass = (Class<CompositeBuilder>)builderDeclaration.loadClass();
- try {
- Constructor<CompositeBuilder> constructor =
- builderClass.getConstructor(FactoryExtensionPoint.class, InterfaceContractMapper.class);
- builder = constructor.newInstance(factories, mapper);
- } catch (NoSuchMethodException e) {
- try {
- Constructor<CompositeBuilder> constructor =
- builderClass.getConstructor(BuilderExtensionPoint.class,
- FactoryExtensionPoint.class,
- InterfaceContractMapper.class);
- builder = constructor.newInstance(builders, factories, mapper);
- } catch (NoSuchMethodException ex) {
- Constructor<CompositeBuilder> constructor =
- builderClass.getConstructor(ExtensionPointRegistry.class);
- builder = constructor.newInstance(registry);
- }
- }
- } catch (Exception e) {
- throw new IllegalStateException(e);
- }
- }
- return builder;
- }
-
- }
-
- private class LazyBindingBuilder implements BindingBuilder {
- private ServiceDeclaration sd;
- private BindingBuilder<?> builder;
- private QName qname;;
-
- /**
- * @param sd
- */
- public LazyBindingBuilder(ServiceDeclaration sd) {
- super();
- this.sd = sd;
- this.qname = ServiceDeclarationParser.getQName(sd.getAttributes().get("qname"));
- }
-
- public void build(Component component, Contract contract, Binding binding, BuilderContext context, boolean rebuild) {
- getBuilder().build(component, contract, binding, context, rebuild);
- }
-
- public QName getBindingType() {
- return qname;
- }
-
-
- private synchronized BindingBuilder getBuilder() {
- if (builder == null) {
- try {
- Class<?> builderClass = sd.loadClass();
- try {
- Constructor<?> constructor = builderClass.getConstructor(ExtensionPointRegistry.class);
- builder = (BindingBuilder)constructor.newInstance(registry);
- } catch (NoSuchMethodException e) {
- Constructor<?> constructor = builderClass.getConstructor();
- builder = (BindingBuilder)constructor.newInstance();
-
- }
- } catch (Exception e) {
- throw new IllegalStateException(e);
- }
- }
- return builder;
- }
-
- }
-
- private class LazyImplementationBuilder implements ImplementationBuilder {
- private ServiceDeclaration sd;
- private ImplementationBuilder<?> builder;
- private QName qname;;
-
- /**
- * @param sd
- */
- public LazyImplementationBuilder(ServiceDeclaration sd) {
- super();
- this.sd = sd;
- this.qname = ServiceDeclarationParser.getQName(sd.getAttributes().get("qname"));
- }
-
- public void build(Component component, Implementation implementation, BuilderContext context) {
- getBuilder().build(component, implementation, context);
- }
-
- public QName getImplementationType() {
- return qname;
- }
-
- private synchronized ImplementationBuilder getBuilder() {
- if (builder == null) {
- try {
- Class<?> builderClass = sd.loadClass();
- try {
- Constructor<?> constructor = builderClass.getConstructor(ExtensionPointRegistry.class);
- builder = (ImplementationBuilder)constructor.newInstance(registry);
- } catch (NoSuchMethodException e) {
- Constructor<?> constructor = builderClass.getConstructor();
- builder = (ImplementationBuilder)constructor.newInstance();
-
- }
- } catch (Exception e) {
- throw new IllegalStateException(e);
- }
- }
- return builder;
- }
-
- }
-
- private class LazyPolicyBuilder implements PolicyBuilder {
- private ServiceDeclaration sd;
- private PolicyBuilder<?> builder;
- private QName qname;;
-
- /**
- * @param sd
- */
- public LazyPolicyBuilder(ServiceDeclaration sd) {
- super();
- this.sd = sd;
- this.qname = ServiceDeclarationParser.getQName(sd.getAttributes().get("qname"));
- }
-
- public boolean build(Component component, Implementation implementation, BuilderContext context) {
- return getBuilder().build(component, implementation, context);
- }
-
- public QName getPolicyType() {
- return qname;
- }
-
- public List<QName> getSupportedBindings() {
- return getBuilder().getSupportedBindings();
- }
-
- private synchronized PolicyBuilder getBuilder() {
- if (builder == null) {
- try {
- Class<?> builderClass = sd.loadClass();
- try {
- Constructor<?> constructor = builderClass.getConstructor(ExtensionPointRegistry.class);
- builder = (PolicyBuilder)constructor.newInstance(registry);
- } catch (NoSuchMethodException e) {
- Constructor<?> constructor = builderClass.getConstructor();
- builder = (PolicyBuilder)constructor.newInstance();
-
- }
- } catch (Exception e) {
- throw new IllegalStateException(e);
- }
- }
- return builder;
- }
-
- public boolean build(Endpoint endpoint, BuilderContext context) {
- return getBuilder().build(endpoint, context);
- }
-
- public boolean build(org.apache.tuscany.sca.assembly.EndpointReference endpointReference, BuilderContext context) {
- return getBuilder().build(endpointReference, context);
- }
-
- public boolean build(EndpointReference endpointReference, Endpoint endpoint, BuilderContext context) {
- return getBuilder().build(endpointReference, endpoint, context);
- }
- }
-
- private class LazyContractBuilder implements ContractBuilder {
- private ServiceDeclaration sd;
- private ContractBuilder builder;
-
- /**
- * @param sd
- */
- public LazyContractBuilder(ServiceDeclaration sd) {
- super();
- this.sd = sd;
- }
-
-/*
- public boolean build(EndpointReference endpointReference, BuilderContext context){
- return getBuilder().build(endpointReference, context);
- }
-
- public boolean build(Endpoint endpoint, BuilderContext context){
- return getBuilder().build(endpoint, context);
- }
-*/
-
- public boolean build(InterfaceContract interfaceContract, BuilderContext context){
- return getBuilder().build(interfaceContract, context);
- }
-
- private synchronized ContractBuilder getBuilder() {
- if (builder == null) {
- try {
- Class<?> builderClass = sd.loadClass();
- try {
- Constructor<?> constructor = builderClass.getConstructor(ExtensionPointRegistry.class);
- builder = (ContractBuilder)constructor.newInstance(registry);
- } catch (NoSuchMethodException e) {
- Constructor<?> constructor = builderClass.getConstructor();
- builder = (ContractBuilder)constructor.newInstance();
-
- }
- } catch (Exception e) {
- throw new IllegalStateException(e);
- }
- }
- return builder;
- }
- }
-}
diff --git a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/builder/ImplementationBuilder.java b/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/builder/ImplementationBuilder.java
deleted file mode 100644
index d47c3d9032..0000000000
--- a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/builder/ImplementationBuilder.java
+++ /dev/null
@@ -1,50 +0,0 @@
-/*
- * 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.assembly.builder;
-
-import javax.xml.namespace.QName;
-
-import org.apache.tuscany.sca.assembly.Component;
-import org.apache.tuscany.sca.assembly.Implementation;
-
-/**
- * A builder that handles any build-time configuration needed by implementations.
- *
- * @version $Rev$ $Date$
- * @tuscany.spi.extension.inheritfrom
- */
-public interface ImplementationBuilder<I extends Implementation> {
-
- /**
- * Configure a component implementation.
- *
- * @param component The component
- * @param context TODO
- * @param contract The implementation
- */
- void build(Component component, I implmentation, BuilderContext context);
-
- /**
- * Get the QName of the implementation type
- * @return
- */
- QName getImplementationType();
-
-}
diff --git a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/builder/Messages.java b/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/builder/Messages.java
deleted file mode 100644
index 4f2842c61a..0000000000
--- a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/builder/Messages.java
+++ /dev/null
@@ -1,31 +0,0 @@
-/*
- * 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.assembly.builder;
-
-/**
- * Constants for resource bundle names
- */
-public interface Messages {
- String RESOURCE_PACKAGE = "org.apache.tuscany.sca.assembly.builder.";
- String ASSEMBLY_VALIDATION = RESOURCE_PACKAGE + "assembly-validation-messages";
- String ASSEMBLY_CONFORMANCE = RESOURCE_PACKAGE + "assembly-conformance-messages";
- String DEFINITIONS_VALIDATION = RESOURCE_PACKAGE + "definitions-validation-messages";
- String BUILDER_VALIDATION_BUNDLE = "org.apache.tuscany.sca.builder.builder-validation-messages";
-}
diff --git a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/builder/PolicyBuilder.java b/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/builder/PolicyBuilder.java
deleted file mode 100644
index 423c856973..0000000000
--- a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/builder/PolicyBuilder.java
+++ /dev/null
@@ -1,84 +0,0 @@
-/*
- * 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.assembly.builder;
-
-import java.util.List;
-
-import javax.xml.namespace.QName;
-
-import org.apache.tuscany.sca.assembly.Component;
-import org.apache.tuscany.sca.assembly.Endpoint;
-import org.apache.tuscany.sca.assembly.EndpointReference;
-import org.apache.tuscany.sca.assembly.Implementation;
-
-/**
- * A builder that is contributed by a specific policy language to validate the configurations
- * for SCA endpoints, endpoint references and component implementations
- * @tuscany.spi.extension.inheritfrom
- */
-public interface PolicyBuilder<T> {
- /**
- * Get the policy type
- * @return
- */
- QName getPolicyType();
-
- /**
- * Return the list of binding type QNames at which this policy implementation
- * is targeted. Or null if the policy is not binding specific
- * @return list of binding type QNames at which this policy implementation or null if it's not binding specific
- */
- List<QName> getSupportedBindings();
-
- /**
- * Build (and validate) the policy settings on the endpoint
- * @param endpoint
- * @param monitor
- * @return true if the policy setting is compatible
- */
- boolean build(Endpoint endpoint, BuilderContext context);
-
- /**
- * Build (and validate) the policy settings on the endpoint reference
- * @param endpointReference
- * @param monitor
- * @return true if the policy setting is compatible
- */
- boolean build(EndpointReference endpointReference, BuilderContext context);
-
- /**
- * Build (and validate) the policy settings on the component implementation
- * @param component
- * @param implementation
- * @param monitor
- * @return true if the policy setting is compatible
- */
- boolean build(Component component, Implementation implementation, BuilderContext context);
-
- /**
- * Build (and validate) the policy settings on the endpoint reference is compatible with the endpoint
- * @param endpointReference
- * @param endpoint
- * @param context
- * @return if the policy setting is compatible
- */
- boolean build(EndpointReference endpointReference, Endpoint endpoint, BuilderContext context);
-
-}
diff --git a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/builder/WireBuilder.java b/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/builder/WireBuilder.java
deleted file mode 100644
index 2bfbe85664..0000000000
--- a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/builder/WireBuilder.java
+++ /dev/null
@@ -1,39 +0,0 @@
-/*
- * 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.assembly.builder;
-
-import org.apache.tuscany.sca.assembly.Endpoint;
-import org.apache.tuscany.sca.assembly.EndpointReference;
-
-/**
- * A builder that connects an endpoint reference to an endpoint
- */
-public interface WireBuilder {
- /**
- * Build the endpoint reference against the endpoint. If the endpoint is a valid target for the
- * endpoint reference, the wire buidler can populate some information from the endpoint into the
- * endpoint reference (such as targetEndpoint, policySets or requiredIntents)
- * @param endpointReference
- * @param endpoint
- * @param context
- * @return true if the endpoint is a valid target for the endpoint reference
- */
- boolean build(EndpointReference endpointReference, Endpoint endpoint, BuilderContext context);
-}
diff --git a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/AbstractPropertyImpl.java b/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/AbstractPropertyImpl.java
deleted file mode 100644
index 24dc20f815..0000000000
--- a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/AbstractPropertyImpl.java
+++ /dev/null
@@ -1,112 +0,0 @@
-/*
- * 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.assembly.impl;
-
-import javax.xml.namespace.QName;
-
-import org.apache.tuscany.sca.assembly.AbstractProperty;
-import org.apache.tuscany.sca.interfacedef.DataType;
-
-/**
- * Represents an abstract property.
- *
- * @version $Rev$ $Date$
- */
-public class AbstractPropertyImpl extends ExtensibleImpl implements AbstractProperty {
- protected Object value;
- protected String name;
- protected QName xsdType;
- protected QName xsdElement;
- protected boolean many;
- protected boolean mustSupply;
- protected DataType dataType;
- protected Object xsdDefinition;
-
- /**
- * Constructs a new abstract property.
- */
- protected AbstractPropertyImpl() {
- }
-
- public Object getValue() {
- return value;
- }
-
- public String getName() {
- return name;
- }
-
- public QName getXSDElement() {
- return xsdElement;
- }
-
- public QName getXSDType() {
- return xsdType;
- }
-
- public boolean isMany() {
- return many;
- }
-
- public boolean isMustSupply() {
- return mustSupply;
- }
-
- public void setValue(Object defaultValue) {
- this.value = defaultValue;
- }
-
- public void setMany(boolean many) {
- this.many = many;
- }
-
- public void setMustSupply(boolean mustSupply) {
- this.mustSupply = mustSupply;
- }
-
- public void setName(String name) {
- this.name = name;
- }
-
- public void setXSDElement(QName element) {
- this.xsdElement = element;
- }
-
- public void setXSDType(QName type) {
- this.xsdType = type;
- }
-
- public DataType getDataType() {
- return dataType;
- }
-
- public void setDataType(DataType dataType) {
- this.dataType = dataType;
- }
-
- public Object getXSDDefinition() {
- return xsdDefinition;
- }
-
- public void setXSDDefinition(Object xsdDefinition) {
- this.xsdDefinition = xsdDefinition;
- }
-
-}
diff --git a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/AbstractReferenceImpl.java b/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/AbstractReferenceImpl.java
deleted file mode 100644
index 3e44f5f7ae..0000000000
--- a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/AbstractReferenceImpl.java
+++ /dev/null
@@ -1,46 +0,0 @@
-/*
- * 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.assembly.impl;
-
-import org.apache.tuscany.sca.assembly.AbstractReference;
-import org.apache.tuscany.sca.assembly.Multiplicity;
-
-/**
- * Represents an abstract reference
- *
- * @version $Rev$ $Date$
- */
-public class AbstractReferenceImpl extends ContractImpl implements AbstractReference {
- private Multiplicity multiplicity = Multiplicity.ONE_ONE;
-
- /**
- * Constructs a new abstract reference.
- */
- protected AbstractReferenceImpl() {
- }
-
- public Multiplicity getMultiplicity() {
- return multiplicity;
- }
-
- public void setMultiplicity(Multiplicity multiplicity) {
- this.multiplicity = multiplicity;
- }
-
-}
diff --git a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/AbstractServiceImpl.java b/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/AbstractServiceImpl.java
deleted file mode 100644
index 24b1a0e03e..0000000000
--- a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/AbstractServiceImpl.java
+++ /dev/null
@@ -1,36 +0,0 @@
-/*
- * 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.assembly.impl;
-
-import org.apache.tuscany.sca.assembly.AbstractService;
-
-/**
- * Represents an abstract service
- *
- * @version $Rev$ $Date$
- */
-public class AbstractServiceImpl extends ContractImpl implements AbstractService {
-
- /**
- * Constructs a new abstract service.
- */
- protected AbstractServiceImpl() {
- }
-
-}
diff --git a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/AssemblyFactoryImpl.java b/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/AssemblyFactoryImpl.java
deleted file mode 100644
index 0759ff1361..0000000000
--- a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/AssemblyFactoryImpl.java
+++ /dev/null
@@ -1,138 +0,0 @@
-/*
- * 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.assembly.impl;
-
-import org.apache.tuscany.sca.assembly.AbstractProperty;
-import org.apache.tuscany.sca.assembly.AbstractReference;
-import org.apache.tuscany.sca.assembly.AbstractService;
-import org.apache.tuscany.sca.assembly.AssemblyFactory;
-import org.apache.tuscany.sca.assembly.Callback;
-import org.apache.tuscany.sca.assembly.Component;
-import org.apache.tuscany.sca.assembly.ComponentProperty;
-import org.apache.tuscany.sca.assembly.ComponentReference;
-import org.apache.tuscany.sca.assembly.ComponentService;
-import org.apache.tuscany.sca.assembly.ComponentType;
-import org.apache.tuscany.sca.assembly.Composite;
-import org.apache.tuscany.sca.assembly.CompositeReference;
-import org.apache.tuscany.sca.assembly.CompositeService;
-import org.apache.tuscany.sca.assembly.ConfiguredOperation;
-import org.apache.tuscany.sca.assembly.Endpoint;
-import org.apache.tuscany.sca.assembly.EndpointReference;
-import org.apache.tuscany.sca.assembly.Extension;
-import org.apache.tuscany.sca.assembly.Property;
-import org.apache.tuscany.sca.assembly.Reference;
-import org.apache.tuscany.sca.assembly.Service;
-import org.apache.tuscany.sca.assembly.Wire;
-import org.apache.tuscany.sca.core.ExtensionPointRegistry;
-
-/**
- * A factory for the assembly model.
- *
- * @version $Rev$ $Date$
- */
-public abstract class AssemblyFactoryImpl implements AssemblyFactory {
-
- protected ExtensionPointRegistry registry;
-
- protected AssemblyFactoryImpl(ExtensionPointRegistry registry) {
- super();
- this.registry = registry;
- }
-
- public AbstractProperty createAbstractProperty() {
- return new AbstractPropertyImpl();
- }
-
- public AbstractReference createAbstractReference() {
- return new AbstractReferenceImpl();
- }
-
- public AbstractService createAbstractService() {
- return new AbstractServiceImpl();
- }
-
- public Callback createCallback() {
- return new CallbackImpl();
- }
-
- public Component createComponent() {
- return new ComponentImpl();
- }
-
- public ComponentProperty createComponentProperty() {
- return new ComponentPropertyImpl();
- }
-
- public ComponentReference createComponentReference() {
- return new ComponentReferenceImpl();
- }
-
- public ComponentService createComponentService() {
- return new ComponentServiceImpl();
- }
-
- public ComponentType createComponentType() {
- return new ComponentTypeImpl();
- }
-
- public Composite createComposite() {
- return new CompositeImpl();
- }
-
- public CompositeReference createCompositeReference() {
- return new CompositeReferenceImpl();
- }
-
- public CompositeService createCompositeService() {
- return new CompositeServiceImpl();
- }
-
- public Property createProperty() {
- return new PropertyImpl();
- }
-
- public Reference createReference() {
- return new ReferenceImpl();
- }
-
- public Service createService() {
- return new ServiceImpl();
- }
-
- public Wire createWire() {
- return new WireImpl();
- }
-
- public Extension createExtension() {
- return new ExtensionImpl();
- }
-
- public Endpoint createEndpoint() {
- return new EndpointImpl(registry);
- }
-
- public EndpointReference createEndpointReference() {
- return new EndpointReferenceImpl(registry);
- }
-
- public ConfiguredOperation createConfiguredOperation() {
- return new ConfiguredOperationImpl();
- }
-}
diff --git a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/BaseImpl.java b/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/BaseImpl.java
deleted file mode 100644
index 516b11724f..0000000000
--- a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/BaseImpl.java
+++ /dev/null
@@ -1,45 +0,0 @@
-/*
- * 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.assembly.impl;
-
-import org.apache.tuscany.sca.assembly.Base;
-
-/**
- * Convenience base class for assembly model objects.
- *
- * @version $Rev$ $Date$
- */
-public abstract class BaseImpl implements Base {
- private boolean unresolved;
-
- /**
- * Constructs a new base model object.
- */
- protected BaseImpl() {
- }
-
- public boolean isUnresolved() {
- return unresolved;
- }
-
- public void setUnresolved(boolean undefined) {
- this.unresolved = undefined;
- }
-
-}
diff --git a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/BindingImpl.java b/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/BindingImpl.java
deleted file mode 100644
index ae9581cb6d..0000000000
--- a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/BindingImpl.java
+++ /dev/null
@@ -1,124 +0,0 @@
-/*
- * 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.assembly.impl;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import javax.xml.namespace.QName;
-
-import org.apache.tuscany.sca.assembly.Binding;
-import org.apache.tuscany.sca.assembly.OperationSelector;
-import org.apache.tuscany.sca.assembly.WireFormat;
-import org.apache.tuscany.sca.policy.ExtensionType;
-import org.apache.tuscany.sca.policy.Intent;
-import org.apache.tuscany.sca.policy.PolicySet;
-
-/**
- * Base Binding implementation class
- */
-public abstract class BindingImpl extends ExtensibleImpl implements Binding {
- protected QName type;
-
- private String name;
- private String uri;
- private ExtensionType extensionType;
- private List<Intent> requiredIntents = new ArrayList<Intent>();
- private List<PolicySet> policySets = new ArrayList<PolicySet>();
-
-
- protected BindingImpl(QName type) {
- super();
- this.type = type;
- }
-
- public QName getType() {
- return type;
- }
-
- public String getName() {
- return name;
- }
-
- public void setName(String name) {
- this.name = name;
- }
-
- public String getURI() {
- return uri;
- }
-
- public void setURI(String uri) {
- this.uri = uri;
- }
-
- public List<Intent> getRequiredIntents() {
- return requiredIntents;
- }
-
- public List<PolicySet> getPolicySets() {
- return policySets;
- }
-
- public ExtensionType getExtensionType() {
- return extensionType;
- }
-
- public void setExtensionType(ExtensionType type) {
- this.extensionType = type;
- }
-
- public OperationSelector getOperationSelector() {
- return null;
- }
-
- public WireFormat getRequestWireFormat() {
- return null;
- }
-
- public WireFormat getResponseWireFormat() {
- return null;
- }
-
- public void setOperationSelector(OperationSelector operationSelector) {
- }
-
- public void setRequestWireFormat(WireFormat wireFormat) {
- }
-
- public void setResponseWireFormat(WireFormat wireFormat) {
- }
-
- @Override
- public Object clone() throws CloneNotSupportedException {
- return super.clone();
- }
-
- @Override
- public String toString() {
- StringBuffer buf = new StringBuffer();
- buf.append(getType()).append(" (");
- buf.append("uri=").append(getURI());
- buf.append(",name=").append(getName());
- buf.append(")");
- return buf.toString();
- }
-
-}
diff --git a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/CallbackImpl.java b/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/CallbackImpl.java
deleted file mode 100644
index dec68d1413..0000000000
--- a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/CallbackImpl.java
+++ /dev/null
@@ -1,77 +0,0 @@
-/*
- * 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.assembly.impl;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.apache.tuscany.sca.assembly.Binding;
-import org.apache.tuscany.sca.assembly.Callback;
-import org.apache.tuscany.sca.assembly.Contract;
-import org.apache.tuscany.sca.policy.ExtensionType;
-import org.apache.tuscany.sca.policy.Intent;
-import org.apache.tuscany.sca.policy.PolicySet;
-
-/**
- * Represents a reference.
- *
- * @version $Rev$ $Date$
- */
-public class CallbackImpl extends ExtensibleImpl implements Callback {
- private List<Binding> bindings = new ArrayList<Binding>();
- private List<Intent> requiredIntents = new ArrayList<Intent>();
- private List<PolicySet> policySets = new ArrayList<PolicySet>();
- private Contract parentContract;
-
- public List<PolicySet> getPolicySets() {
- return policySets;
- }
-
- public List<Intent> getRequiredIntents() {
- return requiredIntents;
- }
-
- protected CallbackImpl() {
- }
-
- public List<Binding> getBindings() {
- return bindings;
- }
-
- public ExtensionType getExtensionType() {
- return null;
- }
-
- public void setExtensionType(ExtensionType type) {
- }
-
- public void setRequiredIntents(List<Intent> intents) {
- this.requiredIntents = intents;
- }
-
- public Contract getParentContract() {
- return parentContract;
- }
-
- public void setParentContract(Contract contract) {
- this.parentContract = contract;
- }
-
-}
diff --git a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/ComponentImpl.java b/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/ComponentImpl.java
deleted file mode 100644
index 8a03df339c..0000000000
--- a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/ComponentImpl.java
+++ /dev/null
@@ -1,186 +0,0 @@
-/*
- * 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.assembly.impl;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.apache.tuscany.sca.assembly.Component;
-import org.apache.tuscany.sca.assembly.ComponentProperty;
-import org.apache.tuscany.sca.assembly.ComponentReference;
-import org.apache.tuscany.sca.assembly.ComponentService;
-import org.apache.tuscany.sca.assembly.Composite;
-import org.apache.tuscany.sca.assembly.Implementation;
-import org.apache.tuscany.sca.policy.ExtensionType;
-import org.apache.tuscany.sca.policy.Intent;
-import org.apache.tuscany.sca.policy.PolicySet;
-
-/**
- * Represents a component.
- *
- * @version $Rev$ $Date$
- */
-public class ComponentImpl extends ExtensibleImpl implements Component, Cloneable {
- private Implementation implementation;
- private String name;
- private String uri;
- private List<ComponentProperty> properties = new ArrayList<ComponentProperty>();
- private List<ComponentReference> references = new ArrayList<ComponentReference>();
- private List<ComponentService> services = new ArrayList<ComponentService>();
- private List<Intent> requiredIntents = new ArrayList<Intent>();
- private List<PolicySet> policySets = new ArrayList<PolicySet>();
- private Boolean autowire;
- private ExtensionType type;
-
- /**
- * Constructs a new component.
- */
- protected ComponentImpl() {
- }
-
- @Override
- public Object clone() throws CloneNotSupportedException {
- ComponentImpl clone = (ComponentImpl)super.clone();
-
- clone.properties = new ArrayList<ComponentProperty>();
- for (ComponentProperty property : getProperties()) {
- clone.properties.add((ComponentProperty)property.clone());
- }
- clone.references = new ArrayList<ComponentReference>();
- for (ComponentReference reference : getReferences()) {
- clone.references.add((ComponentReference)reference.clone());
- }
- clone.services = new ArrayList<ComponentService>();
- for (ComponentService service : getServices()) {
- clone.services.add((ComponentService)service.clone());
- }
-
- // Clone the implementation.composite
- if(implementation instanceof Composite) {
- clone.implementation = (Composite) ((Composite) implementation).clone();
- }
-
- // Clone the Lists for intents and policySets
- clone.requiredIntents = new ArrayList<Intent>(getRequiredIntents());
- clone.policySets = new ArrayList<PolicySet>(getPolicySets());
-
- return clone;
- }
-
- public String getURI() {
- return uri;
- }
-
- public void setURI(String uri) {
- this.uri = uri;
- }
-
- public Implementation getImplementation() {
- return implementation;
- }
-
- public String getName() {
- return name;
- }
-
- public List<ComponentProperty> getProperties() {
- return properties;
- }
-
- public ComponentProperty getProperty(String name) {
- for (ComponentProperty property : getProperties()) {
- if (property.getName().equals(name)) {
- return property;
- }
- }
- return null;
- }
-
- public List<ComponentReference> getReferences() {
- return references;
- }
-
- public ComponentReference getReference(String name){
- for (ComponentReference ref : getReferences()){
- if (ref.getName().equals(name)){
- return ref;
- }
- }
- return null;
- }
-
- public List<ComponentService> getServices() {
- return services;
- }
-
- public ComponentService getService(String name) {
- for (ComponentService service : getServices()) {
- if (service.getName().equals(name)) {
- return service;
- }
- }
- return null;
- }
-
- public void setImplementation(Implementation implementation) {
- this.implementation = implementation;
- }
-
- public void setName(String name) {
- this.name = name;
- }
-
- public List<Intent> getRequiredIntents() {
- return requiredIntents;
- }
-
- public List<PolicySet> getPolicySets() {
- return policySets;
- }
-
- public boolean isAutowire() {
- return (autowire == null) ? false : autowire.booleanValue();
- }
-
- public void setAutowire(Boolean autowire) {
- this.autowire = autowire;
- }
-
- public Boolean getAutowire() {
- return autowire;
- }
-
- public ExtensionType getExtensionType() {
- return type;
- }
-
- public void setExtensionType(ExtensionType type) {
- this.type = type;
- }
-
- public String toString() {
- StringBuffer buf = new StringBuffer("Component (");
- buf.append("uri=").append(uri);
- buf.append(",name=").append(name);
- buf.append(",implementation=").append(implementation);
- buf.append(")");
- return buf.toString();
- }
-
-}
diff --git a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/ComponentPropertyImpl.java b/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/ComponentPropertyImpl.java
deleted file mode 100644
index 9db522930f..0000000000
--- a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/ComponentPropertyImpl.java
+++ /dev/null
@@ -1,97 +0,0 @@
-/*
- * 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.assembly.impl;
-
-import javax.xml.xpath.XPathExpression;
-
-import org.apache.tuscany.sca.assembly.ComponentProperty;
-import org.apache.tuscany.sca.assembly.Property;
-
-/**
- * Represents a component property.
- *
- * @version $Rev$ $Date$
- */
-public class ComponentPropertyImpl extends PropertyImpl implements ComponentProperty, Cloneable {
- private String file;
- private Property property;
- private String source;
- private XPathExpression sourceXPathExpression;
-
- /**
- * Constructs a new component property.
- */
- protected ComponentPropertyImpl() {
- }
-
- @Override
- public Object clone() throws CloneNotSupportedException {
- return super.clone();
- }
-
- // FIXME getValue should not delegate to property.getValue()
- // Doing this violates the setValue/getValue semantics, as you
- // can call setValue() then get a different value from getValue()
- @Override
- public Object getValue() {
- if (super.getValue() == null && property != null) {
- return property.getValue();
- } else {
- return super.getValue();
- }
- }
-
- public String getFile() {
- return file;
- }
-
- public Property getProperty() {
- return property;
- }
-
- public String getSource() {
- return source;
- }
-
- public void setFile(String file) {
- this.file = file;
- }
-
- public void setProperty(Property property) {
- this.property = property;
- }
-
- public void setSource(String source) {
- this.source = source;
- }
-
- public XPathExpression getSourceXPathExpression() {
- return sourceXPathExpression;
- }
-
- public void setSourceXPathExpression(XPathExpression sourceXPathExpression) {
- this.sourceXPathExpression = sourceXPathExpression;
- }
-
- public String toString() {
- return "Property: " + getName() + " Value: " + getValue();
- } // end method toString
-
-}
diff --git a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/ComponentReferenceImpl.java b/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/ComponentReferenceImpl.java
deleted file mode 100644
index 78b54668b3..0000000000
--- a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/ComponentReferenceImpl.java
+++ /dev/null
@@ -1,119 +0,0 @@
-/*
- * 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.assembly.impl;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.apache.tuscany.sca.assembly.Binding;
-import org.apache.tuscany.sca.assembly.ComponentReference;
-import org.apache.tuscany.sca.assembly.ComponentService;
-import org.apache.tuscany.sca.assembly.CompositeReference;
-import org.apache.tuscany.sca.assembly.Reference;
-import org.apache.tuscany.sca.interfacedef.InterfaceContract;
-
-/**
- * Represents a component reference
- *
- * @version $Rev$ $Date$
- */
-public class ComponentReferenceImpl extends ReferenceImpl implements ComponentReference, Cloneable {
- private Reference reference;
- private Boolean autowire;
- private boolean nonOverridable;
- private List<CompositeReference> promotedAs = new ArrayList<CompositeReference>();
- private ComponentService callbackService;
- private boolean isPromoted = false;
-
- /**
- * Constructs a new component reference.
- */
- protected ComponentReferenceImpl() {
- // Set multiplicity to null so that by default it'll inherit from the Reference
- setMultiplicity(null);
- }
-
- @Override
- public Object clone() throws CloneNotSupportedException {
- return super.clone();
- }
-
- public Reference getReference() {
- return reference;
- }
-
- public void setReference(Reference reference) {
- this.reference = reference;
- }
-
- public boolean isAutowire() {
- return (autowire == null) ? false : autowire.booleanValue();
- }
-
- public void setAutowire(Boolean autowire) {
- this.autowire = autowire;
- }
-
- public Boolean getAutowire() {
- return autowire;
- }
-
- public List<CompositeReference> promotedAs() {
- return promotedAs;
- }
-
- public ComponentService getCallbackService() {
- return callbackService;
- }
-
- public void setCallbackService(ComponentService callbackService) {
- this.callbackService = callbackService;
- }
-
- /**
- * Use endpoint information to work out what the interface contract for the
- * binding is.
- */
- @Override
- public InterfaceContract getInterfaceContract(Binding binding) {
- InterfaceContract interfaceContract = null;
-
- if (interfaceContract == null) {
- interfaceContract = getInterfaceContract();
- }
- return interfaceContract;
- }
-
- public boolean isNonOverridable() {
- return nonOverridable;
- }
-
- public void setNonOverridable(boolean nonOverridable) {
- this.nonOverridable = nonOverridable;
- }
-
- public void setPromoted(boolean isPromoted) {
- this.isPromoted = isPromoted;
- } // end method setPromoted
-
- public boolean isPromoted() {
- return isPromoted;
- }
-} // end class ComponentReferenceImpl
diff --git a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/ComponentServiceImpl.java b/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/ComponentServiceImpl.java
deleted file mode 100644
index f8c9f53413..0000000000
--- a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/ComponentServiceImpl.java
+++ /dev/null
@@ -1,71 +0,0 @@
-/*
- * 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.assembly.impl;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.apache.tuscany.sca.assembly.ComponentReference;
-import org.apache.tuscany.sca.assembly.ComponentService;
-import org.apache.tuscany.sca.assembly.CompositeService;
-import org.apache.tuscany.sca.assembly.Service;
-
-/**
- * Represents a component service
- *
- * @version $Rev$ $Date$
- */
-public class ComponentServiceImpl extends ServiceImpl implements ComponentService, Cloneable {
- private Service service;
- private List<CompositeService> promotedAs = new ArrayList<CompositeService>();
- private ComponentReference callbackReference;
-
- /**
- * Constructs a new component service.
- */
- protected ComponentServiceImpl() {
- }
-
- @Override
- public Object clone() throws CloneNotSupportedException {
- return super.clone();
- }
-
- public Service getService() {
- return service;
- }
-
- public void setService(Service service) {
- this.service = service;
- }
-
- public List<CompositeService> promotedAs() {
- return promotedAs;
- }
-
- public ComponentReference getCallbackReference() {
- return callbackReference;
- }
-
- public void setCallbackReference(ComponentReference callbackReference) {
- this.callbackReference = callbackReference;
- }
-
-}
diff --git a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/ComponentTypeImpl.java b/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/ComponentTypeImpl.java
deleted file mode 100644
index b52c65ef8b..0000000000
--- a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/ComponentTypeImpl.java
+++ /dev/null
@@ -1,176 +0,0 @@
-/*
- * 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.assembly.impl;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.apache.tuscany.sca.assembly.ComponentType;
-import org.apache.tuscany.sca.assembly.Property;
-import org.apache.tuscany.sca.assembly.Reference;
-import org.apache.tuscany.sca.assembly.Service;
-import org.apache.tuscany.sca.policy.ExtensionType;
-import org.apache.tuscany.sca.policy.Intent;
-import org.apache.tuscany.sca.policy.PolicySet;
-
-/**
- * Represents a component type.
- *
- * @version $Rev$ $Date$
- */
-public class ComponentTypeImpl extends ExtensibleImpl implements ComponentType, Cloneable {
- private String uri;
- private List<Property> properties = new ArrayList<Property>();
- private List<Reference> references = new ArrayList<Reference>();
- private List<Service> services = new ArrayList<Service>();
- private List<Intent> requiredIntents = new ArrayList<Intent>();
- private List<PolicySet> policySets = new ArrayList<PolicySet>();
-
- /**
- * Constructs a new component type.
- */
- protected ComponentTypeImpl() {
- }
-
- @Override
- public Object clone() throws CloneNotSupportedException {
- ComponentTypeImpl clone = (ComponentTypeImpl)super.clone();
-
- clone.services = new ArrayList<Service>();
- for (Service service : getServices()) {
- clone.services.add((Service)service.clone());
- }
- clone.references = new ArrayList<Reference>();
- for (Reference reference : getReferences()) {
- clone.references.add((Reference)reference.clone());
- }
- clone.properties = new ArrayList<Property>();
- for (Property property : getProperties()) {
- clone.properties.add((Property)property.clone());
- }
- clone.requiredIntents = new ArrayList<Intent>(requiredIntents);
- clone.policySets = new ArrayList<PolicySet>(policySets);
- return clone;
- }
-
- public String getURI() {
- return uri;
- }
-
- public void setURI(String uri) {
- this.uri = uri;
- }
-
- public List<Property> getProperties() {
- return properties;
- }
-
- public Property getProperty(String name){
- Property property = null;
-
- for (Property tmp : getProperties()){
- if (tmp.getName().equals(name)){
- property = tmp;
- break;
- }
- }
-
- return property;
- }
-
- public List<Reference> getReferences() {
- return references;
- }
-
- public Reference getReference(String name){
- Reference reference = null;
-
- for (Reference tmp : getReferences()){
- if (tmp.getName().equals(name)){
- reference = tmp;
- break;
- }
- }
-
- return reference;
- }
-
- public List<Service> getServices() {
- return services;
- }
-
- public Service getService(String name){
- Service service = null;
-
- for (Service tmp : getServices()){
- if (tmp.getName().equals(name)){
- service = tmp;
- break;
- }
- }
-
- return service;
- }
-
-
- public List<Intent> getRequiredIntents() {
- return requiredIntents;
- }
-
- public List<PolicySet> getPolicySets() {
- return policySets;
- }
-
- public ExtensionType getExtensionType() {
- return null;
- }
-
- public void setExtensionType(ExtensionType type) {
- }
-
- @Override
- public int hashCode() {
- final int prime = 31;
- int result = 1;
- result = prime * result + ((uri == null) ? 0 : uri.hashCode());
- return result;
- }
-
- @Override
- public boolean equals(Object obj) {
- if (this == obj) {
- return true;
- }
- if (obj == null) {
- return false;
- }
- if (getClass() != obj.getClass()) {
- return false;
- }
- ComponentTypeImpl other = (ComponentTypeImpl)obj;
- if (uri == null) {
- if (other.uri != null) {
- return false;
- }
- } else if (!uri.equals(other.uri)) {
- return false;
- }
- return true;
- }
-}
diff --git a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/CompositeImpl.java b/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/CompositeImpl.java
deleted file mode 100644
index 99b443133f..0000000000
--- a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/CompositeImpl.java
+++ /dev/null
@@ -1,200 +0,0 @@
-/*
- * 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.assembly.impl;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import javax.xml.namespace.QName;
-
-import org.apache.tuscany.sca.assembly.Component;
-import org.apache.tuscany.sca.assembly.ComponentReference;
-import org.apache.tuscany.sca.assembly.Composite;
-import org.apache.tuscany.sca.assembly.CompositeReference;
-import org.apache.tuscany.sca.assembly.CompositeService;
-import org.apache.tuscany.sca.assembly.Reference;
-import org.apache.tuscany.sca.assembly.Service;
-import org.apache.tuscany.sca.assembly.Wire;
-
-/**
- * Implementation of a Composite.
- *
- * @version $Rev$ $Date$
- */
-public class CompositeImpl extends ImplementationImpl implements Composite, Cloneable {
- private String specVersion = "undefined";
- private String contributionURI;
- private List<Component> components = new ArrayList<Component>();
- private List<Composite> includes = new ArrayList<Composite>();
- private List<Composite> fusedIncludes = new ArrayList<Composite>();
- private QName name;
- private List<Wire> wires = new ArrayList<Wire>();
- private Boolean autowire;
- private boolean local = true;
-
- /**
- * Constructs a new composite.
- */
- protected CompositeImpl() {
- super(TYPE);
- }
-
- @Override
- public Object clone() throws CloneNotSupportedException {
- CompositeImpl clone = (CompositeImpl)super.clone();
-
- // clone the child components
- clone.components = new ArrayList<Component>();
- for (Component component : getComponents()) {
- Component clonedComponent = (Component)component.clone();
- clone.components.add(clonedComponent);
- }
-
- // reset the references and services so they get re-resolved
- for (Service service : clone.getServices()) {
- CompositeService compositeService = (CompositeService)service;
- // Force the promoted component/service to be rebuilt against the clone
- if (compositeService.getPromotedComponent() != null) {
- compositeService.getPromotedComponent().setUnresolved(true);
- }
- if (compositeService.getPromotedService() != null) {
- compositeService.getPromotedService().setUnresolved(true);
- }
- }
- for (Reference reference : clone.getReferences()) {
- CompositeReference compositeReference = (CompositeReference)reference;
- for (ComponentReference ref : compositeReference.getPromotedReferences()) {
- // Force the promoted reference to be rebuilt against the clone
- ref.setUnresolved(true);
- }
- }
-
- // clone the wires
- clone.wires = new ArrayList<Wire>();
- for (Wire wire : getWires()) {
- clone.wires.add((Wire)wire.clone());
- }
-
- // Clone the includes
- clone.includes = new ArrayList<Composite>();
- for (Composite included : getIncludes()) {
- clone.includes.add((Composite)included.clone());
- }
- return clone;
- }
-
- public String getSpecVersion() {
- return specVersion;
- }
-
- public void setSpecVersion(String specVersion) {
- this.specVersion = specVersion;
- }
-
- public List<Component> getComponents() {
- return components;
- }
-
- public Component getComponent(String name) {
- Component component = null;
-
- for (Component tmp : getComponents()){
- if (tmp.getName().equals(name)){
- component = tmp;
- break;
- }
- }
- return component;
- }
-
- public List<Composite> getIncludes() {
- return includes;
- }
- public List<Composite> getFusedIncludes() {
- return fusedIncludes;
- }
-
- public QName getName() {
- return name;
- }
-
- public List<Wire> getWires() {
- return wires;
- }
-
- public boolean isLocal() {
- return local;
- }
-
- public void setLocal(boolean local) {
- this.local = local;
- }
-
- public boolean isAutowire() {
- return (autowire == null) ? false : autowire.booleanValue();
- }
-
- public void setAutowire(Boolean autowire) {
- this.autowire = autowire;
- }
-
- public Boolean getAutowire() {
- return autowire;
- }
-
- public void setName(QName name) {
- this.name = name;
- }
-
- @Override
- public int hashCode() {
- return String.valueOf(getName()).hashCode();
- }
-
- @Override
- public boolean equals(Object obj) {
- if (obj == this) {
- return true;
- } else if (obj instanceof Composite) {
- if (getName() != null) {
- return getName().equals(((Composite)obj).getName());
- } else {
- return ((Composite)obj).getName() == null;
- }
- } else {
- return false;
- }
- }
-
- @Override
- public String toString() {
- return "Composite (name=" + getName() + ")";
- }
-
- @Override
- public String getContributionURI() {
- return contributionURI;
- }
-
- @Override
- public void setContributionURI(String contributionURI) {
- this.contributionURI = contributionURI;
- }
-}
diff --git a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/CompositeReferenceImpl.java b/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/CompositeReferenceImpl.java
deleted file mode 100644
index ae5fad461b..0000000000
--- a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/CompositeReferenceImpl.java
+++ /dev/null
@@ -1,63 +0,0 @@
-/*
- * 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.assembly.impl;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.apache.tuscany.sca.assembly.Component;
-import org.apache.tuscany.sca.assembly.ComponentReference;
-import org.apache.tuscany.sca.assembly.CompositeReference;
-
-/**
- * Represents a composite reference.
- *
- * @version $Rev$ $Date$
- */
-public class CompositeReferenceImpl extends ReferenceImpl implements CompositeReference, Cloneable {
- private List<Component> promotedComponents = new ArrayList<Component>();
- private List<ComponentReference> promotedReferences = new ArrayList<ComponentReference>();
-
- /**
- * Constructs a new composite reference.
- */
- protected CompositeReferenceImpl() {
- }
-
- @Override
- public Object clone() throws CloneNotSupportedException {
- CompositeReferenceImpl copy = (CompositeReferenceImpl)super.clone();
- copy.promotedComponents = new ArrayList<Component>(promotedComponents);
- copy.promotedReferences = new ArrayList<ComponentReference>(promotedReferences);
- return copy;
- }
-
- public List<ComponentReference> getPromotedReferences() {
- return promotedReferences;
- }
-
- public List<Component> getPromotedComponents() {
- return promotedComponents;
- }
-
- public String toString() {
- return getName();
- }
-}
diff --git a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/CompositeServiceImpl.java b/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/CompositeServiceImpl.java
deleted file mode 100644
index 55b48ec578..0000000000
--- a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/CompositeServiceImpl.java
+++ /dev/null
@@ -1,62 +0,0 @@
-/*
- * 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.assembly.impl;
-
-import org.apache.tuscany.sca.assembly.Component;
-import org.apache.tuscany.sca.assembly.ComponentService;
-import org.apache.tuscany.sca.assembly.CompositeService;
-
-/**
- * Represents a composite service
- *
- * @version $Rev$ $Date$
- */
-public class CompositeServiceImpl extends ServiceImpl implements CompositeService, Cloneable {
- private ComponentService promotedService;
- private Component promotedComponent;
-
- /**
- * Constructs a new composite service.
- */
- protected CompositeServiceImpl() {
- }
-
- @Override
- public Object clone() throws CloneNotSupportedException {
- return super.clone();
- }
-
- public ComponentService getPromotedService() {
- return promotedService;
- }
-
- public void setPromotedService(ComponentService promotedService) {
- this.promotedService = promotedService;
- }
-
- public Component getPromotedComponent() {
- return promotedComponent;
- }
-
- public void setPromotedComponent(Component promotedComponent) {
- this.promotedComponent = promotedComponent;
- }
-
-}
diff --git a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/ConfiguredOperationImpl.java b/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/ConfiguredOperationImpl.java
deleted file mode 100644
index 80c1c7cd21..0000000000
--- a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/ConfiguredOperationImpl.java
+++ /dev/null
@@ -1,95 +0,0 @@
-/*
- * 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.assembly.impl;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.apache.tuscany.sca.assembly.ConfiguredOperation;
-import org.apache.tuscany.sca.policy.ExtensionType;
-import org.apache.tuscany.sca.policy.Intent;
-import org.apache.tuscany.sca.policy.PolicySet;
-
-/**
- * Represents an Operation.
- *
- * @version $Rev$ $Date$
- */
-public class ConfiguredOperationImpl extends BaseImpl implements ConfiguredOperation {
- private List<PolicySet> policySets = new ArrayList<PolicySet>();
- private List<Intent> requiredIntents = new ArrayList<Intent>();
- private List<PolicySet> applicablePolicySets = new ArrayList<PolicySet>();
-
- private String name;
- private String contractName;
- private ExtensionType type;
-
- /**
- * Constructs a new Operation.
- */
- protected ConfiguredOperationImpl() {
- }
-
- public List<PolicySet> getPolicySets() {
- return policySets;
- }
-
- public void setPolicySets(List<PolicySet> policySets) {
- this.policySets = policySets;
- }
-
- public String getName() {
- return name;
- }
-
- public void setName(String name) {
- this.name = name;
- }
-
- public List<Intent> getRequiredIntents() {
- return requiredIntents;
- }
-
- public void setRequiredIntents(List<Intent> intents) {
- this.requiredIntents = intents;
- }
-
- public String getContractName() {
- return contractName;
- }
-
- public void setContractName(String contractName) {
- this.contractName = contractName;
- }
-
- public List<PolicySet> getApplicablePolicySets() {
- return applicablePolicySets;
- }
-
- public ExtensionType getExtensionType() {
- return type;
- }
-
- public void setExtensionType(ExtensionType type) {
- this.type = type;
- }
-
-
-}
diff --git a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/ContractImpl.java b/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/ContractImpl.java
deleted file mode 100644
index 2b72f1f047..0000000000
--- a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/ContractImpl.java
+++ /dev/null
@@ -1,88 +0,0 @@
-/*
- * 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.assembly.impl;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.apache.tuscany.sca.assembly.AbstractContract;
-import org.apache.tuscany.sca.interfacedef.InterfaceContract;
-import org.apache.tuscany.sca.policy.ExtensionType;
-import org.apache.tuscany.sca.policy.Intent;
-import org.apache.tuscany.sca.policy.PolicySet;
-
-/**
- * Implementation of a Contract.
- *
- * @version $Rev$ $Date$
- */
-public class ContractImpl extends ExtensibleImpl implements AbstractContract {
- private InterfaceContract interfaceContract;
- private String name;
- private List<Intent> requiredIntents = new ArrayList<Intent>();
- private List<PolicySet> policySets = new ArrayList<PolicySet>();
-
- private boolean isCallback = false;
-
- /**
- * Constructs a new contract.
- */
- protected ContractImpl() {
- }
-
- public String getName() {
- return name;
- }
-
- public void setName(String name) {
- this.name = name;
- }
-
- public InterfaceContract getInterfaceContract() {
- return interfaceContract;
- }
-
- public void setInterfaceContract(InterfaceContract interfaceContract) {
- this.interfaceContract = interfaceContract;
- }
-
- public List<Intent> getRequiredIntents() {
- return requiredIntents;
- }
-
- public boolean isForCallback() {
- return isCallback;
- }
-
- public void setForCallback(boolean isCallback) {
- this.isCallback = isCallback;
- }
-
- public ExtensionType getExtensionType() {
- return null;
- }
-
- public void setExtensionType(ExtensionType type) {
- }
-
- public List<PolicySet> getPolicySets() {
- return policySets;
- }
-
-}
diff --git a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/EndpointImpl.java b/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/EndpointImpl.java
deleted file mode 100644
index 195fa4303e..0000000000
--- a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/EndpointImpl.java
+++ /dev/null
@@ -1,321 +0,0 @@
-/*
- * 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.assembly.impl;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.apache.tuscany.sca.assembly.Base;
-import org.apache.tuscany.sca.assembly.Binding;
-import org.apache.tuscany.sca.assembly.Component;
-import org.apache.tuscany.sca.assembly.ComponentService;
-import org.apache.tuscany.sca.assembly.Endpoint;
-import org.apache.tuscany.sca.assembly.EndpointReference;
-import org.apache.tuscany.sca.assembly.builder.BuilderExtensionPoint;
-import org.apache.tuscany.sca.assembly.builder.ContractBuilder;
-import org.apache.tuscany.sca.core.ExtensionPointRegistry;
-import org.apache.tuscany.sca.interfacedef.InterfaceContract;
-import org.apache.tuscany.sca.policy.ExtensionType;
-import org.apache.tuscany.sca.policy.Intent;
-import org.apache.tuscany.sca.policy.PolicySet;
-import org.apache.tuscany.sca.policy.PolicySubject;
-
-/**
- * The assembly model object for an endpoint.
- *
- * @version $Rev$ $Date$
- */
-public class EndpointImpl implements Endpoint {
- private static final long serialVersionUID = 7344399683703812593L;
-
- protected transient ExtensionPointRegistry registry;
- protected transient BuilderExtensionPoint builders;
- protected transient ContractBuilder contractBuilder;
- protected boolean unresolved;
- protected String uri;
- protected String deployedURI;
- protected Component component;
- protected ComponentService service;
- protected Binding binding;
- protected InterfaceContract interfaceContract;
- protected List<EndpointReference> callbackEndpointReferences = new ArrayList<EndpointReference>();
- protected List<PolicySet> policySets = new ArrayList<PolicySet>();
- protected List<Intent> requiredIntents = new ArrayList<Intent>();
- protected boolean remote = false;
- protected String specVersion = Base.SCA11_NS;
-
- protected EndpointImpl(ExtensionPointRegistry registry) {
- this.registry = registry;
- }
-
- @Override
- public Object clone() throws CloneNotSupportedException {
- return super.clone();
- }
-
- public boolean isUnresolved() {
- return unresolved;
- }
-
- public void setUnresolved(boolean unresolved) {
- this.unresolved = unresolved;
- }
-
- public Component getComponent() {
- resolve();
- return component;
- }
-
- public void setComponent(Component component) {
- this.component = component;
- reset();
- }
-
- public ComponentService getService() {
- resolve();
- return service;
- }
-
- public void setService(ComponentService service) {
- this.service = service;
- reset();
- }
-
- public Binding getBinding() {
- resolve();
- return binding;
- }
-
- public void setBinding(Binding binding) {
- this.binding = binding;
- reset();
- }
-
- public InterfaceContract getComponentServiceInterfaceContract() {
- resolve();
- if (interfaceContract == null && service != null) {
- interfaceContract = service.getInterfaceContract();
- }
- return interfaceContract;
- }
-
- public void setInterfaceContract(InterfaceContract interfaceContract) {
- this.interfaceContract = interfaceContract;
- }
-
- /**
- * Get the services callbacl enpoint references that
- * represent endpoint references from which callbacks
- * originate
- *
- * @return callbackEndpoint the reference callback endpoint
- */
- public List<EndpointReference> getCallbackEndpointReferences() {
- resolve();
- return callbackEndpointReferences;
- }
-
- public List<PolicySet> getPolicySets() {
- resolve();
- return policySets;
- }
-
- public List<Intent> getRequiredIntents() {
- resolve();
- return requiredIntents;
- }
-
- public ExtensionType getExtensionType() {
- getBinding();
- if (binding instanceof PolicySubject) {
- return ((PolicySubject)binding).getExtensionType();
- }
- return null;
- }
-
- public void setExtensionType(ExtensionType type) {
- throw new UnsupportedOperationException();
- }
-
- public String toStringWithoutHash() {
- String output = "Endpoint: ";
-
- if (getURI() != null) {
- output += " URI = " + getURI();
- }
-
- if (unresolved) {
- output += " [Unresolved]";
- }
-
- return output;
- }
-
- public String toString() {
- return "(@" + this.hashCode() + ")" + toStringWithoutHash();
- }
-
- public String getURI() {
- if (uri == null) {
- if (component != null && service != null && binding != null) {
- String bindingName = binding.getName();
- if (bindingName == null) {
- bindingName = service.getName();
- }
- uri = component.getURI() + "#service-binding(" + service.getName() + "/" + bindingName + ")";
- } else if (component != null && service != null) {
- uri = component.getURI() + "#service(" + service.getName() + ")";
- } else if (component != null) {
- uri = component.getURI();
- }
- }
- return uri;
- }
-
- public void setURI(String uri) {
- this.uri = uri;
- }
-
- protected void resolve() {
- }
-
- protected void reset() {
- this.uri = null;
- }
-
- protected void setExtensionPointRegistry(ExtensionPointRegistry registry) {
- this.registry = registry;
- }
-
- public boolean isRemote() {
- return remote;
- }
-
- public void setRemote(boolean remote) {
- this.remote = remote;
- }
-
- public boolean matches(String serviceURI) {
- String[] parts1 = parseServiceURI(serviceURI);
- String[] parts2 = parseStructuralURI(getURI());
- for (int i = 0; i < parts1.length; i++) {
- if (parts1[i] == null || parts1[i].equals(parts2[i])) {
- continue;
- } else {
- return false;
- }
- }
- return true;
- }
-
- /**
- * Parse the service URI into an array of names. The service URI is in one of the following formats:
- * <ul>
- * <li>componentName
- * <li>componentName/serviceName
- * <li>componentName/serviceName/bindingName
- * </ul>
- * @param serviceURI
- * @return
- */
- private static String[] parseServiceURI(String serviceURI) {
- if (serviceURI.startsWith("/")) {
- serviceURI = serviceURI.substring(1);
- }
- if (serviceURI.contains("#")) {
- return parseStructuralURI(serviceURI);
- }
- String[] names = new String[3];
- String[] segments = serviceURI.split("/");
- for (int i = 0; i < names.length && i < segments.length; i++) {
- names[i] = segments[i];
- }
- return names;
- }
-
- /**
- * Parse the structural URI into an array of parts (componentURI, serviceName, bindingName)
- * @param structuralURI
- * @return [0]: componentURI [1]: serviceName [2]: bindingName
- */
- private static String[] parseStructuralURI(String structuralURI) {
- String[] names = new String[3];
- int index = structuralURI.lastIndexOf('#');
- if (index == -1) {
- names[0] = structuralURI;
- } else {
- names[0] = structuralURI.substring(0, index);
- String str = structuralURI.substring(index + 1);
- if (str.startsWith("service-binding(") && str.endsWith(")")) {
- str = str.substring("service-binding(".length(), str.length() - 1);
- String[] parts = str.split("/");
- if (parts.length != 2) {
- throw new IllegalArgumentException("Invalid service-binding URI: " + structuralURI);
- }
- names[1] = parts[0];
- names[2] = parts[1];
- } else if (str.startsWith("service(") && str.endsWith(")")) {
- str = str.substring("service(".length(), str.length() - 1);
- // [rfeng] Deal with empty service name
- if (!"".equals(str)) {
- names[1] = str;
- }
- } else {
- throw new IllegalArgumentException("Invalid structural URI: " + structuralURI);
- }
- }
- return names;
- }
-
- public boolean isAsyncInvocation() {
- if (service != null && service.getName().endsWith("_asyncCallback")) {
- // this is a response service at the reference component so don't create a
- // response reference.
- return false;
- } // end if
-
- for (Intent intent : getRequiredIntents()) {
- if (intent.getName().getLocalPart().equals("asyncInvocation")) {
- return true;
- }
- }
- return false;
- }
-
- @Override
- public String getDeployedURI() {
- return deployedURI == null ? (binding == null ? null : binding.getURI()) : deployedURI;
- }
-
- @Override
- public void setDeployedURI(String deployedURI) {
- this.deployedURI = deployedURI;
- }
-
- @Override
- public String getSpecVersion() {
- return specVersion;
- }
-
- @Override
- public void setSpecVersion(String specVersion){
- this.specVersion = specVersion;
- }
-
-}
diff --git a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/EndpointReferenceImpl.java b/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/EndpointReferenceImpl.java
deleted file mode 100644
index ac0c7c93a8..0000000000
--- a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/EndpointReferenceImpl.java
+++ /dev/null
@@ -1,289 +0,0 @@
-/*
- * 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.assembly.impl;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.apache.tuscany.sca.assembly.Binding;
-import org.apache.tuscany.sca.assembly.Component;
-import org.apache.tuscany.sca.assembly.ComponentReference;
-import org.apache.tuscany.sca.assembly.Endpoint;
-import org.apache.tuscany.sca.assembly.EndpointReference;
-import org.apache.tuscany.sca.assembly.builder.BuilderExtensionPoint;
-import org.apache.tuscany.sca.assembly.builder.ContractBuilder;
-import org.apache.tuscany.sca.core.ExtensionPointRegistry;
-import org.apache.tuscany.sca.interfacedef.InterfaceContract;
-import org.apache.tuscany.sca.policy.ExtensionType;
-import org.apache.tuscany.sca.policy.Intent;
-import org.apache.tuscany.sca.policy.PolicySet;
-import org.apache.tuscany.sca.policy.PolicySubject;
-
-/**
- * The assembly model object for an endpoint.
- *
- * @version $Rev$ $Date$
- */
-public class EndpointReferenceImpl implements EndpointReference {
- private static final long serialVersionUID = 8838066441709300972L;
-
- protected transient ExtensionPointRegistry registry;
- protected transient BuilderExtensionPoint builders;
- protected transient ContractBuilder contractBuilder;
- protected boolean unresolved = true;
- protected String uri;
- protected String deployedURI;
- protected Component component;
- protected ComponentReference reference;
- protected Binding binding;
- protected List<PolicySet> policySets = new ArrayList<PolicySet>();
- protected List<Intent> requiredIntents = new ArrayList<Intent>();
- protected InterfaceContract interfaceContract;
- protected Status status = Status.NOT_CONFIGURED;
-
- // the target of the endpoint reference
- protected Endpoint targetEndpoint;
-
- // callback endpoint that messages across this reference
- // will be directed toward
- protected Endpoint callbackEndpoint;
-
- protected EndpointReferenceImpl(ExtensionPointRegistry registry) {
- this.registry = registry;
- }
-
- @Override
- public Object clone() throws CloneNotSupportedException {
- EndpointReference cloned = (EndpointReference)super.clone();
-
- if (targetEndpoint != null) {
- cloned.setTargetEndpoint((Endpoint)targetEndpoint.clone());
- }
-
- return cloned;
- }
-
- public boolean isUnresolved() {
- return unresolved;
- }
-
- public void setUnresolved(boolean unresolved) {
- this.unresolved = unresolved;
- }
-
- public Component getComponent() {
- resolve();
- return component;
- }
-
- public void setComponent(Component component) {
- this.component = component;
- reset();
- }
-
- public ComponentReference getReference() {
- resolve();
- return reference;
- }
-
- public void setReference(ComponentReference reference) {
- this.reference = reference;
- reset();
- }
-
- public Binding getBinding() {
- resolve();
- return binding;
- }
-
- public void setBinding(Binding binding) {
- this.binding = binding;
- reset();
- }
-
- public Endpoint getTargetEndpoint() {
- resolve();
- return targetEndpoint;
- }
-
- public void setTargetEndpoint(Endpoint targetEndpoint) {
- this.targetEndpoint = targetEndpoint;
- reset();
- }
-
- public InterfaceContract getComponentReferenceInterfaceContract() {
- resolve();
- if (interfaceContract == null && reference != null) {
- interfaceContract = reference.getInterfaceContract();
- }
- return interfaceContract;
- }
-
- public void setInterfaceContract(InterfaceContract interfaceContract) {
- this.interfaceContract = interfaceContract;
- reset();
- }
-
- public List<PolicySet> getPolicySets() {
- resolve();
- return policySets;
- }
-
- public List<Intent> getRequiredIntents() {
- resolve();
- return requiredIntents;
- }
-
- public ExtensionType getExtensionType() {
- getBinding();
- if (binding instanceof PolicySubject) {
- return ((PolicySubject)binding).getExtensionType();
- }
- return null;
- }
-
- public void setExtensionType(ExtensionType type) {
- throw new UnsupportedOperationException();
- }
-
- public Endpoint getCallbackEndpoint() {
- resolve();
- return callbackEndpoint;
- }
-
- public void setCallbackEndpoint(Endpoint callbackEndpoint) {
- this.callbackEndpoint = callbackEndpoint;
- reset();
- }
-
- public String toStringWithoutHash() {
- StringBuffer output = new StringBuffer("EndpointReference: ");
-
- if (getURI() != null) {
- output.append(" URI = ").append(getURI());
- }
-
- output.append(" ").append(status);
-
- if (targetEndpoint != null) {
- output.append(" Target = ").append(targetEndpoint);
- }
-
- return output.toString();
- }
-
- public String toString() {
- return "(@" + this.hashCode() + ")" + toStringWithoutHash();
- }
-
- public String getURI() {
- if (uri == null) {
- if (component != null && reference != null && binding != null) {
- String bindingName = binding.getName();
- if (bindingName == null) {
- bindingName = reference.getName();
- }
- uri = component.getURI() + "#reference-binding(" + reference.getName() + "/" + bindingName + ")";
- } else if (component != null && reference != null) {
- uri = component.getURI() + "#reference(" + reference.getName() + ")";
- } else if (component != null) {
- uri = component.getURI();
- }
- }
- return uri;
- }
-
- public void setURI(String uri) {
- this.uri = uri;
- }
-
- protected void resolve() {
- }
-
- protected void reset() {
- this.uri = null;
- }
-
- public void setExtensionPointRegistry(ExtensionPointRegistry registry) {
- this.registry = registry;
- }
-
- public Status getStatus() {
- return status;
- }
-
- public void setStatus(Status status) {
- this.status = status;
- }
-
- @Override
- public String getDeployedURI() {
- String targetURI = deployedURI;
- if (targetURI != null) {
- return targetURI;
- }
- if (getTargetEndpoint() != null) {
- targetURI = getTargetEndpoint().getDeployedURI();
- }
- if (targetURI != null) {
- return targetURI;
- }
- if (binding != null) {
- targetURI = binding.getURI();
- }
- return targetURI;
- }
-
- @Override
- public void setDeployedURI(String deployedURI) {
- this.deployedURI = deployedURI;
- }
-
- /**
- * Indicates whether this EndpointReference is connected to a target service which is asynchronous.
- * This can be marked in one of 3 ways:
- * - the EndpointReference has the "asyncInvocation" intent set
- * - the EndpointReference has a name ending with "_asyncCallback"
- * - there is a target Endpoint configured that itself is marked as async invocation
- * @return - true if the service is asynchronous invocation, false otherwise
- */
- public boolean isAsyncInvocation() {
- if (reference != null && reference.getName().endsWith("_asyncCallback")){
- // this is a response reference at the service component so don't create a
- // response service. The response service will be at the reference component
- return false;
- } // end if
-
- // Check if the EndpointReference is explicitly marked with the asyncInvocation intent
- for(Intent intent : getRequiredIntents()){
- if (intent.getName().getLocalPart().equals("asyncInvocation")){
- return true;
- } // end if
- } // end for
-
- // Check if the target Endpoint is marked as asyncInvocation
- if( targetEndpoint != null ) {
- if (targetEndpoint.isAsyncInvocation()) {
- return true;
- } // end if
- } // end if
- return false;
- } // end method isAsyncInvocation
-
-} // end class EndpointReferenceImpl
diff --git a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/ExtensibleImpl.java b/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/ExtensibleImpl.java
deleted file mode 100644
index 340fa2854c..0000000000
--- a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/ExtensibleImpl.java
+++ /dev/null
@@ -1,49 +0,0 @@
-/*
- * 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.assembly.impl;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.apache.tuscany.sca.assembly.Extensible;
-import org.apache.tuscany.sca.assembly.Extension;
-
-/**
- * Convenience base class for extensible assembly model objects.
- *
- * @version $Rev$ $Date$
- */
-public abstract class ExtensibleImpl extends BaseImpl implements Extensible {
- private List<Object> extensions = new ArrayList<Object>();
- private List<Extension> attributeExtensions = new ArrayList<Extension>();
-
- /**
- * Constructs a new base model object.
- */
- protected ExtensibleImpl() {
- }
-
- public List<Object> getExtensions() {
- return extensions;
- }
-
- public List<Extension> getAttributeExtensions() {
- return attributeExtensions;
- }
-}
diff --git a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/ExtensionImpl.java b/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/ExtensionImpl.java
deleted file mode 100644
index e69eb4a771..0000000000
--- a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/ExtensionImpl.java
+++ /dev/null
@@ -1,62 +0,0 @@
-/*
- * 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.assembly.impl;
-
-import javax.xml.namespace.QName;
-
-import org.apache.tuscany.sca.assembly.Extension;
-
-public class ExtensionImpl implements Extension {
- private QName qName;
- private Object value;
- private boolean isAttribute = false;
-
- public ExtensionImpl() {
- }
-
- public ExtensionImpl(QName qName, Object value, boolean isAttribute) {
- this.qName = qName;
- this.value = value;
- this.isAttribute = isAttribute;
- }
-
- public QName getQName() {
- return qName;
- }
-
- public void setQName(QName qName) {
- this.qName = qName;
- }
-
- public <T> T getValue() {
- return (T)value;
- }
-
- public <T> void setValue(T value) {
- this.value = value;
- }
-
- public boolean isAttribute() {
- return isAttribute;
- }
-
- public void setAttribute(boolean isAttribute) {
- this.isAttribute = isAttribute;
- }
-}
diff --git a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/ImplementationImpl.java b/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/ImplementationImpl.java
deleted file mode 100644
index f943438a9f..0000000000
--- a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/ImplementationImpl.java
+++ /dev/null
@@ -1,89 +0,0 @@
-/*
- * 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.assembly.impl;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import javax.xml.namespace.QName;
-
-import org.apache.tuscany.sca.assembly.Implementation;
-import org.apache.tuscany.sca.interfacedef.Operation;
-import org.apache.tuscany.sca.policy.ExtensionType;
-import org.apache.tuscany.sca.policy.PolicySubject;
-
-/**
- * Base implementation class of Implementation model interface
- *
- * @version $Rev$ $Date$
- * @tuscany.spi.extension.inheritfrom
- */
-public abstract class ImplementationImpl extends ComponentTypeImpl implements Implementation, PolicySubject {
- protected QName type;
- protected ExtensionType extensionType;
- protected List<Operation> operations = new ArrayList<Operation>();
-
- protected ImplementationImpl(QName type) {
- super();
- this.type = type;
- }
-
- public ExtensionType getExtensionType() {
- return extensionType;
- }
-
- public void setExtensionType(ExtensionType extensionType) {
- this.extensionType = extensionType;
- }
-
- public QName getType() {
- return type;
- }
-
- public String toString() {
- return String.valueOf(getType());
- }
-
- public List<Operation> getOperations() {
- return operations;
- }
-
- @Override
- public Object clone() throws CloneNotSupportedException {
- ImplementationImpl impl = (ImplementationImpl)super.clone();
- impl.operations = new ArrayList<Operation>();
- for (Operation operation : operations) {
- impl.operations.add((Operation)operation.clone());
- }
- return impl;
- }
-
- // Override the ComponentTypeImpl.hashCode()
- @Override
- public int hashCode() {
- return System.identityHashCode(this);
- }
-
- // Override the ComponentTypeImpl.equals()
- @Override
- public boolean equals(Object obj) {
- return this == obj;
- }
-}
diff --git a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/PropertyImpl.java b/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/PropertyImpl.java
deleted file mode 100644
index 263af296b1..0000000000
--- a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/PropertyImpl.java
+++ /dev/null
@@ -1,59 +0,0 @@
-/*
- * 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.assembly.impl;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.apache.tuscany.sca.assembly.Property;
-import org.apache.tuscany.sca.policy.PolicySet;
-
-/**
- * Represents a property.
- *
- * @version $Rev$ $Date$
- */
-public class PropertyImpl extends AbstractPropertyImpl implements Property, Cloneable {
- private List<PolicySet> policySets = new ArrayList<PolicySet>();
- private List<PolicySet> applicablePolicySets = new ArrayList<PolicySet>();
-
- /**
- * Constructs a new property.
- */
- protected PropertyImpl() {
- }
-
- @Override
- public Object clone() throws CloneNotSupportedException {
- return super.clone();
- }
-
- public List<PolicySet> getPolicySets() {
- return policySets;
- }
-
- public void setPolicySets(List<PolicySet> policySets) {
- this.policySets = policySets;
- }
-
- public List<PolicySet> getApplicablePolicySets() {
- return applicablePolicySets;
- }
-}
diff --git a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/ReferenceImpl.java b/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/ReferenceImpl.java
deleted file mode 100644
index 6e5e09adf6..0000000000
--- a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/ReferenceImpl.java
+++ /dev/null
@@ -1,156 +0,0 @@
-/*
- * 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.assembly.impl;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.apache.tuscany.sca.assembly.Binding;
-import org.apache.tuscany.sca.assembly.Callback;
-import org.apache.tuscany.sca.assembly.ComponentReference;
-import org.apache.tuscany.sca.assembly.ComponentService;
-import org.apache.tuscany.sca.assembly.EndpointReference;
-import org.apache.tuscany.sca.assembly.Reference;
-import org.apache.tuscany.sca.interfacedef.InterfaceContract;
-
-/**
- * Represents a reference.
- *
- * @version $Rev$ $Date$
- */
-public class ReferenceImpl extends AbstractReferenceImpl implements Reference, Cloneable {
- private List<Binding> bindings = new ArrayList<Binding>();
- private boolean wiredByImpl;
- private List<ComponentService> targets = new ArrayList<ComponentService>();
- private Callback callback;
- private boolean overridingBindings;
- private boolean allowsPassByReference;
- private List<EndpointReference> endpointReferences = new ArrayList<EndpointReference>();
-
- /**
- * Constructs a new reference.
- */
- protected ReferenceImpl() {
- }
-
- @Override
- public Object clone() throws CloneNotSupportedException {
- ReferenceImpl clone = (ReferenceImpl)super.clone();
- clone.bindings = new ArrayList<Binding>();
- for (Binding binding : getBindings()){
- clone.bindings.add((Binding)binding.clone());
- }
- clone.targets = new ArrayList<ComponentService>(targets);
- // clone the endpoint references themselves and set the reference pointer back to
- // this new refrence
- clone.endpointReferences = new ArrayList<EndpointReference>();
-
- for (EndpointReference epr : endpointReferences) {
- EndpointReference eprClone = (EndpointReference)epr.clone();
- eprClone.setReference((ComponentReference)clone);
- clone.endpointReferences.add(eprClone);
- }
- return clone;
- }
-
- public List<Binding> getBindings() {
- return bindings;
- }
-
- public Binding getBinding(String name) {
- for (Binding binding : bindings) {
- if (binding.getName().equals(name)) {
- return binding;
- }
- }
- return null;
- }
-
- public <B> B getBinding(Class<B> bindingClass) {
- for (Binding binding : bindings) {
- if (bindingClass.isInstance(binding)) {
- return bindingClass.cast(binding);
- }
- }
- return null;
- }
-
- public <B> B getCallbackBinding(Class<B> bindingClass) {
- if (callback != null) {
- for (Binding binding : callback.getBindings()) {
- if (bindingClass.isInstance(binding)) {
- return bindingClass.cast(binding);
- }
- }
- }
- return null;
- }
-
- public boolean isWiredByImpl() {
- return wiredByImpl;
- }
-
- public void setWiredByImpl(boolean wiredByImpl) {
- this.wiredByImpl = wiredByImpl;
- }
-
- public List<ComponentService> getTargets() {
- return targets;
- }
-
- public Callback getCallback() {
- return callback;
- }
-
- public void setCallback(Callback callback) {
- this.callback = callback;
- }
-
- /**
- * By default return the interface contract for the reference
- */
- public InterfaceContract getInterfaceContract(Binding binding) {
- return getInterfaceContract();
- }
-
- public List<EndpointReference> getEndpointReferences() {
- return endpointReferences;
- }
-
- public String toString() {
- return getName();
- }
-
- public boolean isOverridingBindings() {
- return overridingBindings;
- }
-
- public void setOverridingBindings(boolean overridingBindings) {
- this.overridingBindings = overridingBindings;
- }
-
- public boolean isAllowsPassByReference() {
- return allowsPassByReference;
- }
-
- public void setAllowsPassByReference(boolean allowsPassByReference) {
- this.allowsPassByReference = allowsPassByReference;
- }
-}
diff --git a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/SCABindingFactoryImpl.java b/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/SCABindingFactoryImpl.java
deleted file mode 100644
index 84e5825b50..0000000000
--- a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/SCABindingFactoryImpl.java
+++ /dev/null
@@ -1,40 +0,0 @@
-/*
- * 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.assembly.impl;
-
-import org.apache.tuscany.sca.assembly.SCABinding;
-import org.apache.tuscany.sca.assembly.SCABindingFactory;
-
-/**
- * A factory for the SCA binding model.
- *
- * @version $Rev$ $Date$
- */
-public class SCABindingFactoryImpl implements SCABindingFactory {
-
- public SCABindingFactoryImpl() {
-
- }
-
- public SCABinding createSCABinding() {
- return new SCABindingImpl();
- }
-
-}
diff --git a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/SCABindingImpl.java b/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/SCABindingImpl.java
deleted file mode 100644
index bad560ab04..0000000000
--- a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/SCABindingImpl.java
+++ /dev/null
@@ -1,169 +0,0 @@
-/*
- * 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.assembly.impl;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import javax.xml.namespace.QName;
-
-import org.apache.tuscany.sca.assembly.Extensible;
-import org.apache.tuscany.sca.assembly.Extension;
-import org.apache.tuscany.sca.assembly.OperationSelector;
-import org.apache.tuscany.sca.assembly.SCABinding;
-import org.apache.tuscany.sca.assembly.WireFormat;
-import org.apache.tuscany.sca.policy.ExtensionType;
-import org.apache.tuscany.sca.policy.Intent;
-import org.apache.tuscany.sca.policy.PolicySet;
-import org.apache.tuscany.sca.policy.PolicySubject;
-
-/**
- * The assembly mode object for an SCA binding.
- *
- * @version $Rev$ $Date$
- */
-public class SCABindingImpl implements SCABinding, Extensible, PolicySubject {
- private String name;
- private String uri;
- private List<Object> extensions = new ArrayList<Object>();
- private List<Extension> attributeExtensions = new ArrayList<Extension>();
- private List<Intent> requiredIntents = new ArrayList<Intent>();
- private List<PolicySet> policySets = new ArrayList<PolicySet>();
- private ExtensionType extensionType;
- private WireFormat wireFormat;
- private String delegateBindingType;
- private String delegateBindingURI;
-
- /**
- * Constructs a new SCA binding.
- */
- protected SCABindingImpl() {
- }
-
- public String getName() {
- return name;
- }
-
- public void setName(String name) {
- this.name = name;
- }
-
- /**
- * Getters for the binding URI. The computed URI for the
- * service that the reference is targeting or which the service represents
- * depending on whether the biding is associated with a reference or
- * service
- *
- * @return the binding URI
- */
- public String getURI() {
- return uri;
- }
-
- public void setURI(String uri) {
- this.uri = uri;
- }
-
- public List<Object> getExtensions() {
- return extensions;
- }
-
- public List<Extension> getAttributeExtensions() {
- return attributeExtensions;
- }
-
- public boolean isUnresolved() {
- return false;
- }
-
- public void setUnresolved(boolean unresolved) {
- }
-
- public List<PolicySet> getPolicySets() {
- return policySets;
- }
-
- public List<Intent> getRequiredIntents() {
- return requiredIntents;
- }
-
- public ExtensionType getExtensionType() {
- return extensionType;
- }
-
- public void setExtensionType(ExtensionType intentAttachPointType) {
- this.extensionType = intentAttachPointType;
- }
-
- public void setPolicySets(List<PolicySet> policySets) {
- this.policySets = policySets;
- }
-
- public void setRequiredIntents(List<Intent> intents) {
- this.requiredIntents = intents;
- }
-
- @Override
- public Object clone() throws CloneNotSupportedException {
- return super.clone();
- }
-
- public QName getType() {
- return TYPE;
- }
-
- public WireFormat getRequestWireFormat() {
- return wireFormat;
- }
-
- public void setRequestWireFormat(WireFormat wireFormat) {
- this.wireFormat = wireFormat;
- }
-
- public WireFormat getResponseWireFormat() {
- return wireFormat;
- }
-
- public void setResponseWireFormat(WireFormat wireFormat) {
- this.wireFormat = wireFormat;
- }
-
- public OperationSelector getOperationSelector() {
- return null;
- }
-
- public void setOperationSelector(OperationSelector operationSelector) {
- }
-
- public String getDelegateBindingType() {
- return delegateBindingType;
- }
-
- public void setDelegateBindingType(String delegateBindingType) {
- this.delegateBindingType = delegateBindingType;
- }
-
- public String getDelegateBindingURI() {
- return delegateBindingURI;
- }
-
- public void setDelegateBindingURI(String delegateBindingURI) {
- this.delegateBindingURI = delegateBindingURI;
- }
-}
diff --git a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/ServiceImpl.java b/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/ServiceImpl.java
deleted file mode 100644
index 4a8fd70910..0000000000
--- a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/ServiceImpl.java
+++ /dev/null
@@ -1,126 +0,0 @@
-/*
- * 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.assembly.impl;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.apache.tuscany.sca.assembly.Binding;
-import org.apache.tuscany.sca.assembly.Callback;
-import org.apache.tuscany.sca.assembly.Endpoint;
-import org.apache.tuscany.sca.assembly.Service;
-import org.apache.tuscany.sca.interfacedef.InterfaceContract;
-
-/**
- * Represents a reference.
- *
- * @version $Rev$ $Date$
- */
-public class ServiceImpl extends AbstractServiceImpl implements Service, Cloneable {
- private List<Binding> bindings = new ArrayList<Binding>();
- private boolean overridingBindings;
- private Callback callback;
- private List<Endpoint> endpoints = new ArrayList<Endpoint>();
- private boolean isJAXWSService = false;
-
- /**
- * Constructs a new service.
- */
- protected ServiceImpl() {
- }
-
- @Override
- public Object clone() throws CloneNotSupportedException {
- ServiceImpl clone = (ServiceImpl)super.clone();
- clone.bindings = new ArrayList<Binding>();
- for (Binding binding : getBindings()){
- clone.bindings.add((Binding)binding.clone());
- }
- return clone;
- }
-
- public List<Binding> getBindings() {
- return bindings;
- }
-
- public Binding getBinding(String name) {
- for (Binding binding : bindings) {
- if (binding.getName().equals(name)) {
- return binding;
- }
- }
- return null;
- }
-
- public <B> B getBinding(Class<B> bindingClass) {
- for (Binding binding : bindings) {
- if (bindingClass.isInstance(binding)) {
- return bindingClass.cast(binding);
- }
- }
- return null;
- }
-
- public <B> B getCallbackBinding(Class<B> bindingClass) {
- if (callback != null) {
- for (Binding binding : callback.getBindings()) {
- if (bindingClass.isInstance(binding)) {
- return bindingClass.cast(binding);
- }
- }
- }
- return null;
- }
-
- public Callback getCallback() {
- return callback;
- }
-
- public void setCallback(Callback callback) {
- this.callback = callback;
- }
-
- /**
- * By default return the interface contract for the service
- */
- public InterfaceContract getInterfaceContract(Binding binding) {
- return getInterfaceContract();
- }
-
- public List<Endpoint> getEndpoints() {
- return endpoints;
- }
-
- public boolean isOverridingBindings() {
- return overridingBindings;
- }
-
- public void setOverridingBindings(boolean overridingBindings) {
- this.overridingBindings = overridingBindings;
- }
-
- public boolean isJAXWSService() {
- return isJAXWSService;
- }
-
- public void setJAXWSService(boolean isJAXWSService) {
- this.isJAXWSService = isJAXWSService;
- }
-}
diff --git a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/WireImpl.java b/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/WireImpl.java
deleted file mode 100644
index a4990f6a98..0000000000
--- a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/assembly/impl/WireImpl.java
+++ /dev/null
@@ -1,105 +0,0 @@
-/*
- * 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.assembly.impl;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.apache.tuscany.sca.assembly.ComponentReference;
-import org.apache.tuscany.sca.assembly.ComponentService;
-import org.apache.tuscany.sca.assembly.Wire;
-import org.apache.tuscany.sca.policy.ExtensionType;
-import org.apache.tuscany.sca.policy.Intent;
-import org.apache.tuscany.sca.policy.PolicySet;
-
-/**
- * Represents a wire
- *
- * @version $Rev$ $Date$
- */
-public class WireImpl extends ExtensibleImpl implements Wire, Cloneable {
- private ComponentReference source;
- private ComponentService target;
- private boolean replace;
- private List<Intent> requiredIntents = new ArrayList<Intent>();
- private List<PolicySet> policySets = new ArrayList<PolicySet>();
- private List<PolicySet> applicablePolicySets = new ArrayList<PolicySet>();
-
- public List<PolicySet> getApplicablePolicySets() {
- return applicablePolicySets;
- }
-
- /**
- * Constructs a new wire.
- */
- protected WireImpl() {
- }
-
- @Override
- public Object clone() throws CloneNotSupportedException {
- return super.clone();
- }
-
- public ComponentReference getSource() {
- return source;
- }
-
- public ComponentService getTarget() {
- return target;
- }
-
- public void setSource(ComponentReference source) {
- this.source = source;
- }
-
- public void setTarget(ComponentService target) {
- this.target = target;
- }
-
- public List<Intent> getRequiredIntents() {
- return requiredIntents;
- }
-
- public List<PolicySet> getPolicySets() {
- return policySets;
- }
-
- public ExtensionType getExtensionType() {
- return null;
- }
-
- public void setExtensionType(ExtensionType type) {
- }
-
- public void setPolicySets(List<PolicySet> policySets) {
- this.policySets = policySets;
- }
-
- public void setRequiredIntents(List<Intent> intents) {
- this.requiredIntents = intents;
- }
-
- public boolean isReplace() {
- return replace;
- }
-
- public void setReplace(boolean replace) {
- this.replace = replace;
- }
-}
diff --git a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/definitions/DefaultDefinitionsFactory.java b/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/definitions/DefaultDefinitionsFactory.java
deleted file mode 100644
index 156fd0af75..0000000000
--- a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/definitions/DefaultDefinitionsFactory.java
+++ /dev/null
@@ -1,32 +0,0 @@
-/*
- * 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.definitions;
-
-import org.apache.tuscany.sca.definitions.impl.DefinitionsImpl;
-
-/**
- * Default Implementation of DefinitionsFactory
- */
-public class DefaultDefinitionsFactory implements DefinitionsFactory {
-
- public Definitions createDefinitions() {
- return new DefinitionsImpl();
- }
-
-}
diff --git a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/definitions/Definitions.java b/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/definitions/Definitions.java
deleted file mode 100644
index 611eadee8d..0000000000
--- a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/definitions/Definitions.java
+++ /dev/null
@@ -1,113 +0,0 @@
- /*
- * 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.definitions;
-
-import java.util.List;
-
-import javax.xml.namespace.QName;
-
-import org.apache.tuscany.sca.assembly.Binding;
-import org.apache.tuscany.sca.policy.BindingType;
-import org.apache.tuscany.sca.policy.ImplementationType;
-import org.apache.tuscany.sca.policy.Intent;
-import org.apache.tuscany.sca.policy.PolicySet;
-
-import org.apache.tuscany.sca.policy.ExternalAttachment;
-
-
-/**
- * Represents SCA Definitions.
- *
- * @version $Rev$ $Date$
- */
-public interface Definitions {
- /**
- * Returns the target namespace for this SCA Definition
- * @return the target namespace
- */
- String getTargetNamespace();
-
- /**
- * Sets the target names for this SCA Definition.
- *
- * @param ns the target namespace for this SCA Definition
- */
- void setTargetNamespace(String ns);
-
- /**
- * Returns a list of domain wide Policy Intents
- *
- * @return a list of domain wide Policy Intents
- */
- List<Intent> getIntents();
-
- /**
- * Returns a list of domain wide PolicySets
- *
- * @return a list of domain wide PolicySets
- */
- List<PolicySet> getPolicySets();
-
- /**
- * Returns a list of domain wide Binding Types
- *
- * @return a list of domain wide Binding Types
- */
- List<BindingType> getBindingTypes();
-
- /**
- * Returns the requested Binding Type or null
- * if the requested Binding Type is not defined
- * in the domain
- *
- * @param bindingTypeName the name of the Binding Type to return
- * @return Binding Type or null if the Binding Type is not present
- */
- BindingType getBindingType(QName bindingTypeName);
-
- /**
- * Returns a list of domain wide Implementation Types
- *
- * @return a list of domain wide Implementation Types
- */
- List<ImplementationType> getImplementationTypes();
-
- /**
- * Returns the requested Implementation Type or null
- * if the requested Implementation Type is not defined
- * in the domain
- *
- * @param implementationTypeName the name of the implementation type to return
- * @return Implementation Type or null if the Implementation Type is not present
- */
- ImplementationType getImplementationType(QName implementationTypeName);
-
- /**
- * Returns a list of domain wide binding definition objects
- *
- * @return a list of domain wide binding definition objects
- */
- List<Binding> getBindings();
-
- /**
- * Returns a list of external attachments
- * @return
- */
- List<ExternalAttachment> getExternalAttachments();
-}
diff --git a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/definitions/DefinitionsBuilder.java b/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/definitions/DefinitionsBuilder.java
deleted file mode 100644
index 5c68c6cbff..0000000000
--- a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/definitions/DefinitionsBuilder.java
+++ /dev/null
@@ -1,34 +0,0 @@
-/*
- * 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.definitions;
-
-
-/**
- * Interface to abstract building of SCA Definitions for a Domain
- *
- * @version $Rev$ $Date$
- */
-public interface DefinitionsBuilder {
- /**
- * Builds the SCA definitions
- *
- * @param scaDefns
- */
- void build(Definitions scaDefns) throws DefinitionsBuilderException;
-}
diff --git a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/definitions/DefinitionsBuilderException.java b/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/definitions/DefinitionsBuilderException.java
deleted file mode 100644
index f45be80888..0000000000
--- a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/definitions/DefinitionsBuilderException.java
+++ /dev/null
@@ -1,43 +0,0 @@
-/*
- * 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.definitions;
-
-/**
- * Builder Exception
- *
- * @version $Rev$ $Date$
- */
-public class DefinitionsBuilderException extends Exception {
- private static final long serialVersionUID = 2513219325230252783L;
-
- public DefinitionsBuilderException() {
- }
-
- public DefinitionsBuilderException(String message) {
- super(message);
- }
-
- public DefinitionsBuilderException(Throwable cause) {
- super(cause);
- }
-
- public DefinitionsBuilderException(String message, Throwable cause) {
- super(message, cause);
- }
-}
diff --git a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/definitions/DefinitionsFactory.java b/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/definitions/DefinitionsFactory.java
deleted file mode 100644
index 616616ae7a..0000000000
--- a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/definitions/DefinitionsFactory.java
+++ /dev/null
@@ -1,31 +0,0 @@
-/*
- * 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.definitions;
-
-/**
- * Factory interface to create SCA definitions model
- *
- */
-public interface DefinitionsFactory {
- /**
- * Create an instance of SCA definitions
- * @return a new instance of SCA definitions
- */
- Definitions createDefinitions();
-}
diff --git a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/definitions/impl/DefinitionsBuilderImpl.java b/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/definitions/impl/DefinitionsBuilderImpl.java
deleted file mode 100644
index d87d45b27a..0000000000
--- a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/definitions/impl/DefinitionsBuilderImpl.java
+++ /dev/null
@@ -1,307 +0,0 @@
-/*
- * 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.definitions.impl;
-
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-
-import javax.xml.namespace.QName;
-
-import org.apache.tuscany.sca.definitions.Definitions;
-import org.apache.tuscany.sca.definitions.DefinitionsBuilder;
-import org.apache.tuscany.sca.definitions.DefinitionsBuilderException;
-import org.apache.tuscany.sca.policy.BindingType;
-import org.apache.tuscany.sca.policy.ExtensionType;
-import org.apache.tuscany.sca.policy.ImplementationType;
-import org.apache.tuscany.sca.policy.Intent;
-import org.apache.tuscany.sca.policy.IntentMap;
-import org.apache.tuscany.sca.policy.PolicySet;
-import org.apache.tuscany.sca.policy.Qualifier;
-
-/**
- * Provides a concrete implementation for a SCADefinitionsBuilder
- *
- * @version $Rev$ $Date$
- */
-public class DefinitionsBuilderImpl implements DefinitionsBuilder {
-
- public void build(Definitions scaDefns) throws DefinitionsBuilderException {
- Map<QName, Intent> definedIntents = new HashMap<QName, Intent>();
- for (Intent intent : scaDefns.getIntents()) {
- definedIntents.put(intent.getName(), intent);
- }
-
- Map<QName, PolicySet> definedPolicySets = new HashMap<QName, PolicySet>();
- for (PolicySet policySet : scaDefns.getPolicySets()) {
- definedPolicySets.put(policySet.getName(), policySet);
- }
-
- Map<QName, BindingType> definedBindingTypes = new HashMap<QName, BindingType>();
- for (BindingType bindingType : scaDefns.getBindingTypes()) {
- definedBindingTypes.put(bindingType.getType(), bindingType);
- }
-
- Map<QName, ImplementationType> definedImplTypes = new HashMap<QName, ImplementationType>();
- for (ImplementationType implType : scaDefns.getImplementationTypes()) {
- definedImplTypes.put(implType.getType(), implType);
- }
-
- //filling up the maps removes all duplicate entries... so fill this unique lists
- //into the scaDefns.
- scaDefns.getIntents().clear();
- scaDefns.getPolicySets().clear();
- scaDefns.getBindingTypes().clear();
- scaDefns.getImplementationTypes().clear();
-
- scaDefns.getIntents().addAll(definedIntents.values());
- scaDefns.getPolicySets().addAll(definedPolicySets.values());
- scaDefns.getBindingTypes().addAll(definedBindingTypes.values());
- scaDefns.getImplementationTypes().addAll(definedImplTypes.values());
-
- buildPolicyIntents(scaDefns, definedIntents);
- buildPolicySets(scaDefns, definedPolicySets, definedIntents);
- buildBindingTypes(scaDefns, definedBindingTypes, definedIntents);
- buildImplementationTypes(scaDefns, definedImplTypes, definedIntents);
- }
-
- private void buildBindingTypes(Definitions scaDefns,
- Map<QName, BindingType> definedBindingTypes,
- Map<QName, Intent> definedIntents) throws DefinitionsBuilderException {
- for (BindingType bindingType : scaDefns.getBindingTypes()) {
- buildAlwaysProvidedIntents(bindingType, definedIntents);
- buildMayProvideIntents(bindingType, definedIntents);
- }
-
- }
-
- private void buildImplementationTypes(Definitions scaDefns,
- Map<QName, ImplementationType> definedImplTypes,
- Map<QName, Intent> definedIntents) throws DefinitionsBuilderException {
- for (ImplementationType implType : scaDefns.getImplementationTypes()) {
- buildAlwaysProvidedIntents(implType, definedIntents);
- buildMayProvideIntents(implType, definedIntents);
- }
- }
-
- private void buildPolicyIntents(Definitions scaDefns, Map<QName, Intent> definedIntents)
- throws DefinitionsBuilderException {
- for (Intent policyIntent : scaDefns.getIntents()) {
- if (!policyIntent.getRequiredIntents().isEmpty()) {
- buildProfileIntent(policyIntent, definedIntents);
- }
-
- if (!policyIntent.getQualifiedIntents().isEmpty()) {
- buildQualifiedIntent(policyIntent, definedIntents);
- }
- }
- }
-
- private void buildPolicySets(Definitions scaDefns,
- Map<QName, PolicySet> definedPolicySets,
- Map<QName, Intent> definedIntents) throws DefinitionsBuilderException {
-
- for (PolicySet policySet : scaDefns.getPolicySets()) {
- buildProvidedIntents(policySet, definedIntents);
- buildIntentsInMappedPolicies(policySet, definedIntents);
- buildReferredPolicySets(policySet, definedPolicySets);
- }
-
- for (PolicySet policySet : scaDefns.getPolicySets()) {
- for (PolicySet referredPolicySet : policySet.getReferencedPolicySets()) {
- includeReferredPolicySets(policySet, referredPolicySet);
- }
- }
- }
-
- private void buildProfileIntent(Intent policyIntent, Map<QName, Intent> definedIntents)
- throws DefinitionsBuilderException {
- //FIXME: Need to check for cyclic references first i.e an A requiring B and then B requiring A...
- if (policyIntent != null) {
- //resolve all required intents
- List<Intent> requiredIntents = new ArrayList<Intent>();
- for (Intent requiredIntent : policyIntent.getRequiredIntents()) {
- if (requiredIntent.isUnresolved()) {
- Intent resolvedRequiredIntent = definedIntents.get(requiredIntent.getName());
- if (resolvedRequiredIntent != null) {
- requiredIntents.add(resolvedRequiredIntent);
- } else {
- throw new DefinitionsBuilderException("Required Intent - " + requiredIntent
- + " not found for ProfileIntent "
- + policyIntent);
-
- }
- } else {
- requiredIntents.add(requiredIntent);
- }
- }
- policyIntent.getRequiredIntents().clear();
- policyIntent.getRequiredIntents().addAll(requiredIntents);
- }
- }
-
- private void buildQualifiedIntent(Intent policyIntent, Map<QName, Intent> definedIntents)
- throws DefinitionsBuilderException {
- /*
- if (policyIntent != null) {
- //resolve the qualifiable intent
- Intent qualifiableIntent = policyIntent.getQualifiableIntent();
- if (qualifiableIntent.isUnresolved()) {
- Intent resolvedQualifiableIntent = definedIntents.get(qualifiableIntent.getName());
-
- if (resolvedQualifiableIntent != null) {
- policyIntent.setQualifiableIntent(resolvedQualifiableIntent);
- } else {
- throw new DefinitionsBuilderException("Qualifiable Intent - " + qualifiableIntent
- + " not found for QualifiedIntent "
- + policyIntent);
- }
-
- }
- }
- */
- }
-
- private void buildAlwaysProvidedIntents(ExtensionType extensionType, Map<QName, Intent> definedIntents)
- throws DefinitionsBuilderException {
- if (extensionType != null) {
- // resolve all provided intents
- List<Intent> alwaysProvided = new ArrayList<Intent>();
- for (Intent providedIntent : extensionType.getAlwaysProvidedIntents()) {
- if (providedIntent.isUnresolved()) {
- Intent resolvedProvidedIntent = definedIntents.get(providedIntent.getName());
- if (resolvedProvidedIntent != null) {
- alwaysProvided.add(resolvedProvidedIntent);
- } else {
- throw new DefinitionsBuilderException("Always Provided Intent - " + providedIntent
- + " not found for ExtensionType "
- + extensionType);
-
- }
- } else {
- alwaysProvided.add(providedIntent);
- }
- }
- extensionType.getAlwaysProvidedIntents().clear();
- extensionType.getAlwaysProvidedIntents().addAll(alwaysProvided);
- }
- }
-
- private void buildMayProvideIntents(ExtensionType extensionType, Map<QName, Intent> definedIntents)
- throws DefinitionsBuilderException {
- if (extensionType != null) {
- // resolve all provided intents
- List<Intent> mayProvide = new ArrayList<Intent>();
- for (Intent providedIntent : extensionType.getMayProvidedIntents()) {
- if (providedIntent.isUnresolved()) {
- Intent resolvedProvidedIntent = definedIntents.get(providedIntent.getName());
- if (resolvedProvidedIntent != null) {
- mayProvide.add(resolvedProvidedIntent);
- } else {
- throw new DefinitionsBuilderException("May Provide Intent - " + providedIntent
- + " not found for ExtensionType "
- + extensionType);
-
- }
- } else {
- mayProvide.add(providedIntent);
- }
- }
- extensionType.getMayProvidedIntents().clear();
- extensionType.getMayProvidedIntents().addAll(mayProvide);
- }
- }
-
- private void buildProvidedIntents(PolicySet policySet, Map<QName, Intent> definedIntents)
- throws DefinitionsBuilderException {
- if (policySet != null) {
- //resolve all provided intents
- List<Intent> providedIntents = new ArrayList<Intent>();
- for (Intent providedIntent : policySet.getProvidedIntents()) {
- if (providedIntent.isUnresolved()) {
- Intent resolvedProvidedIntent = definedIntents.get(providedIntent.getName());
- if (resolvedProvidedIntent != null) {
- providedIntents.add(resolvedProvidedIntent);
- } else {
- throw new DefinitionsBuilderException("Provided Intent - " + providedIntent
- + " not found for PolicySet "
- + policySet);
-
- }
- } else {
- providedIntents.add(providedIntent);
- }
- }
- policySet.getProvidedIntents().clear();
- policySet.getProvidedIntents().addAll(providedIntents);
- }
- }
-
- private void buildIntentsInMappedPolicies(PolicySet policySet, Map<QName, Intent> definedIntents)
- throws DefinitionsBuilderException {
- for (IntentMap intentMap : policySet.getIntentMaps()) {
- for (Qualifier qualifier : intentMap.getQualifiers()) {
- Intent mappedIntent = qualifier.getIntent();
- if (mappedIntent.isUnresolved()) {
- Intent resolvedMappedIntent = definedIntents.get(mappedIntent.getName());
-
- if (resolvedMappedIntent != null) {
- qualifier.setIntent(resolvedMappedIntent);
- } else {
- throw new DefinitionsBuilderException("Mapped Intent - " + mappedIntent
- + " not found for PolicySet "
- + policySet);
-
- }
- }
- }
- }
- }
-
- private void buildReferredPolicySets(PolicySet policySet, Map<QName, PolicySet> definedPolicySets)
- throws DefinitionsBuilderException {
-
- List<PolicySet> referredPolicySets = new ArrayList<PolicySet>();
- for (PolicySet referredPolicySet : policySet.getReferencedPolicySets()) {
- if (referredPolicySet.isUnresolved()) {
- PolicySet resolvedReferredPolicySet = definedPolicySets.get(referredPolicySet.getName());
- if (resolvedReferredPolicySet != null) {
- referredPolicySets.add(resolvedReferredPolicySet);
- } else {
- throw new DefinitionsBuilderException("Referred PolicySet - " + referredPolicySet
- + "not found for PolicySet - "
- + policySet);
- }
- } else {
- referredPolicySets.add(referredPolicySet);
- }
- }
- policySet.getReferencedPolicySets().clear();
- policySet.getReferencedPolicySets().addAll(referredPolicySets);
- }
-
- private void includeReferredPolicySets(PolicySet policySet, PolicySet referredPolicySet) {
- for (PolicySet furtherReferredPolicySet : referredPolicySet.getReferencedPolicySets()) {
- includeReferredPolicySets(referredPolicySet, furtherReferredPolicySet);
- }
- policySet.getPolicies().addAll(referredPolicySet.getPolicies());
- policySet.getIntentMaps().addAll(referredPolicySet.getIntentMaps());
- }
-}
diff --git a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/definitions/impl/DefinitionsImpl.java b/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/definitions/impl/DefinitionsImpl.java
deleted file mode 100644
index 2e34346ef0..0000000000
--- a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/definitions/impl/DefinitionsImpl.java
+++ /dev/null
@@ -1,103 +0,0 @@
-/*
- * 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.definitions.impl;
-
-import java.util.List;
-import java.util.concurrent.CopyOnWriteArrayList;
-
-import javax.xml.namespace.QName;
-
-import org.apache.tuscany.sca.assembly.Binding;
-import org.apache.tuscany.sca.definitions.Definitions;
-import org.apache.tuscany.sca.policy.BindingType;
-import org.apache.tuscany.sca.policy.ExternalAttachment;
-import org.apache.tuscany.sca.policy.ImplementationType;
-import org.apache.tuscany.sca.policy.Intent;
-import org.apache.tuscany.sca.policy.PolicySet;
-
-/**
- * Provides a concrete implementation for SCADefinitions
- *
- * @version $Rev$ $Date$
- */
-public class DefinitionsImpl implements Definitions {
- private String targetNamespace = null;
- private List<Intent> intents = new CopyOnWriteArrayList<Intent>();
- private List<PolicySet> policySets = new CopyOnWriteArrayList<PolicySet>();
- private List<BindingType> bindingTypes = new CopyOnWriteArrayList<BindingType>();
- private List<ImplementationType> implementationTypes = new CopyOnWriteArrayList<ImplementationType>();
- private List<Binding> bindings = new CopyOnWriteArrayList<Binding>();
- private List<ExternalAttachment> externalAttachments = new CopyOnWriteArrayList<ExternalAttachment>();
-
-
- public List<BindingType> getBindingTypes() {
- return bindingTypes;
- }
-
- public BindingType getBindingType(QName bindingTypeName) {
-
- for(BindingType bindingType : bindingTypes){
- if (bindingType.getType().equals(bindingTypeName)){
- return bindingType;
- }
- }
-
- return null;
- }
-
- public List<ImplementationType> getImplementationTypes() {
- return implementationTypes;
- }
-
- public ImplementationType getImplementationType(QName implementationTypeName) {
-
- for(ImplementationType implementationType : implementationTypes){
- if (implementationType.getType().equals(implementationTypeName)){
- return implementationType;
- }
- }
-
- return null;
- }
-
- public List<Intent> getIntents() {
- return intents;
- }
-
- public List<PolicySet> getPolicySets() {
- return policySets;
- }
-
- public String getTargetNamespace() {
- return targetNamespace;
- }
-
- public void setTargetNamespace(String ns) {
- this.targetNamespace = ns;
- }
-
- public List<Binding> getBindings() {
- return bindings;
- }
-
- public List<ExternalAttachment> getExternalAttachments() {
- return externalAttachments ;
- }
-}
diff --git a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/definitions/util/DefinitionsUtil.java b/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/definitions/util/DefinitionsUtil.java
deleted file mode 100644
index 452c3bf883..0000000000
--- a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/definitions/util/DefinitionsUtil.java
+++ /dev/null
@@ -1,110 +0,0 @@
-/*
- * 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.definitions.util;
-
-import static org.apache.tuscany.sca.assembly.builder.Messages.DEFINITIONS_VALIDATION;
-
-import java.util.HashSet;
-
-import org.apache.tuscany.sca.definitions.Definitions;
-import org.apache.tuscany.sca.monitor.Monitor;
-import org.apache.tuscany.sca.policy.BindingType;
-import org.apache.tuscany.sca.policy.ImplementationType;
-import org.apache.tuscany.sca.policy.Intent;
-import org.apache.tuscany.sca.policy.PolicySet;
-
-/**
- * Some utility functions to deal with SCADefinitions
- *
- * @version $Rev$ $Date$
- */
-public class DefinitionsUtil {
-
- /**
- * Add the source set of definitions into the target set of definitions checking that
- * definitions artifacts are unique in the process
- *
- * @param source the input definitions collection
- * @param target the definition collection into which source will aggregated
- */
- public static void aggregate(Definitions source, Definitions target, Monitor monitor) {
-
- HashSet<Intent> intents = new HashSet<Intent>(target.getIntents());
- for(Intent intent : source.getIntents()){
- if (intents.contains(intent)){
- Monitor.error(monitor,
- target,
- DEFINITIONS_VALIDATION,
- "DuplicateIntent",
- intent.getName().toString());
- } else {
- target.getIntents().add(intent);
- intents.add(intent);
- }
- }
-
- HashSet<PolicySet> policySets = new HashSet<PolicySet>(target.getPolicySets());
- for(PolicySet policySet : source.getPolicySets()){
- if (policySets.contains(policySet)){
- Monitor.error(monitor,
- target,
- DEFINITIONS_VALIDATION,
- "DuplicatePolicySet",
- policySet.getName().toString());
- } else {
- target.getPolicySets().add(policySet);
- policySets.add(policySet);
- }
- }
-
- HashSet<BindingType> bindingTypes = new HashSet<BindingType>(target.getBindingTypes());
- for(BindingType bindingType : source.getBindingTypes()){
- if (bindingTypes.contains(bindingType)){
- Monitor.error(monitor,
- target,
- DEFINITIONS_VALIDATION,
- "DuplicateBindingType",
- bindingType.getType().toString());
- } else {
- target.getBindingTypes().add(bindingType);
- bindingTypes.add(bindingType);
- }
- }
-
- HashSet<ImplementationType> implementationTypes = new HashSet<ImplementationType>(target.getImplementationTypes());
- for(ImplementationType implementationType : source.getImplementationTypes()){
- if (implementationTypes.contains(implementationType)){
- Monitor.error(monitor,
- target,
- DEFINITIONS_VALIDATION,
- "DuplicateImplementationType",
- implementationType.getType().toString());
- } else {
- target.getImplementationTypes().add(implementationType);
- implementationTypes.add(implementationType);
- }
- }
-
- target.getBindings().addAll(source.getBindings());
-
- target.getExternalAttachments().addAll(source.getExternalAttachments());
- }
-
-}
diff --git a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/interfacedef/Compatibility.java b/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/interfacedef/Compatibility.java
deleted file mode 100644
index e05a05476a..0000000000
--- a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/interfacedef/Compatibility.java
+++ /dev/null
@@ -1,29 +0,0 @@
-/*
- * 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.interfacedef;
-
-/**
- * Types of compatibility
- */
-public enum Compatibility {
- SUPERSET, // The source is a superset of the target
- SUBSET, // The source is a subset of the target
- MUTUAL, // The source is the same set as the target
- INCOMPATIBLE // The source is not compatible with the target
-} \ No newline at end of file
diff --git a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/interfacedef/DataType.java b/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/interfacedef/DataType.java
deleted file mode 100644
index 386275b41b..0000000000
--- a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/interfacedef/DataType.java
+++ /dev/null
@@ -1,120 +0,0 @@
-/*
- * 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.interfacedef;
-
-import java.lang.reflect.Type;
-
-/**
- * Representation of the type of data associated with an operation. Data is
- * represented in two forms: the physical form used by the runtime and a logical
- * form used by the assembly. The physical form is a Java Type because the
- * runtime is written in Java. This may be the same form used by the application
- * but it may not; for example, an application that is performing stream
- * processing may want a physical form such as an
- * {@link java.io.InputStream InputStream} to semantically operate on application
- * data such as a purchase order. The logical description is that used by the
- * assembly model and is an identifier into some well-known type space; examples
- * may be a Java type represented by its Class or an XML type represented by its
- * QName. Every data type may also contain metadata describing the expected
- * data; for example, it could specify a preferred data binding technology or
- * the size of a typical instance.
- *
- * @version $Rev$ $Date$
- * @tuscany.spi.extension.asclient
- */
-public interface DataType<L> extends Cloneable {
- /**
- * Set the java type for the data
- * @param cls
- */
- void setPhysical(Class<?> cls);
-
- /**
- * Returns the physical type used by the runtime.
- *
- * @return the physical type used by the runtime
- */
- Class<?> getPhysical();
-
- /**
- * Get the java generic type
- * @return The java generic type
- */
- Type getGenericType();
-
- /**
- * Set the java generic type
- * @param genericType
- */
- void setGenericType(Type genericType);
-
- /**
- * Returns the logical identifier used by the assembly. The type of this
- * value identifies the logical type system in use. Known values are:
- * <ul>
- * <li>a Class identifies a Java type by name and
- * ClassLoader; this includes Java Classes as they are specializations of
- * Type</li>
- * <li>a XMLType identifies an XML type by local name and
- * namespace</li>
- * </ul>
- *
- * @return the logical type name
- */
- L getLogical();
-
- /**
- * Get the databinding for the given data type
- * @return the databinding
- */
- String getDataBinding();
-
- /**
- * Set the databinding for the given data type
- * @param dataBinding the dataBinding to set
- */
- void setDataBinding(String dataBinding);
-
- /**
- * Clone a data type
- * @return The cloned data type
- * @throws CloneNotSupportedException
- */
- Object clone() throws CloneNotSupportedException;
-
- /**
- * Set the logical type of the data type
- * @param logical the logical to set
- */
- void setLogical(L logical);
-
- /**
- * Get the databinding-specific metadata
- * @param type The java type of the metadata
- * @return the databinding-specific metadata
- */
- <T> T getMetaData(Class<T> type);
- /**
- * Set the databinding-specific metadata
- * @param type The java type of the metadata
- * @param metaData the databinding-specific metadata, such as SDO's commonj.sdo.Type or
- * JAXB's javax.xml.bind.JAXBContext
- */
- <T> void setMetaData(Class<T> type, T metaData);
-}
diff --git a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/interfacedef/FaultExceptionMapper.java b/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/interfacedef/FaultExceptionMapper.java
deleted file mode 100644
index 4aa5f2780a..0000000000
--- a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/interfacedef/FaultExceptionMapper.java
+++ /dev/null
@@ -1,63 +0,0 @@
-/*
- * 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.interfacedef;
-
-/**
- * This interface represents the mapping between WSDL faults and Java exceptions
- *
- * @version $Rev$ $Date$
- * @tuscany.spi.extension.inheritfrom
- */
-@SuppressWarnings("unchecked")
-public interface FaultExceptionMapper {
- /**
- * Introspect an exception class to find out the fault data type following the WSDL2Java
- * mapping rules. The result will be populated into the logical type of the exception data
- * type
- *
- * @param exceptionDataType The data type representing a java exception class
- * @param operation TODO
- * @param generatingFaultBean If JAXWS Section 3.7 Fault Bean will be generated
- * @return true if the introspection can recognize the exception data type
- */
- boolean introspectFaultDataType(DataType<DataType> exceptionDataType, Operation operation, boolean generatingFaultBean);
-
- /**
- * Create a java exception to wrap the fault data
- *
- * @param exceptionType The DataType for the exception
- * @param message message for the exception
- * @param faultInfo The fault data
- * @param cause of the exception
- * @param operation TODO
- * @return An instance of java exception to represent the fault
- */
- Throwable wrapFaultInfo(DataType<DataType> exceptionType, String message, Object faultInfo, Throwable cause, Operation operation);
-
- /**
- * Retrieve the fault info from a java exception
- *
- * @param exception The java exception that represents the fault data
- * @param faultBeanClass
- * @param operation TODO
- * @return The fault data
- */
- Object getFaultInfo(Throwable exception, Class<?> faultBeanClass, Operation operation);
-}
diff --git a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/interfacedef/IncompatibleInterfaceContractException.java b/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/interfacedef/IncompatibleInterfaceContractException.java
deleted file mode 100644
index 179dc1755e..0000000000
--- a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/interfacedef/IncompatibleInterfaceContractException.java
+++ /dev/null
@@ -1,69 +0,0 @@
-/*
- * 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.interfacedef;
-
-/**
- * Denotes incompatible service contracts for a wire
- *
- * @version $Rev$ $Date$
- */
-public class IncompatibleInterfaceContractException extends Exception {
- private static final long serialVersionUID = 5127478601823295587L;
- private final InterfaceContract source;
- private final InterfaceContract target;
- private final Operation sourceOperation;
- private final Operation targetOperation;
-
- public IncompatibleInterfaceContractException(String message, InterfaceContract source, InterfaceContract target) {
- super(message);
- this.source = source;
- this.target = target;
- this.sourceOperation = null;
- this.targetOperation = null;
- }
-
- public IncompatibleInterfaceContractException(String message,
- InterfaceContract source,
- InterfaceContract target,
- Operation sourceOperation,
- Operation targetOperation) {
- super(message);
- this.source = source;
- this.target = target;
- this.sourceOperation = sourceOperation;
- this.targetOperation = targetOperation;
- }
-
- public InterfaceContract getTarget() {
- return target;
- }
-
- public InterfaceContract getSource() {
- return source;
- }
-
- public Operation getSourceOperation() {
- return sourceOperation;
- }
-
- public Operation getTargetOperation() {
- return targetOperation;
- }
-}
diff --git a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/interfacedef/Interface.java b/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/interfacedef/Interface.java
deleted file mode 100644
index 5e81453f63..0000000000
--- a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/interfacedef/Interface.java
+++ /dev/null
@@ -1,125 +0,0 @@
-/*
- * 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.interfacedef;
-
-import java.util.List;
-import java.util.Map;
-
-import org.apache.tuscany.sca.policy.PolicySubject;
-
-/**
- * Represents a service interface. This interface will typically be extended to
- * support concrete interface type systems, such as Java interfaces, WSDL 1.1
- * portTypes and WSDL 2.0 interfaces.
- *
- * @version $Rev$ $Date$
- * @tuscany.spi.extension.inheritfrom
- */
-public interface Interface extends Cloneable, PolicySubject {
-
- /**
- * Returns true if the interface is a remotable interface..
- *
- * @return true if the interface is a remotable interface
- */
- boolean isRemotable();
-
- /**
- * Sets whether the interface is a remotable or local interface.
- *
- * @param remotable indicates whether the interface is remotable or local
- */
- void setRemotable(boolean remotable);
-
- /**
- * Returns true if the interface remotable property is set..
- *
- * This is used to verify if a @remotable attribute is used in the
- * <interface.java> SCDL element. If true, use isRemotable to verify the
- * current value
- *
- * @return
- */
- boolean isRemotableSet();
-
- /**
- * A flag that indicates if the remotable status has come
- * from the <interface.? remotable=""/> attribute
- *
- * @return
- */
- boolean isRemotableSetFromSCDL();
- void setRemotableSetFromSCDL();
-
- /**
- * Returns the operations defined on this interface.
- *
- * @return the operations defined on this interface
- */
- List<Operation> getOperations();
-
- /**
- * Set the databinding for the interface
- * @param dataBinding
- * @deprecated Please use resetDataBinding
- */
- @Deprecated
- void setDefaultDataBinding(String dataBinding);
-
- /**
- * Reset the databinding for the interface
- * @param dataBinding
- */
- void resetDataBinding(String dataBinding);
-
- /**
- * Set the interface input types by copying those from the
- * interface provided
- *
- * @param newInterface
- */
- public void resetInterfaceInputTypes(Interface newInterface);
-
- /**
- * Set the interface output types by copying those from the
- * interface provided
- *
- * @param newInterface
- */
- public void resetInterfaceOutputTypes(Interface newInterface);
-
- /**
- * Returns true if the Interface is dynamic.
- *
- * @return true if the Interface is dynamic.
- */
- boolean isDynamic();
-
- /**
- * Get a map of attributes associated with the interface
- * @return A map of attributes
- */
- Map<Object, Object> getAttributes();
-
- /**
- * Implementations must support cloning.
- */
- Object clone() throws CloneNotSupportedException;
-
-}
diff --git a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/interfacedef/InterfaceContract.java b/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/interfacedef/InterfaceContract.java
deleted file mode 100644
index af8e8909a2..0000000000
--- a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/interfacedef/InterfaceContract.java
+++ /dev/null
@@ -1,100 +0,0 @@
-/*
- * 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.interfacedef;
-
-
-/**
- * Interface contracts define one or more business functions. These business
- * functions are provided by services and are used by references.
- *
- * @version $Rev$ $Date$
- * @tuscany.spi.extension.inheritfrom
- */
-public interface InterfaceContract extends Cloneable {
-
- /**
- * Returns the interface definition representing the interface for
- * invocations from the requestor to the provider.
- *
- * @return the interface definition representing the interface for
- * invocations from the requestor to the provider
- */
- Interface getInterface();
-
- /**
- * Sets the interface definition representing the interface for invocations
- * from the requestor to the provider.
- *
- * @param callInterface the interface definition representing the interface
- * for invocations from the requestor to the provider
- */
- void setInterface(Interface callInterface);
-
- /**
- * Returns the interface definition representing the interface for
- * invocations from the provider to the requestor.
- *
- * @return the interface definition representing the interface for
- * invocations from the provider to the requestor.
- */
- Interface getCallbackInterface();
-
- /**
- * Sets the interface definition representing the interface for invocations
- * from the provider to the requestor.
- *
- * @param callbackInterface the interface definition representing the
- * interface for invocations from the provider to the requestor.
- */
- void setCallbackInterface(Interface callbackInterface);
-
- // FIXME: We need a better way to do this
- /**
- * Convert an interface contract to a unidirectional interface contract
- *
- * @param isCallback true for a callback interface contract, false for
- * a forward interface contract
- * @return A unidirectional interface contract, cloned if necessary
- */
- InterfaceContract makeUnidirectional(boolean isCallback);
-
- /**
- * Implementations must support cloning.
- */
- Object clone() throws CloneNotSupportedException;
-
- /**
- * For matching purposes the Java interface contract is
- * turned into a WSDL contract in the cases where it needs to be matched
- * against another WSDL contract
- *
- * @return WSDL interface contract
- */
- InterfaceContract getNormalizedWSDLContract();
-
- /**
- * For matching purposes the Java interface contract is
- * turned into a WSDL contract in the cases where it needs to be matched
- * against another WSDL contract
- *
- * @param wsdlInterfaceContract
- */
- void setNormalizedWSDLContract(InterfaceContract wsdlInterfaceContract);
-
-}
diff --git a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/interfacedef/InterfaceContractMapper.java b/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/interfacedef/InterfaceContractMapper.java
deleted file mode 100644
index ed7b10091b..0000000000
--- a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/interfacedef/InterfaceContractMapper.java
+++ /dev/null
@@ -1,245 +0,0 @@
-/*
- * 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.interfacedef;
-
-import org.apache.tuscany.sca.interfacedef.util.Audit;
-
-/**
- * The InterfaceContractMapper is responsible to match interfaces
- *
- * @version $Rev$ $Date$
- * @tuscany.spi.extension.asclient
- */
-public interface InterfaceContractMapper {
- /**
- * @param source The source interface contract
- * @param target The target interface contract
- * @param compatibility The compatibility style
- * @param ignoreCallback
- * @param silent
- * @return
- * @throws IncompatibleInterfaceContractException
- */
- boolean checkCompatibility(InterfaceContract source,
- InterfaceContract target,
- Compatibility compatibility,
- boolean ignoreCallback,
- boolean silent) throws IncompatibleInterfaceContractException;
-
- /**
- * @param source The source interface contract
- * @param target The target interface contract
- * @param compatibility The compatibility style
- * @param ignoreCallback
- * @param silent
- * @return
- * @throws IncompatibleInterfaceContractException
- * this interface is intended to incrementally replace the variant without the audit trail
- * the presence of both interfaces implies a state of partial development
- */
- boolean checkCompatibility(InterfaceContract source,
- InterfaceContract target,
- Compatibility compatibility,
- boolean ignoreCallback,
- boolean silent,
- Audit audit) throws IncompatibleInterfaceContractException;
-
- /**
- * Test if the source data type is compatible with the target data type. The
- * compatibility is defined as follows.
- * <ul>
- * <li>source's logical type is either the same or subtype of the target's
- * logical type
- * </ul>
- * For example, if the source type is a SDO Customer and the target type is
- * a JAXB Customer and both Customer are generated from the same XSD type.
- *
- * @param source The source data type
- * @param target The target data type
- * @param passByValue A flag to indicate how the compatibility is checked
- * <ul>
- * <li>true: Check the two types as compatible "by-value" (can be copied)
- * <li>false: Check the two types as compatible "by-reference" (can be assigned)
- * </ul>
- * @return true if the source data type is the same or subtype of the target data type
- */
- boolean isCompatible(DataType<?> source, DataType<?> target, boolean passByValue);
-
- /**
- * Check if source operation is compatible with the target operation. A source operation is
- * compatible with the target operation means the following:
- *
- * <ol>
- * <li>compatibility for the two operations is defined as compatibility
- * of the signature, i.e., the operation name, the input types, and the output types are the same
- *
- * <li>the order of the input and output types of the source operation is the same as the order of
- * the input and output types for the corresponding target operation
- * <li>the set of Faults and Exceptions expected by the source operation is the same as or is
- * a SUPERSET of the set of Faults and Exceptions specified by the corresponding target operation
- * </ol>
- *
- * Simply speaking, any request from the source operation can be processed by the target operation and
- * the normal response or fault/exception from the target operation can be handled by the source operation.
- *
- * Please note this compatibility check is NOT symmetric. But the following should be guaranteed:
- * <ul>
- * <li>(source, target, SUB) == (target, source, SUPER)
- * <li>(source, target, MUTUAL) == (source, target, SUB) && (target, source, SUB) == (source, target, SUPER) && (source, target, SUPER)
- *
- * @param source The source operation
- * @param target The target operation
- * @param compatibilityType The type of compatibility
- * @return true if the source operation is compatible with the target
- * operation
- */
- boolean isCompatible(Operation source, Operation target, Compatibility compatibilityType);
-
- boolean isCompatibleByReference(Operation source, Operation target, Compatibility compatibilityType);
- boolean isCompatibleByValue(Operation source, Operation target, Compatibility compatibilityType);
-
- /**
- * Similar to isCompatibleByValue with the one difference that isCompatibleByValue will "unwrap" a wrapperStyle
- * operation to compare it to a non-wrapperStyle operation. One the other hand, isCompatibleWithoutUnwrapByValue
- * will return false, i.e. not-compatible, if the source and target operation do not have the same wrapperStyle.
- *
- *
- * @param source The source operation
- * @param target The target operation
- * @param compatibilityType The type of compatibility
- * @return true if the source operation is compatible with the target
- * operation
- */
- boolean isCompatibleWithoutUnwrapByValue(Operation source, Operation target, Compatibility compatibilityType);
- /**
- * An interface A is a Compatible Subset of a second interface B if and only if all of points 1 through 6
- * in the following list apply:
- * <ol>
- * <li>interfaces A and B are either both remotable or else both local
- * <li>the set of operations in interface A is the same as or is a subset of the set of operations in
- * interface B
- * <li>compatibility for individual operations of the interfaces A and B is defined as compatibility
- * of the signature, i.e., the operation name, the input types, and the output types are the same
- * <li>the order of the input and output types for each operation in interface A is the same as the
- * order of the input and output types for the corresponding operation in interface B
- * <li>the set of Faults and Exceptions expected by each operation in interface A is the same as or is
- * a superset of the set of Faults and Exceptions specified by the corresponding operation in interface B
- * <li>for checking the compatibility of 2 remotable interfaces which are in different interface
- * languages, both are mapped to WSDL 1.1 (if not already WSDL 1.1) and compatibility checking is done
- * between the WSDL 1.1 mapped interfaces.<br>
- * For checking the compatibility of 2 local interfaces which are in different interface languages, the
- * method of checking compatibility is defined by the specifications which define those interface types,
- * which must define mapping rules for the 2 interface types concerned.
- *
- * </ol>
- *
- * <b>The callback interfaces are not considered her.</b>
- *
- * @param source The source interface
- * @param target The target interface
- * @return true if the source interface is a compatible subset of the target interface
- */
- boolean isCompatibleSubset(Interface source, Interface target);
-
- /**
- * An interface A is a Compatible Subset of a second interface B if and only if all of points 1 through 7
- * in the following list apply:
- * <ol>
- * <li>interfaces A and B are either both remotable or else both local
- * <li>the set of operations in interface A is the same as or is a subset of the set of operations in
- * interface B
- * <li>compatibility for individual operations of the interfaces A and B is defined as compatibility
- * of the signature, i.e., the operation name, the input types, and the output types are the same
- * <li>the order of the input and output types for each operation in interface A is the same as the
- * order of the input and output types for the corresponding operation in interface B
- * <li>the set of Faults and Exceptions expected by each operation in interface A is the same as or is
- * a superset of the set of Faults and Exceptions specified by the corresponding operation in interface B
- * <li>for checking the compatibility of 2 remotable interfaces which are in different interface
- * languages, both are mapped to WSDL 1.1 (if not already WSDL 1.1) and compatibility checking is done
- * between the WSDL 1.1 mapped interfaces.<br>
- * For checking the compatibility of 2 local interfaces which are in different interface languages, the
- * method of checking compatibility is defined by the specifications which define those interface types,
- * which must define mapping rules for the 2 interface types concerned.
- * <li>if either interface A or interface B declares a callback interface then both interface
- * A and interface B declare callback interfaces and the callback interface declared on interface B is a
- * compatible subset of the callback interface declared on interface A, according to points 1 through 6
- * above
- * </ol>
- *
- * @param source The source interface contract
- * @param target The target interface contract
- * @return true if the source interface contract is a compatible subset of the target interface contract
- */
- boolean isCompatibleSubset(InterfaceContract source, InterfaceContract target);
- /*
- * the variant of isCompatibleSubset with the audit parameter is intended to supersed the other
- * -- the presence of both indicates a partial development state
- */
- boolean isCompatibleSubset(InterfaceContract source, InterfaceContract target, Audit audit);
-
- /**
- * Check that two interfaces are mutually compatible. The interfaces are mutually compatible if the two
- * interfaces have the same set of operations, with each operation having the same signature (name, input
- * types, output types and fault/exception types).
- *
- * @param source an interface
- * @param target a second interface
- * @return true if the two interfaces are mutually compatible, otherwise return false
- */
- public boolean isMutuallyCompatible(Interface source, Interface target);
-
- /**
- * An interface A is Compatible with a second interface B if and only if all of points 1 through 7 in the
- * following list apply:<p>
- * <ol>
- * <li>interfaces A and B are either both remotable or else both local
- * <li>the set of operations in interface A is the same as the set of operations in interface B
- * <li>compatibility for individual operations of the interfaces A and B is defined as compatibility
- * of the signature, i.e., the operation name, the input types, and the output types are the same
- * <li>the order of the input and output types for each operation in interface A is the same as the
- * order of the input and output types for the corresponding operation in interface B
- * <li>the set of Faults and Exceptions expected by each operation in interface A is the
- * same as the set of Faults and Exceptions specified by the corresponding operation in interface B
- * <li>for checking the compatibility of 2 remotable interfaces which are in different interface
- * languages, both are mapped to WSDL 1.1 (if not already WSDL 1.1) and compatibility checking is done
- * between the WSDL 1.1 mapped interfaces.
- * <br>For checking the compatibility of 2 local interfaces which are in different interface languages,
- * the method of checking compatibility is defined by the specifications which define those interface types,
- * which must define mapping rules for the 2 interface types concerned.
- * <li>if either interface A or interface B declares a callback interface then both interface
- * A and interface B declare callback interfaces and the callback interface declared on interface A is
- * compatible with the callback interface declared on interface B, according to points 1 through 6 above
- *
- * @param source - the source interface contract
- * @param target - the target interface contract
- * @return true if the source and target interface contracts are mutually compatible
- */
- boolean isMutuallyCompatible(InterfaceContract source, InterfaceContract target);
-
- /**
- * Map the source operation to a compatible operation in the target interface
- *
- * @param target The target interface
- * @param source The source operation
- * @return A compatible operation if the target interface is compatible superset of the source interface
- */
- Operation map(Interface target, Operation source);
-
-}
diff --git a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/interfacedef/InvalidAnnotationException.java b/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/interfacedef/InvalidAnnotationException.java
deleted file mode 100644
index db1d5f7fd7..0000000000
--- a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/interfacedef/InvalidAnnotationException.java
+++ /dev/null
@@ -1,40 +0,0 @@
-/*
- * 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.interfacedef;
-
-/**
- *
- * @tuscany.spi.extension.asclient
- *
- */
-public class InvalidAnnotationException extends InvalidInterfaceException {
-
- private static final long serialVersionUID = 4923028138353415223L;
- private final Class<?> clazz;
-
- public InvalidAnnotationException(String message, Class<?> clazz) {
- super(message);
- this.clazz = clazz;
- }
-
- public Class<?> getAnnotation() {
- return clazz;
- }
-}
diff --git a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/interfacedef/InvalidCallbackException.java b/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/interfacedef/InvalidCallbackException.java
deleted file mode 100644
index 392e81a8fa..0000000000
--- a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/interfacedef/InvalidCallbackException.java
+++ /dev/null
@@ -1,35 +0,0 @@
-/*
- * 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.interfacedef;
-
-
-/**
- * Denotes an illegal callback interface
- *
- * @version $Rev$ $Date$
- * @tuscany.spi.extension.asclient
- */
-
-public class InvalidCallbackException extends InvalidInterfaceException {
- private static final long serialVersionUID = 2727755895702116397L;
-
- public InvalidCallbackException(String message) {
- super(message);
- }
-}
diff --git a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/interfacedef/InvalidInterfaceException.java b/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/interfacedef/InvalidInterfaceException.java
deleted file mode 100644
index 0cac606e1a..0000000000
--- a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/interfacedef/InvalidInterfaceException.java
+++ /dev/null
@@ -1,43 +0,0 @@
-/*
- * 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.interfacedef;
-
-/**
- * @version $Rev$ $Date$
- * @tuscany.spi.extension.inheritfrom
- */
-public abstract class InvalidInterfaceException extends Exception {
- private static final long serialVersionUID = -3850574026273544538L;
-
- public InvalidInterfaceException() {
- super();
- }
-
- public InvalidInterfaceException(String message) {
- super(message);
- }
-
- public InvalidInterfaceException(String message, Throwable cause) {
- super(message, cause);
- }
-
- public InvalidInterfaceException(Throwable cause) {
- super(cause);
- }
-}
diff --git a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/interfacedef/InvalidOperationException.java b/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/interfacedef/InvalidOperationException.java
deleted file mode 100644
index 2e82c201d9..0000000000
--- a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/interfacedef/InvalidOperationException.java
+++ /dev/null
@@ -1,43 +0,0 @@
-/*
- * 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.interfacedef;
-
-import java.lang.reflect.Method;
-
-/**
- * Denotes an invalid conversational interface definition
- *
- * @version $Rev$ $Date$
- * @tuscany.spi.extension.asclient
- */
-public class InvalidOperationException extends InvalidInterfaceException {
-
- private static final long serialVersionUID = -1797615361821517091L;
- private final Method operation;
-
- public InvalidOperationException(String message, Method operation) {
- super(message);
- this.operation = operation;
- }
-
- public Method getOperation() {
- return operation;
- }
-
-}
diff --git a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/interfacedef/Operation.java b/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/interfacedef/Operation.java
deleted file mode 100644
index 100387ce30..0000000000
--- a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/interfacedef/Operation.java
+++ /dev/null
@@ -1,272 +0,0 @@
-/*
- * 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.interfacedef;
-
-import java.util.List;
-import java.util.Map;
-
-import javax.xml.namespace.QName;
-
-import org.apache.tuscany.sca.interfacedef.util.WrapperInfo;
-import org.apache.tuscany.sca.interfacedef.util.XMLType;
-import org.apache.tuscany.sca.policy.PolicySubject;
-
-/**
- * Represents an operation on a service interface.
- *
- * @version $Rev$ $Date$
- * @tuscany.spi.extension.inheritfrom
- */
-public interface Operation extends Cloneable, PolicySubject {
- /**
- * Returns the name of the operation.
- *
- * @return the name of the operation
- */
- String getName();
-
- /**
- * Sets the name of the operation.
- *
- * @param name the name of the operation
- */
- void setName(String name);
-
- /**
- * Returns true if the model element is unresolved.
- *
- * @return true if the model element is unresolved.
- */
- boolean isUnresolved();
-
- /**
- * Sets whether the model element is unresolved.
- *
- * @param unresolved whether the model element is unresolved
- */
- void setUnresolved(boolean unresolved);
-
- /**
- * Get the data type that represents the input of this operation. The logic
- * type is a list of data types and each element represents a parameter
- *
- * @return the inputType
- */
- DataType<List<DataType>> getInputType();
-
- /**
- * @param inputType
- */
- void setInputType(DataType<List<DataType>> inputType);
-
- /**
- * Get the data type for the output
- *
- * @return the outputType
- */
- DataType<List<DataType>> getOutputType();
- /**
- * @param outputType
- */
- void setOutputType(DataType<List<DataType>> outputType);
-
- /**
- * Get a list of data types to represent the faults/exceptions
- *
- * @return the faultTypes
- */
- List<DataType> getFaultTypes();
-
- /**
- * @param faultTypes
- */
- void setFaultTypes(List<DataType> faultTypes);
-
- /**
- * Get the owning interface
- * @return
- */
- Interface getInterface();
-
- /**
- * Set the owning interface
- * @param interfaze
- */
- void setInterface(Interface interfaze);
-
- /**
- * Indicate if the operation is non-blocking
- * @return
- */
- boolean isNonBlocking();
-
- /**
- * Indicate if the operation is an async server operation
- * @return - true if the operation is an async server operation
- */
- boolean isAsyncServer();
-
- /**
- * Set the operation to be non-blocking
- */
- void setNonBlocking(boolean nonBlocking);
-
- /**
- * @return the wrapperInfo
- */
- WrapperInfo getInputWrapper();
-
- /**
- * @param wrapperInfo the wrapperInfo to set
- */
- void setInputWrapper(WrapperInfo wrapperInfo);
-
- /**
- * @return the wrapperInfo
- */
- WrapperInfo getOutputWrapper();
-
- /**
- * @param wrapperInfo the wrapperInfo to set
- */
- void setOutputWrapper(WrapperInfo wrapperInfo);
-
- /**
- * @return the wrapperStyle
- */
- boolean isInputWrapperStyle();
-
- /**
- * @param wrapperStyle the wrapperStyle to set
- */
- void setInputWrapperStyle(boolean wrapperStyle);
-
- /**
- * @return the wrapperStyle
- */
- boolean isOutputWrapperStyle();
-
- /**
- * @param wrapperStyle the wrapperStyle to set
- */
- void setOutputWrapperStyle(boolean wrapperStyle);
-
- /**
- * @deprecated This should be the WrapperInfo.getDataBinding()
- * Get the databinding for the operation
- * @return
- */
- @Deprecated
- String getDataBinding();
-
- /**
- * @deprecated This should be the WrapperInfo.setDataBinding()
- * Set the databinding for the operation
- * @param dataBinding
- */
- @Deprecated
- void setDataBinding(String dataBinding);
-
- /**
- * Returns true if the operation is dynamic.
- *
- * @return true if the operation is dynamic otherwise false
- */
- boolean isDynamic();
-
- /**
- * Set if the operation is dynamic
- * @param b
- */
- void setDynamic(boolean b);
-
- /**
- * Get the synthesized fault beans for this operation
- *
- * @return the fault beans
- */
- Map<QName, List<DataType<XMLType>>> getFaultBeans();
-
- /**
- * Set the synthesized fault beans for this operation
- * @param faultBeans
- */
- void setFaultBeans(Map<QName, List<DataType<XMLType>>> faultBeans);
-
- /**
- * Get a map of attributes assoicated with the operation
- * @return A map of attributes
- */
- Map<Object, Object> getAttributes();
-
- /**
- * Implementations must support cloning.
- */
- Object clone() throws CloneNotSupportedException;
-
- /**
- * Returns the ParameterModes
- * @return
- */
- List<ParameterMode> getParameterModes();
-
- /**
- * Returns whether the operation's outputs will flow wrapped in an array
- * or not. (Needed to distinguish whether an array represents a single output
- * or if it wrappers multiple outputs).
- *
- * @return
- */
- public boolean hasArrayWrappedOutput();
-
- /**
- * Sets whether the operation's outputs will flow wrapped in an array
- * or not. (Needed to distinguish whether an array represents a single output
- * or if it wrappers multiple outputs).
- * @param value
- */
- public void setHasArrayWrappedOutput(boolean value);
-
- /**
- * Sets whether operation data is not subject to wrapping along with
- * a data transformation.
- * @param notSubjectToWrapping
- */
- public void setNotSubjectToWrapping(boolean notSubjectToWrapping);
-
- /**
- * Returns whether operation data is not subject to wrapping along with
- * a data transformation.
- * @return
- */
- public boolean isNotSubjectToWrapping();
-
- /**
- * A special databinding for input message of an operation
- */
- String IDL_INPUT = "idl:input";
- /**
- * A special databinding for output message of an operation
- */
- String IDL_OUTPUT = "idl:output";
- /**
- * A special databinding for fault message of an operation
- */
- String IDL_FAULT = "idl:fault";
-}
diff --git a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/interfacedef/OverloadedOperationException.java b/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/interfacedef/OverloadedOperationException.java
deleted file mode 100644
index 92ac0850e7..0000000000
--- a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/interfacedef/OverloadedOperationException.java
+++ /dev/null
@@ -1,46 +0,0 @@
-/*
- * 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.interfacedef;
-
-import java.lang.reflect.Method;
-
-/**
- * Exception thrown to indicate that a service contract specification contains
- * an overloaded method.
- *
- * @version $Rev$ $Date$
- * @tuscany.spi.extension.asclient
- */
-public class OverloadedOperationException extends InvalidInterfaceException {
- private static final long serialVersionUID = -4658711318608885638L;
- private final Method operation;
-
- public OverloadedOperationException(Method operation) {
- super(operation == null ?
- null : "[JCA20001] Cannot overload operation " + operation.getName()
- + " on " + operation.getDeclaringClass().getName()
- + " as it is a @Remotable interface");
- this.operation = operation;
- }
-
- public Method getOperation() {
- return operation;
- }
-
-}
diff --git a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/interfacedef/ParameterMode.java b/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/interfacedef/ParameterMode.java
deleted file mode 100644
index c4244a3480..0000000000
--- a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/interfacedef/ParameterMode.java
+++ /dev/null
@@ -1,28 +0,0 @@
-/*
- * 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.interfacedef;
-
-/**
- * Parameter mode
- * @see http://java.sun.com/javase/6/docs/api/javax/jws/WebParam.Mode.html
- */
-public enum ParameterMode {
- IN, OUT, INOUT;
-}
diff --git a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/interfacedef/impl/DataTypeImpl.java b/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/interfacedef/impl/DataTypeImpl.java
deleted file mode 100644
index 8d84e0352e..0000000000
--- a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/interfacedef/impl/DataTypeImpl.java
+++ /dev/null
@@ -1,242 +0,0 @@
-/*
- * 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.interfacedef.impl;
-
-import java.lang.ref.WeakReference;
-import java.lang.reflect.Type;
-import java.util.Map;
-import java.util.concurrent.ConcurrentHashMap;
-
-import org.apache.tuscany.sca.interfacedef.DataType;
-
-/**
- * Representation of the type of data associated with an operation. Data is
- * represented in two forms: the physical form used by the runtime and a logical
- * form used by the assembly. The physical form is a Java Type because the
- * runtime is written in Java. This may be the same form used by the application
- * but it may not; for example, an application that is performing stream
- * processing may want a physical form such as an
- * {@link java.io.InputStream InputStream} to semantically operate on application
- * data such as a purchase order. The logical description is that used by the
- * assembly model and is an identifier into some well-known type space; examples
- * may be a Java type represented by its Class or an XML type represented by its
- * QName. Every data type may also contain metadata describing the expected
- * data; for example, it could specify a preferred data binding technology or
- * the size of a typical instance.
- *
- * @version $Rev$ $Date$
- * @tuscany.spi.extension.asclient
- */
-public class DataTypeImpl<L> implements DataType<L> {
- private String dataBinding;
- private WeakReference<Class<?>> physical;
- private WeakReference<Type> genericType;
- private L logical;
- private Map<Class<?>, Object> metaDataMap;
-
- /**
- * Construct a data type specifying the physical and logical types.
- *
- * @param physical the physical class used by the runtime
- * @param logical the logical type
- * @see #getLogical()
- */
- public DataTypeImpl(Class<?> physical, L logical) {
- this(null, physical, physical, logical);
- }
-
- /**
- * @param dataBinding
- * @param physical
- * @param logical
- */
- public DataTypeImpl(String dataBinding, Class<?> physical, L logical) {
- this(dataBinding, physical, physical, logical);
- }
-
- /**
- * @param dataBinding
- * @param physical
- * @param genericType
- * @param logical
- */
- public DataTypeImpl(String dataBinding, Class<?> physical, Type genericType, L logical) {
- super();
- this.dataBinding = dataBinding;
- this.physical = new WeakReference<Class<?>>(physical);
- this.genericType = new WeakReference<Type>(genericType);
- this.logical = logical;
- }
-
- /**
- * Returns the physical type used by the runtime.
- *
- * @return the physical type used by the runtime
- */
- public Class<?> getPhysical() {
- return physical.get();
- }
-
- /**
- * @param physical the physical to set
- */
- public void setPhysical(Class<?> physical) {
- this.physical = new WeakReference<Class<?>>(physical);
- }
-
- /**
- * Get the java generic type
- * @return The java generic type
- */
- public Type getGenericType() {
- return genericType.get();
- }
-
- /**
- * Set the java generic type
- * @param genericType
- */
- public void setGenericType(Type genericType) {
- this.genericType = new WeakReference<Type>(genericType);
- }
-
- /**
- * Returns the logical identifier used by the assembly. The type of this
- * value identifies the logical type system in use. Known values are:
- * <ul>
- * <li>a java.lang.reflect.Type identifies a Java type by name and
- * ClassLoader; this includes Java Classes as they are specializations of
- * Type</li>
- * <li>a javax.xml.namespace.QName identifies an XML type by local name and
- * namespace</li>
- * </ul>
- *
- * @return the logical type name
- */
- public L getLogical() {
- return logical;
- }
-
- /**
- * @param logical the logical to set
- */
- public void setLogical(L logical) {
- this.logical = logical;
- }
-
- public String getDataBinding() {
- return dataBinding;
- }
-
- /**
- * @param dataBinding the dataBinding to set
- */
- public void setDataBinding(String dataBinding) {
- this.dataBinding = dataBinding;
- }
-
-
- @Override
- public String toString() {
- StringBuilder b = new StringBuilder( 256 );
- b.append( "DataType[" );
- b.append( "dataBinding=" + ((dataBinding==null) ? "null" : dataBinding) );
- b.append( ", genericType=" + ((genericType==null || genericType.get() == null) ? "null" : genericType) );
- b.append( ", physical=" + ((physical==null || physical.get() == null) ? "null" : physical) );
- b.append( ", logical=" + ((logical==null) ? "null" : logical) );
- b.append( ", metaData size=" + ((metaDataMap==null) ? "0" : metaDataMap.size()) );
- b.append( "]" );
- return b.toString();
- }
-
- @SuppressWarnings("unchecked")
- @Override
- public Object clone() throws CloneNotSupportedException {
- DataTypeImpl copy = (DataTypeImpl)super.clone();
-
- //
- // When using a DataTypeImpl with java:array databinding,
- // 'logical' will be another DataTypeImpl. Doing only
- // a shallow copy means that resetting the databinding will
- // have an unexpected side effect on the original. Though
- // we could special case the java:array-databinding case,
- // instead do it more generally when the logical is another
- // DataType.
- //
- if (logical instanceof DataType) {
- DataType logicalDT = (DataType)logical;
- copy.logical = logicalDT.clone();
- }
- return copy;
- }
-
- @Override
- public int hashCode() {
- final int prime = 31;
- int result = 1;
- result = prime * result + ((dataBinding == null) ? 0 : dataBinding.hashCode());
- result = prime * result + ((genericType == null || genericType.get() == null) ? 0 : genericType.hashCode());
- result = prime * result + ((logical == null) ? 0 : logical.hashCode());
- result = prime * result + ((physical == null || physical.get() == null) ? 0 : physical.hashCode());
- return result;
- }
-
- @Override
- public boolean equals(Object obj) {
- if (this == obj)
- return true;
- if (obj == null)
- return false;
- if (getClass() != obj.getClass())
- return false;
- final DataTypeImpl other = (DataTypeImpl)obj;
- if (dataBinding == null) {
- if (other.dataBinding != null)
- return false;
- } else if (!dataBinding.equals(other.dataBinding))
- return false;
- if (genericType == null || genericType.get() == null) {
- if (other.genericType != null && other.genericType.get() != null)
- return false;
- } else if (!genericType.get().equals(other.genericType.get()))
- return false;
- if (logical == null) {
- if (other.logical != null)
- return false;
- } else if (!logical.equals(other.logical))
- return false;
- if (physical == null || physical.get() == null) {
- if (other.physical != null && other.physical.get() != null)
- return false;
- } else if (!physical.get().equals(other.physical.get()))
- return false;
- return true;
- }
-
- public <T> T getMetaData(Class<T> type) {
- return metaDataMap == null ? null : type.cast(metaDataMap.get(type));
- }
-
- public <T> void setMetaData(Class<T> type, T metaData) {
- if (metaDataMap == null) {
- metaDataMap = new ConcurrentHashMap<Class<?>, Object>();
- }
- metaDataMap.put(type, metaData);
- }
-}
diff --git a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/interfacedef/impl/InterfaceContractImpl.java b/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/interfacedef/impl/InterfaceContractImpl.java
deleted file mode 100644
index 692dc4743c..0000000000
--- a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/interfacedef/impl/InterfaceContractImpl.java
+++ /dev/null
@@ -1,142 +0,0 @@
-/*
- * 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.interfacedef.impl;
-
-import org.apache.tuscany.sca.interfacedef.Interface;
-import org.apache.tuscany.sca.interfacedef.InterfaceContract;
-
-/**
- * Represents an interface contract. InterfaceContractImpl
- *
- * @version $Rev$ $Date$
- * @tuscany.spi.extension.inheritfrom
- */
-public abstract class InterfaceContractImpl implements InterfaceContract {
- private Interface callInterface;
- private Interface callbackInterface;
-
- public Interface getCallbackInterface() {
- return callbackInterface;
- }
-
- public Interface getInterface() {
- return callInterface;
- }
-
- public void setCallbackInterface(Interface callbackInterface) {
- this.callbackInterface = callbackInterface;
- }
-
- public void setInterface(Interface callInterface) {
- this.callInterface = callInterface;
- }
-
- public InterfaceContract makeUnidirectional(boolean isCallback) {
- if (!isCallback && callbackInterface == null)
- return this; // already a unidirectional forward interface contract
-
- if (isCallback && callInterface == null)
- return this; // already a unidirectional callback interface contract
-
- // contract is bidirectional, so create a new unidirectional contract
- try {
- InterfaceContract newContract = clone();
- if (!isCallback) {
- newContract.setCallbackInterface(null); // create unidirectional forward interface contract
- } else {
- newContract.setInterface(null); // create unidirectional callback interface contract
- }
- return newContract;
- } catch (CloneNotSupportedException e) {
- // will not happen
- return null;
- }
- }
-
- @Override
- public InterfaceContractImpl clone() throws CloneNotSupportedException {
- InterfaceContractImpl copy = (InterfaceContractImpl)super.clone();
- if (this.callbackInterface != null) {
- copy.callbackInterface = (Interface)this.callbackInterface.clone();
- }
- if (this.callInterface != null) {
- copy.callInterface = (Interface)this.callInterface.clone();
- }
- return copy;
- }
-
- /**
- * @see java.lang.Object#hashCode()
- */
- @Override
- public int hashCode() {
- final int prime = 31;
- int result = 1;
- result = prime * result + ((callInterface == null) ? 0 : callInterface.hashCode());
- result = prime * result + ((callbackInterface == null) ? 0 : callbackInterface.hashCode());
- return result;
- }
-
- /**
- * @see java.lang.Object#equals(java.lang.Object)
- */
- @Override
- public boolean equals(Object obj) {
- if (this == obj) {
- return true;
- }
- if (obj == null) {
- return false;
- }
- if (getClass() != obj.getClass()) {
- return false;
- }
- final InterfaceContractImpl other = (InterfaceContractImpl)obj;
- if (callInterface == null) {
- if (other.callInterface != null) {
- return false;
- }
- } else if (!callInterface.equals(other.callInterface)) {
- return false;
- }
- if (callbackInterface == null) {
- if (other.callbackInterface != null) {
- return false;
- }
- } else if (!callbackInterface.equals(other.callbackInterface)) {
- return false;
- }
- return true;
- }
-
- // By default there is no normalized contract
- // as only Java needs it
- public InterfaceContract getNormalizedWSDLContract() {
- return null;
- }
-
- // By default there is no normalized contract
- // as only Java needs it
- public void setNormalizedWSDLContract(
- InterfaceContract wsdlInterfaceContract) {
- // do nothing
- }
-
-}
diff --git a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/interfacedef/impl/InterfaceContractMapperImpl.java b/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/interfacedef/impl/InterfaceContractMapperImpl.java
deleted file mode 100644
index d04c8b4d97..0000000000
--- a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/interfacedef/impl/InterfaceContractMapperImpl.java
+++ /dev/null
@@ -1,594 +0,0 @@
-/*
- * 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.interfacedef.impl;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import javax.xml.namespace.QName;
-
-import org.apache.tuscany.sca.assembly.builder.BuilderExtensionPoint;
-import org.apache.tuscany.sca.assembly.builder.ContractBuilder;
-import org.apache.tuscany.sca.core.ExtensionPointRegistry;
-import org.apache.tuscany.sca.interfacedef.Compatibility;
-import org.apache.tuscany.sca.interfacedef.DataType;
-import org.apache.tuscany.sca.interfacedef.IncompatibleInterfaceContractException;
-import org.apache.tuscany.sca.interfacedef.Interface;
-import org.apache.tuscany.sca.interfacedef.InterfaceContract;
-import org.apache.tuscany.sca.interfacedef.InterfaceContractMapper;
-import org.apache.tuscany.sca.interfacedef.Operation;
-import org.apache.tuscany.sca.interfacedef.util.Audit;
-import org.apache.tuscany.sca.interfacedef.util.XMLType;
-import org.apache.tuscany.sca.policy.ExtensionType;
-
-/**
- * @version $Rev$ $Date$
- */
-public class InterfaceContractMapperImpl implements InterfaceContractMapper {
-
- protected ExtensionPointRegistry registry;
- protected BuilderExtensionPoint builders;
- protected ContractBuilder contractBuilder;
-
- public InterfaceContractMapperImpl(ExtensionPointRegistry registry){
- this.registry = registry;
- this.builders = registry.getExtensionPoint(BuilderExtensionPoint.class);
- }
-
- public boolean isCompatible(DataType source, DataType target, boolean passByValue) {
- return isCompatible(source, target, passByValue, null);
- }
-
- public boolean isCompatible(DataType source, DataType target, boolean passByValue, Audit audit) {
- if (source == target) {
- return true;
- }
- if (!passByValue) {
- if (source == null || target == null) {
- if (audit != null){
- audit.append("One of either the source or target data types is null for");
- }
- return false;
- }
- // For local case
- return target.getPhysical().isAssignableFrom(source.getPhysical());
- } else {
- // For remote interfaces where the target is represented with WSDL
- // the source will have been converted to WSDL so we rely on JAXB mappings
- // being the same in both cases and just compare the type names directly.
- // TODO - is this right?
- XMLType sourceLogicalType = null;
-
- // There is some nesting of data types (when GeneratedDataTypes or arrays are used) so
- // dig a bit deeper to find the real data type. Use a loop since for a multidimensional
- // array, we might need to go more than one level deep.
- while (source.getLogical() instanceof DataType<?>) {
- source = (DataType<?>)source.getLogical();
- }
- sourceLogicalType = (XMLType)source.getLogical();
-
- XMLType targetLogicalType = null;
- while (target.getLogical() instanceof DataType<?>) {
- target = (DataType<?>)target.getLogical();
- }
- targetLogicalType = (XMLType)target.getLogical();
-
- // The logical type is null in some cases. This is when the
- // runtime can't determine the XML type for a particular type, for
- // example for a non-JAXB Java bean. This makes interface checking
- // rather lenient with errors being detected at runtime
- if (sourceLogicalType.getTypeName() == null ||
- targetLogicalType.getTypeName() == null) {
- return true;
- }
-
- boolean match = sourceLogicalType.getTypeName().equals(targetLogicalType.getTypeName());
-
- if (!match){
-
- QName anyType = new QName("http://www.w3.org/2001/XMLSchema", "anyType");
- if (sourceLogicalType.getTypeName().equals(anyType) ||
- targetLogicalType.getTypeName().equals(anyType)){
- // special case where a Java interface uses a generic type, e.g.
- // public OMElement getGreetings(OMElement om)
- // while the provided WSDL uses a specific type. So we assume
- // that xsd:anyType matched anything
- match = true;
- } else {
- if (audit != null){
- audit.append("Operation argument types source = " +
- sourceLogicalType.getTypeName() +
- " target = " +
- targetLogicalType.getTypeName() +
- " don't match for");
- }
- }
- }
-
- return match;
- }
-
- }
-
- /**
- * Check that two interface contracts are equal. The contracts are equal if the two contracts have the
- * same set of operations, with each operation having the same signature, both for forward and callback
- * interfaces
- * @param source
- * @param target
- * @return
- */
- public boolean isMutuallyCompatible(InterfaceContract source, InterfaceContract target) {
- ExtensionType ext = source.getInterface().getExtensionType();
- InterfaceContract sourceContract = null;
-
- // Are the forward interfaces equal?
- if (isMutuallyCompatible(source.getInterface(), target.getInterface())) {
- // Is there a Callback interface?
- if (source.getCallbackInterface() == null && target.getCallbackInterface() == null) {
- return true;
- } else {
- if (isMutuallyCompatible(source.getCallbackInterface(), target.getCallbackInterface())) {
- return true;
- } // end if
- } // end if
- } // end if
- return false;
- } // end method isEqual
-
- /**
- * Check that two interfaces are equal. The interfaces are equal if the two interfaces have the
- * same set of operations, with each operation having the same signature.
- * @param source
- * @param target
- * @return
- */
- public boolean isMutuallyCompatible(Interface source, Interface target) {
- if (source == target) {
- // Shortcut for performance
- return true;
- } // end if
- if (source == null || target == null) {
- return false;
- } // end if
-
- if (source.isDynamic() || target.isDynamic()) {
- return true;
- }
-
- if (source.isRemotable() != target.isRemotable()) {
- return false;
- }
- if (source.getOperations().size() != target.getOperations().size()) {
- return false;
- }
-
- for (Operation operation : source.getOperations()) {
- Operation targetOperation = getOperation(target.getOperations(), operation.getName());
- if (targetOperation == null) {
- return false;
- }
- if (!isCompatible(operation, targetOperation, Compatibility.SUBSET)) {
- return false;
- }
- }
- return true;
- } // end method isEqual
-
- public boolean isCompatible(Operation source, Operation target, Compatibility compatibilityType) {
- return isCompatible(source, target, compatibilityType, true);
- }
-
- public boolean isCompatible(Operation source, Operation target, Compatibility compatibilityType, boolean byValue) {
- return isCompatible(source, target, compatibilityType, true, null);
- }
-
- public boolean isCompatible(Operation source, Operation target, Compatibility compatibilityType, boolean byValue, Audit audit) {
- if (source == target) {
- return true;
- }
-
- if (source.isDynamic() || target.isDynamic()) {
- return true;
- }
-
- // Check name
- if (!source.getName().equals(target.getName())) {
- if (audit != null){
- audit.append("operation names are not the same source = " +
- source.getName() +
- " target = " +
- target.getName());
- audit.appendSeperator();
- }
- return false;
- }
-
- if (source.getInterface().isRemotable() != target.getInterface().isRemotable()) {
- if (audit != null){
- audit.append("Interfaces have different remote settings source = " +
- source.getName() +
- " target = " +
- target.getName());
- audit.appendSeperator();
- }
- return false;
- }
-
- if (source.isNonBlocking() != target.isNonBlocking()) {
- if (audit != null){
- audit.append("operations one-way not the same, source = " +
- source.isNonBlocking() +
- " target = " +
- target.isNonBlocking());
- audit.appendSeperator();
- }
- return false;
- }
-
- boolean passByValue = (source.getInterface().isRemotable()) && byValue;
-
- // FIXME: We need to deal with wrapped<-->unwrapped conversion
-
- List<DataType> sourceOutputType = source.getOutputType().getLogical();
- List<DataType> targetOutputType = target.getOutputType().getLogical();
-
- List<DataType> sourceInputType = source.getInputType().getLogical();
- List<DataType> targetInputType = target.getInputType().getLogical();
-
- if (source.isInputWrapperStyle() && source.getInputWrapper() != null) {
- sourceInputType = source.getInputWrapper().getUnwrappedType().getLogical();
- }
-
- if (source.isOutputWrapperStyle() && source.getOutputWrapper() != null) {
- sourceOutputType = source.getOutputWrapper().getUnwrappedType().getLogical();
- }
-
- if (target.isInputWrapperStyle() && target.getInputWrapper() != null) {
- targetInputType = target.getInputWrapper().getUnwrappedType().getLogical();
- }
-
- if (target.isOutputWrapperStyle() && target.getOutputWrapper() != null) {
- targetOutputType = target.getOutputWrapper().getUnwrappedType().getLogical();
- }
-
- if ( sourceOutputType.size() != targetOutputType.size()) {
- if (audit != null){
- audit.append("different number of output types");
- audit.appendSeperator();
- }
- return false;
- }
-
- for ( int i=0; i < sourceOutputType.size(); i++) {
- if (!isCompatible(targetOutputType.get(i), sourceOutputType.get(i), passByValue, audit)) {
- if (audit != null){
- audit.append(" output types");
- audit.appendSeperator();
- }
- return false;
- }
- }
-
- if (sourceInputType.size() != targetInputType.size()) {
- if (audit != null){
- audit.append("different number of input types");
- audit.appendSeperator();
- }
- return false;
- }
-
- int size = sourceInputType.size();
- for (int i = 0; i < size; i++) {
- if (!isCompatible(sourceInputType.get(i), targetInputType.get(i), passByValue, audit)) {
- if (audit != null){
- audit.append(" input types");
- audit.appendSeperator();
- }
- return false;
- }
- }
-
- // Check fault types
- for (DataType targetFaultType : target.getFaultTypes()) {
- // Source fault types must be the same or superset of target fault
- // types
- boolean found = true;
- for (DataType sourceFaultType : source.getFaultTypes()) {
- found = false;
- if (isCompatible(targetFaultType, sourceFaultType, passByValue, audit)) {
- // Target fault type can be covered by the source fault type
- found = true;
- break;
- }
- }
- if (!found) {
- if (audit != null){
- audit.append("Fault types incompatible");
- audit.appendSeperator();
- }
- return false;
- }
- }
-
- return true;
- }
- public boolean isCompatibleByReference(Operation source, Operation target, Compatibility compatibilityType) {
- return isCompatible(source, target, compatibilityType, false);
- }
-
- public boolean isCompatibleByValue(Operation source, Operation target, Compatibility compatibilityType) {
- return isCompatible(source, target, compatibilityType, true);
- }
-
- @Override
- public boolean isCompatibleWithoutUnwrapByValue(Operation source, Operation target, Compatibility compatibilityType) {
- if (!source.isInputWrapperStyle() == target.isInputWrapperStyle()) {
- return false;
- } else if (!source.isOutputWrapperStyle() == target.isOutputWrapperStyle()) {
- return false;
- } else {
- return isCompatible(source, target, compatibilityType, true);
- }
- }
-
- // FIXME: How to improve the performance for the lookup
- private Operation getOperation(List<Operation> operations, String name) {
- for (Operation op : operations) {
- if (op.getName().equals(name)) {
- return op;
- }
- }
- return null;
- }
-
- /*
- * this variant of the checkCompatibility method is intended to supersede the one without an audit argument
- * Presence of both method variants indicates a state of partial development
- */
- public boolean checkCompatibility(InterfaceContract source,
- InterfaceContract target,
- Compatibility compatibility,
- boolean ignoreCallback,
- boolean silent,
- Audit audit)
- throws IncompatibleInterfaceContractException {
-
- if (source == target) {
- // Shortcut for performance
- return true;
- }
-
- if (source == null || target == null) {
- return false;
- }
-
- if (source.getInterface() == target.getInterface()) {
- return ignoreCallback
- || isCallbackCompatible(source, target, silent, audit);
- }
-
- if (source.getInterface() == null || target.getInterface() == null) {
- return false;
- }
-
- if (source.getInterface().isDynamic()
- || target.getInterface().isDynamic()) {
- return ignoreCallback
- || isCallbackCompatible(source, target, silent, audit);
- }
-
- if (source.getInterface().isRemotable() != target.getInterface()
- .isRemotable()) {
- if (!silent) {
- audit.append("Remotable settings do not match: "+ source + "," + target); // TODO see if serialization is sufficient
- audit.appendSeperator();
- throw new IncompatibleInterfaceContractException(
- "Remotable settings do not match", source, target);
-
- } else {
- return false;
- }
- }
-
- for (Operation operation : source.getInterface().getOperations()) {
- Operation targetOperation = map(target.getInterface(), operation);
- if (targetOperation == null) {
- if (!silent) {
- audit.append("Operation " + operation.getName()+ " not found on target");
- audit.appendSeperator();
- throw new IncompatibleInterfaceContractException(
- "Operation " + operation.getName()
- + " not found on target", source, target);
- } else {
- return false;
- }
- }
-
- if (!silent) {
- if (audit == null)
- audit = new Audit();
- if (!isCompatible(operation, targetOperation,
- Compatibility.SUBSET, true, audit)) {
- audit.append("Operations called " + operation.getName()+ " are not compatible");
- audit.appendSeperator();
- throw new IncompatibleInterfaceContractException(
- "Operations called " + operation.getName()
- + " are not compatible " + audit, source,
- target);
- }
- } else {
- if (!isCompatible(operation, targetOperation,
- Compatibility.SUBSET)) {
- return false;
- }
- }
- }
-
- return ignoreCallback || isCallbackCompatible(source, target, silent, audit);
- }
-
- /*
- * The old checkCompatibility operation without auditing. This just delegates to the new one for the time
- * being while there are still calls that don't provide and audit object. In the medium term when the calls have
- * been converted to sue the new opetion directly this should be removed.
- */
- public boolean checkCompatibility(InterfaceContract source,
- InterfaceContract target,
- Compatibility compatibility,
- boolean ignoreCallback,
- boolean silent)
- throws IncompatibleInterfaceContractException {
-
- // create dummy audit object.
- Audit audit = new Audit();
-
- return checkCompatibility(source,
- target,
- compatibility,
- ignoreCallback,
- silent,
- audit);
- }
-
-
-
- protected boolean isCallbackCompatible(InterfaceContract source, InterfaceContract target, boolean silent, Audit audit)
- throws IncompatibleInterfaceContractException {
- if (source.getCallbackInterface() == null && target.getCallbackInterface() == null) {
- return true;
- }
- if (source.getCallbackInterface() == null || target.getCallbackInterface() == null) {
- if (!silent) {
- audit.append("Callback interface doesn't match as one of the callback interfaces is null");
- audit.appendSeperator();
- throw new IncompatibleInterfaceContractException("Callback interface doesn't match as one of the callback interfaces is null", source, target);
- } else {
- return false;
- }
- }
-
- for (Operation operation : source.getCallbackInterface().getOperations()) {
- Operation targetOperation =
- getOperation(target.getCallbackInterface().getOperations(), operation.getName());
- if (targetOperation == null) {
- if (!silent) {
- audit.append("Callback operation not found on target " + operation.getName());
- audit.appendSeperator();
- throw new IncompatibleInterfaceContractException("Callback operation not found on target", source,
- target, null, targetOperation);
- } else {
- return false;
- }
- }
- if (!source.getCallbackInterface().isRemotable()) {
- // FIXME: for remotable operation, only compare name for now
- if (!operation.equals(targetOperation)) {
- if (!silent) {
- audit.append("Target callback operation is not compatible " + operation.getName());
- audit.appendSeperator();
- throw new IncompatibleInterfaceContractException("Target callback operation is not compatible",
- source, target, operation, targetOperation);
- } else {
- return false;
- }
- }
- }
- }
- return true;
- }
-
- public boolean isCompatibleSubset(Interface source, Interface target) {
- if (source == target) {
- // Shortcut for performance
- return true;
- }
- if (source == null || target == null) {
- return false;
- }
-
- if (source.isDynamic() || target.isDynamic()) {
- return true;
- }
-
- if (source.isRemotable() != target.isRemotable()) {
- return false;
- }
-
- for (Operation operation : source.getOperations()) {
- Operation targetOperation = getOperation(target.getOperations(), operation.getName());
- if (targetOperation == null) {
- return false;
- }
- if (!isCompatible(operation, targetOperation, Compatibility.SUBSET)) {
- return false;
- }
- }
- return true;
- }
-
- /*
- * the variant of isCompatibleSubset with the audit parameter is intended to supersede the other
- * -- the presence of both indicates a partial development state
- */
- public boolean isCompatibleSubset(InterfaceContract source, InterfaceContract target, Audit audit) {
-
- try {
- return checkCompatibility(source, target, Compatibility.SUBSET, false, false, audit);
- } catch (IncompatibleInterfaceContractException e) {
- return false;
- }
- }
-
- public boolean isCompatibleSubset(InterfaceContract source, InterfaceContract target) {
-
- try {
- return checkCompatibility(source, target, Compatibility.SUBSET, false, false);
- } catch (IncompatibleInterfaceContractException e) {
- return false;
- }
- }
-
- /**
- * @see org.apache.tuscany.sca.interfacedef.InterfaceContractMapper#map(org.apache.tuscany.sca.interfacedef.Interface,
- * org.apache.tuscany.sca.interfacedef.Operation)
- */
- public Operation map(Interface target, Operation source) {
- // TODO: How to handle the case that source operation is dynamic?
- if (target == null || target.isDynamic()) {
- return source;
- } else if (target.isRemotable()) {
- for (Operation op : target.getOperations()) {
- if (op.getName().equals(source.getName())) {
- return op;
- }
- }
- return null;
- } else {
- for (Operation op : target.getOperations()) {
- if (isCompatible(source, op, Compatibility.SUBSET)) {
- return op;
- }
- }
- return null;
- }
- }
-
-}
diff --git a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/interfacedef/impl/InterfaceImpl.java b/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/interfacedef/impl/InterfaceImpl.java
deleted file mode 100644
index 01ad56117c..0000000000
--- a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/interfacedef/impl/InterfaceImpl.java
+++ /dev/null
@@ -1,359 +0,0 @@
-/*
- * 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.interfacedef.impl;
-
-import java.util.ArrayList;
-import java.util.Collection;
-import java.util.List;
-import java.util.Map;
-import java.util.concurrent.ConcurrentHashMap;
-
-import org.apache.tuscany.sca.interfacedef.DataType;
-import org.apache.tuscany.sca.interfacedef.Interface;
-import org.apache.tuscany.sca.interfacedef.Operation;
-import org.apache.tuscany.sca.interfacedef.util.WrapperInfo;
-import org.apache.tuscany.sca.policy.ExtensionType;
-import org.apache.tuscany.sca.policy.Intent;
-import org.apache.tuscany.sca.policy.PolicySet;
-
-/**
- * Represents a service interface.
- *
- * @version $Rev$ $Date$
- * @tuscany.spi.extension.inheritfrom
- */
-public class InterfaceImpl implements Interface {
-
- private Boolean remotable;
- private boolean remotableSetFromSCDL = false;
- private boolean conversational;
- private OperationList operations = new OperationList();
- private boolean unresolved;
-
- private ExtensionType type;
- private List<PolicySet> policySets = new ArrayList<PolicySet>();
- private List<Intent> requiredIntents = new ArrayList<Intent>();
- private Map<Object, Object> attributes = new ConcurrentHashMap<Object, Object>();
-
- public boolean isRemotable() {
- boolean value = false;
- if (remotable != null && remotable.booleanValue()) {
- value = true;
- }
- return value;
- }
-
- public void setRemotable(boolean remotable) {
- this.remotable = Boolean.valueOf(remotable);
- }
-
- public boolean isRemotableSet() {
- return remotable == null ? false : true;
- }
-
- @Override
- public boolean isRemotableSetFromSCDL() {
- return remotableSetFromSCDL;
- }
-
- @Override
- public void setRemotableSetFromSCDL() {
- remotableSetFromSCDL = true;
- }
-
- public List<Operation> getOperations() {
- return operations;
- }
-
- public boolean isUnresolved() {
- return unresolved;
- }
-
- public void setUnresolved(boolean undefined) {
- this.unresolved = undefined;
- }
-
- /**
- * @return the conversational
- */
- public boolean isConversational() {
- return conversational;
- }
-
- /**
- * @param conversational the conversational to set
- */
- public void setConversational(boolean conversational) {
- this.conversational = conversational;
- }
-
- private class OperationList extends ArrayList<Operation> {
- private static final long serialVersionUID = -903469106307606099L;
-
- @Override
- public Operation set(int index, Operation element) {
- element.setInterface(InterfaceImpl.this);
- return super.set(index, element);
- }
-
- @Override
- public void add(int index, Operation element) {
- element.setInterface(InterfaceImpl.this);
- super.add(index, element);
- }
-
- @Override
- public boolean add(Operation o) {
- o.setInterface(InterfaceImpl.this);
- return super.add(o);
- }
-
- @Override
- public boolean addAll(Collection<? extends Operation> c) {
- for (Operation op : c) {
- op.setInterface(InterfaceImpl.this);
- }
- return super.addAll(c);
- }
-
- @Override
- public boolean addAll(int index, Collection<? extends Operation> c) {
- for (Operation op : c) {
- op.setInterface(InterfaceImpl.this);
- }
- return super.addAll(index, c);
- }
-
- }
-
- @Deprecated
- public void setDefaultDataBinding(String dataBinding) {
- for (Operation op : getOperations()) {
- if (op.getDataBinding() == null) {
- op.setDataBinding(dataBinding);
- DataType<List<DataType>> inputType = op.getInputType();
- if (inputType != null) {
- for (DataType d : inputType.getLogical()) {
- if (d.getDataBinding() == null) {
- d.setDataBinding(dataBinding);
- }
- }
- }
- DataType outputType = op.getOutputType();
- if (outputType != null && outputType.getDataBinding() == null) {
- outputType.setDataBinding(dataBinding);
- }
- List<DataType> faultTypes = op.getFaultTypes();
- if (faultTypes != null) {
- for (DataType d : faultTypes) {
- if (d.getDataBinding() == null) {
- d.setDataBinding(dataBinding);
- }
- DataType ft = (DataType) d.getLogical();
- if (ft.getDataBinding() == null) {
- ft.setDataBinding(dataBinding);
- }
-
- }
- }
- if (op.isInputWrapperStyle()) {
- WrapperInfo wrapper = op.getInputWrapper();
- if (wrapper != null) {
- DataType<List<DataType>> unwrappedInputType = wrapper.getUnwrappedType();
- if (unwrappedInputType != null) {
- for (DataType d : unwrappedInputType.getLogical()) {
- if (d.getDataBinding() == null) {
- d.setDataBinding(dataBinding);
- }
- }
- }
- }
- }
- if (op.isOutputWrapperStyle()) {
- WrapperInfo wrapper = op.getOutputWrapper();
- if (wrapper != null) {
- DataType<List<DataType>> unwrappedOutputType = wrapper.getUnwrappedType();
- if (unwrappedOutputType != null){
- for (DataType d : unwrappedOutputType.getLogical()) {
- if (d.getDataBinding() == null) {
- d.setDataBinding(dataBinding);
- }
- }
- }
- }
- }
- }
- }
- }
-
- private void setDataBinding(DataType dataType, String dataBinding) {
- if ("java:array".equals(dataType.getDataBinding())) {
- setDataBinding((DataType)dataType.getLogical(), dataBinding);
- } else {
- dataType.setDataBinding(dataBinding);
- }
- }
-
- public void resetDataBinding(String dataBinding) {
- for (Operation op : getOperations()) {
- op.setDataBinding(dataBinding);
- DataType<List<DataType>> inputType = op.getInputType();
- if (inputType != null) {
- for (DataType d : inputType.getLogical()) {
- setDataBinding(d, dataBinding);
- }
- }
- List<DataType> outputTypes = op.getOutputType().getLogical();
- for ( DataType outputType : outputTypes ) {
- if (outputType != null) {
- setDataBinding(outputType, dataBinding);
- }
- }
-
- List<DataType> faultTypes = op.getFaultTypes();
- if (faultTypes != null) {
- for (DataType d : faultTypes) {
- setDataBinding(d, dataBinding);
- setDataBinding((DataType) d.getLogical(), dataBinding);
- }
- }
- if (op.isInputWrapperStyle()) {
- WrapperInfo inputWrapper = op.getInputWrapper();
- if (inputWrapper != null) {
- DataType<List<DataType>> unwrappedInputType = inputWrapper.getUnwrappedType();
- if (unwrappedInputType != null) {
- for (DataType d : unwrappedInputType.getLogical()) {
- setDataBinding(d, dataBinding);
- }
- }
- }
- }
- if (op.isOutputWrapperStyle()) {
- WrapperInfo outputWrapper = op.getOutputWrapper();
- if (outputWrapper != null) {
- DataType<List<DataType>> unwrappedOutputType = outputWrapper.getUnwrappedType();
- if (unwrappedOutputType != null) {
- for (DataType d : unwrappedOutputType.getLogical()) {
- setDataBinding(d, dataBinding);
- }
- }
- }
- }
- }
- }
-
- public void resetInterfaceInputTypes(Interface newInterface){
- for (int i = 0; i < getOperations().size(); i++) {
- // only remote interfaces have a data type model defined
- // and in this case operations cannot be overloaded so match
- // operations by name
- Operation oldOperation = getOperations().get(i);
- Operation newOperation = null;
-
- for (Operation tmpOperation : newInterface.getOperations()){
- if (tmpOperation.getName().equals(oldOperation.getName())){
- newOperation = tmpOperation;
- }
- }
-
- if (newOperation == null){
- break;
- }
-
- // set input types
- oldOperation.setInputType(newOperation.getInputType());
-
- // set wrapper
- if (newOperation.isInputWrapperStyle()) {
- oldOperation.setInputWrapperStyle(true);
- oldOperation.setInputWrapper(newOperation.getInputWrapper());
- }
- }
- }
-
- public void resetInterfaceOutputTypes(Interface newInterface){
- for (int i = 0; i < getOperations().size(); i++) {
- // only remote interfaces have a data type model defined
- // and in this case operations cannot be overloaded so match
- // operations by name
- Operation oldOperation = getOperations().get(i);
- Operation newOperation = null;
-
- for (Operation tmpOperation : newInterface.getOperations()){
- if (tmpOperation.getName().equals(oldOperation.getName())){
- newOperation = tmpOperation;
- }
- }
-
- if (newOperation == null){
- break;
- }
-
- // set output types
- oldOperation.setOutputType(newOperation.getOutputType());
-
- // set fault types
- oldOperation.setFaultTypes(newOperation.getFaultTypes());
-
- // set wrapper
- if (newOperation.isOutputWrapperStyle()) {
- oldOperation.setOutputWrapperStyle(true);
- oldOperation.setOutputWrapper(newOperation.getOutputWrapper());
- }
- }
- }
-
- public boolean isDynamic() {
- return false;
- }
-
- public List<PolicySet> getPolicySets() {
- return policySets;
- }
-
- public List<Intent> getRequiredIntents() {
- return requiredIntents;
- }
-
- public ExtensionType getExtensionType() {
- return type;
- }
-
- public void setExtensionType(ExtensionType type) {
- this.type = type;
- }
-
- @Override
- public Object clone() throws CloneNotSupportedException {
- InterfaceImpl copy = (InterfaceImpl)super.clone();
- copy.operations = new OperationList();
- for (Operation operation : this.operations) {
- Operation clonedOperation = (Operation)operation.clone();
- copy.operations.add(clonedOperation);
- }
- copy.attributes = new ConcurrentHashMap<Object, Object>();
- copy.attributes.putAll(attributes);
- return copy;
- }
-
- public Map<Object, Object> getAttributes() {
- return attributes;
- }
-
-}
diff --git a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/interfacedef/impl/OperationImpl.java b/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/interfacedef/impl/OperationImpl.java
deleted file mode 100644
index 8d6cbc6d86..0000000000
--- a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/interfacedef/impl/OperationImpl.java
+++ /dev/null
@@ -1,363 +0,0 @@
-/*
- * 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.interfacedef.impl;
-
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-import java.util.concurrent.ConcurrentHashMap;
-
-import javax.xml.namespace.QName;
-
-import org.apache.tuscany.sca.interfacedef.DataType;
-import org.apache.tuscany.sca.interfacedef.Interface;
-import org.apache.tuscany.sca.interfacedef.Operation;
-import org.apache.tuscany.sca.interfacedef.ParameterMode;
-import org.apache.tuscany.sca.interfacedef.util.WrapperInfo;
-import org.apache.tuscany.sca.interfacedef.util.XMLType;
-import org.apache.tuscany.sca.policy.ExtensionType;
-import org.apache.tuscany.sca.policy.Intent;
-import org.apache.tuscany.sca.policy.PolicySet;
-
-/**
- * Represents an operation on a service interface.
- *
- * @version $Rev$ $Date$
- * @tuscany.spi.extension.inheritfrom
- */
-public class OperationImpl implements Operation {
-
- private String name;
- private boolean unresolved;
- private DataType<List<DataType>> inputType;
- private List<DataType> faultTypes;
- private Interface interfaze;
- private List<ParameterMode> parameterModes = new ArrayList<ParameterMode>();
- private boolean nonBlocking;
- private boolean inputWrapperStyle;
- private boolean outputWrapperStyle;
- private WrapperInfo inputWrapper;
- private WrapperInfo outputWrapper;
- private boolean dynamic;
- private boolean notSubjectToWrapping;
-
- private Map<Object, Object> attributes = new ConcurrentHashMap<Object, Object>();
-
- private Map<QName, List<DataType<XMLType>>> faultBeans;
-
- private List<PolicySet> applicablePolicySets = new ArrayList<PolicySet>();
- private List<PolicySet> policySets = new ArrayList<PolicySet>();
- private List<Intent> requiredIntents = new ArrayList<Intent>();
- private ExtensionType type;
- private DataType<List<DataType>> outputType;
- private boolean hasArrayWrappedOutput;
-
- /**
- * @param name
- */
- public OperationImpl() {
- inputType = new DataTypeImpl<List<DataType>>(IDL_INPUT, Object[].class, new ArrayList<DataType>());
- outputType = new DataTypeImpl<List<DataType>>(IDL_OUTPUT, Object[].class, new ArrayList<DataType>());
- faultTypes = new ArrayList<DataType>();
- faultBeans = new HashMap<QName, List<DataType<XMLType>>>();
- }
-
- public String getName() {
- return name;
- }
-
- public void setName(String name) {
- this.name = name;
- }
-
- public boolean isUnresolved() {
- return unresolved;
- }
-
- public void setUnresolved(boolean undefined) {
- this.unresolved = undefined;
- }
-
- /**
- * @return the faultTypes
- */
- public List<DataType> getFaultTypes() {
- return faultTypes;
- }
-
- /**
- * @param faultTypes the faultTypes to set
- */
- public void setFaultTypes(List<DataType> faultTypes) {
- this.faultTypes = faultTypes;
- }
-
- /**
- * @return the inputType
- */
- public DataType<List<DataType>> getInputType() {
- return inputType;
- }
-
- /**
- * @param inputType the inputType to set
- */
- public void setInputType(DataType<List<DataType>> inputType) {
- this.inputType = inputType;
- }
-
- /**
- * @return the outputType
- */
- public DataType<List<DataType>> getOutputType() {
- return this.outputType;
- }
-
-
- /**
- * @param outputType the outputType to set
- */
- public void setOutputType(DataType<List<DataType>> outputType) {
- this.outputType = outputType;
- }
-
- /**
- * @return the interface
- */
- public Interface getInterface() {
- return interfaze;
- }
-
- /**
- * @param interfaze the interface to set
- */
- public void setInterface(Interface interfaze) {
- this.interfaze = interfaze;
- }
-
- /**
- * @return the nonBlocking
- */
- public boolean isNonBlocking() {
- return nonBlocking;
- }
-
- /**
- * @param nonBlocking the nonBlocking to set
- */
- public void setNonBlocking(boolean nonBlocking) {
- this.nonBlocking = nonBlocking;
- }
-
- /**
- * @return the wrapperInfo
- */
- public WrapperInfo getInputWrapper() {
- return inputWrapper;
- }
-
- /**
- * @param wrapperInfo the wrapperInfo to set
- */
- public void setInputWrapper(WrapperInfo wrapperInfo) {
- this.inputWrapper = wrapperInfo;
- }
-
- /**
- * @return the wrapperInfo
- */
- public WrapperInfo getOutputWrapper() {
- return outputWrapper;
- }
-
- /**
- * @param wrapperInfo the wrapperInfo to set
- */
- public void setOutputWrapper(WrapperInfo wrapperInfo) {
- this.outputWrapper = wrapperInfo;
- }
-
- /**
- * @return the wrapperStyle
- */
- public boolean isInputWrapperStyle() {
- return inputWrapperStyle;
- }
-
- /**
- * @param wrapperStyle the wrapperStyle to set
- */
- public void setInputWrapperStyle(boolean wrapperStyle) {
- this.inputWrapperStyle = wrapperStyle;
- }
-
- /**
- * @return the wrapperStyle
- */
- public boolean isOutputWrapperStyle() {
- return outputWrapperStyle;
- }
-
- /**
- * @param wrapperStyle the wrapperStyle to set
- */
- public void setOutputWrapperStyle(boolean wrapperStyle) {
- this.outputWrapperStyle = wrapperStyle;
- }
-
- public String getDataBinding() {
- if (inputWrapper != null){
- return inputWrapper.getDataBinding();
- }
- if (outputWrapper != null){
- return outputWrapper.getDataBinding();
- }
- return null;
- }
-
- public void setDataBinding(String dataBinding) {
- if (inputWrapper != null) {
- inputWrapper.setDataBinding(dataBinding);
- }
- if (outputWrapper != null) {
- outputWrapper.setDataBinding(dataBinding);
- }
- }
-
- public boolean isDynamic() {
- return dynamic;
- }
-
- public void setDynamic(boolean b) {
- this.dynamic = b;
- }
-
- public Map<QName, List<DataType<XMLType>>> getFaultBeans() {
- return faultBeans;
- }
-
- public void setFaultBeans(Map<QName, List<DataType<XMLType>>> faultBeans) {
- this.faultBeans = faultBeans;
- }
-
- @Override
- public OperationImpl clone() throws CloneNotSupportedException {
- OperationImpl copy = (OperationImpl) super.clone();
-
- final List<DataType> clonedFaultTypes = new ArrayList<DataType>(this.faultTypes.size());
- for (DataType t : this.faultTypes) {
- clonedFaultTypes.add((DataType) t.clone());
- }
- copy.faultTypes = clonedFaultTypes;
-
- List<DataType> clonedLogicalTypes = new ArrayList<DataType>();
- for (DataType t : inputType.getLogical()) {
- DataType type = (DataType) t.clone();
- clonedLogicalTypes.add(type);
- }
- DataType<List<DataType>> clonedInputType =
- new DataTypeImpl<List<DataType>>(inputType.getPhysical(), clonedLogicalTypes);
- clonedInputType.setDataBinding(inputType.getDataBinding());
- copy.inputType = clonedInputType;
-
- if ( outputType != null ) {
- List<DataType> clonedLogicalOutputTypes = new ArrayList<DataType>();
- for ( DataType t : outputType.getLogical()) {
- if ( t == null ) {
- clonedLogicalOutputTypes.add(null);
- } else {
- DataType type = (DataType) t.clone();
- clonedLogicalOutputTypes.add(type);
- }
- }
- DataType<List<DataType>> clonedOutputType =
- new DataTypeImpl<List<DataType>>(outputType.getPhysical(), clonedLogicalOutputTypes);
- clonedOutputType.setDataBinding(outputType.getDataBinding());
- copy.outputType = clonedOutputType;
- }
-
- copy.attributes = new ConcurrentHashMap<Object, Object>();
- copy.attributes.putAll(attributes);
-
- // [rfeng] We need to clone the wrapper as it holds the databinding information
- if (inputWrapper != null) {
- copy.inputWrapper = (WrapperInfo)inputWrapper.clone();
- }
-
- if (outputWrapper != null) {
- copy.outputWrapper = (WrapperInfo)outputWrapper.clone();
- }
-
- return copy;
- }
-
- public List<PolicySet> getApplicablePolicySets() {
- return applicablePolicySets;
- }
-
- public List<PolicySet> getPolicySets() {
- return policySets;
- }
-
- public List<Intent> getRequiredIntents() {
- return requiredIntents;
- }
-
- public ExtensionType getExtensionType() {
- return type;
- }
-
- public void setExtensionType(ExtensionType type) {
- this.type = type;
- }
-
- public Map<Object, Object> getAttributes() {
- return attributes;
- }
-
- /**
- * Indicates if this operation is an async server style of operation
- * @return true if the operation is async server style
- */
- public boolean isAsyncServer() {
- return false;
- }
-
- public List<ParameterMode> getParameterModes() {
- return this.parameterModes;
- }
-
- public boolean hasArrayWrappedOutput() {
- return this.hasArrayWrappedOutput;
- }
-
- public void setHasArrayWrappedOutput(boolean value) {
- this.hasArrayWrappedOutput = value;
- }
-
- public void setNotSubjectToWrapping(boolean notSubjectToWrapping) {
- this.notSubjectToWrapping = notSubjectToWrapping;
- }
-
- public boolean isNotSubjectToWrapping() {
- return notSubjectToWrapping;
- }
-
-}
diff --git a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/interfacedef/impl/TuscanyInterfaceContractImpl.java b/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/interfacedef/impl/TuscanyInterfaceContractImpl.java
deleted file mode 100644
index 778af15331..0000000000
--- a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/interfacedef/impl/TuscanyInterfaceContractImpl.java
+++ /dev/null
@@ -1,38 +0,0 @@
-/*
- * 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.interfacedef.impl;
-
-
-/**
- * Represents a Java interface contract.
- *
- * @version $Rev: 1149451 $ $Date: 2011-07-22 05:12:56 +0100 (Fri, 22 Jul 2011) $
- */
-public class TuscanyInterfaceContractImpl extends InterfaceContractImpl {
-
-
- public TuscanyInterfaceContractImpl() {
- }
-
- @Override
- public TuscanyInterfaceContractImpl clone() throws CloneNotSupportedException {
- return (TuscanyInterfaceContractImpl) super.clone();
- }
-
-}
diff --git a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/interfacedef/util/Audit.java b/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/interfacedef/util/Audit.java
deleted file mode 100644
index 343d369fdb..0000000000
--- a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/interfacedef/util/Audit.java
+++ /dev/null
@@ -1,45 +0,0 @@
-/*
- * 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.interfacedef.util;
-
-
-/*
- * utility to allow building up an audit trail in case reporting is necessary later
- *
- */
-public class Audit {
-
- public static final String seperator = "|||";
- private StringBuffer buf;
-
- public Audit() {
- this.buf = new StringBuffer();
- }
- public void append(String str) {
- buf.append(str);
- }
-
- public void appendSeperator() {
- buf.append(seperator);
- }
- public String toString() {
- return buf.toString();
- }
-}
diff --git a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/interfacedef/util/ElementInfo.java b/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/interfacedef/util/ElementInfo.java
deleted file mode 100644
index 61a2cd7f66..0000000000
--- a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/interfacedef/util/ElementInfo.java
+++ /dev/null
@@ -1,124 +0,0 @@
-/*
- * 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.interfacedef.util;
-
-import javax.xml.namespace.QName;
-
-/**
- * An abstraction of XML schema elements.
- *
- * @version $Rev$ $Date$
- * @tuscany.spi.extension.asclient
- */
-public class ElementInfo {
- private final QName name;
- private final TypeInfo type;
- private boolean many = false;
- private boolean nillable = false;
- private boolean omissible = false;
-
- /**
- * @param name
- * @param type
- */
- public ElementInfo(QName name, TypeInfo type) {
- super();
- this.name = name;
- this.type = type;
- }
-
- /**
- * @return the name
- */
- public QName getQName() {
- return name;
- }
-
- /**
- * @return the type
- */
- public TypeInfo getType() {
- return type;
- }
-
- @Override
- public String toString() {
- StringBuffer sb = new StringBuffer();
- sb.append("Element: ").append(name).append(" ").append(type);
- return sb.toString();
- }
-
- public boolean isMany() {
- return many;
- }
-
- public void setMany(boolean many) {
- this.many = many;
- }
-
- public boolean isNillable() {
- return nillable;
- }
-
- public void setNillable(boolean nillable) {
- this.nillable = nillable;
- }
-
- public boolean isOmissible() {
- return omissible;
- }
-
- public void setOmissible(boolean omissible) {
- this.omissible = omissible;
- }
-
- @Override
- public int hashCode() {
- final int prime = 31;
- int result = 1;
- result = prime * result + ((name == null) ? 0 : name.hashCode());
- result = prime * result + ((type == null) ? 0 : type.hashCode());
- return result;
- }
-
- @Override
- public boolean equals(Object obj) {
- if (this == obj)
- return true;
- if (obj == null)
- return false;
- if (getClass() != obj.getClass())
- return false;
- final ElementInfo other = (ElementInfo)obj;
- if (name == null) {
- if (other.name != null)
- return false;
- } else if (!name.equals(other.name))
- return false;
- /*
- if (type == null) {
- if (other.type != null)
- return false;
- } else if (!type.equals(other.type))
- return false;
- */
- return true;
- }
-}
diff --git a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/interfacedef/util/FaultException.java b/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/interfacedef/util/FaultException.java
deleted file mode 100644
index 334c826f86..0000000000
--- a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/interfacedef/util/FaultException.java
+++ /dev/null
@@ -1,83 +0,0 @@
-/*
- * 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.interfacedef.util;
-
-import javax.xml.namespace.QName;
-
-/**
- * The generic java exception to wrap service faults
- *
- * @version $Rev$ $Date$
- * @tuscany.spi.extension.asclient
- */
-public class FaultException extends Exception {
- private static final long serialVersionUID = -8002583655240625792L;
- private transient Object faultInfo; // FIXME: How to serialize it?
- private QName faultName;
-
- /**
- * @param message
- * @param faultInfo
- */
- public FaultException(String message, Object faultInfo) {
- super(message);
- this.faultInfo = faultInfo;
- }
-
- /**
- * @param message
- * @param faultInfo
- * @param cause
- */
- public FaultException(String message, Object faultInfo, Throwable cause) {
- super(message, cause);
- this.faultInfo = faultInfo;
- }
-
- /**
- * @return the faultInfo
- */
- public Object getFaultInfo() {
- return faultInfo;
- }
-
- public QName getFaultName() {
- return faultName;
- }
-
- public void setFaultName(QName logical) {
- this.faultName = logical;
- }
-
- public boolean isMatchingType(Object type) {
- if (faultName == null) {
- return false;
- }
-
- if ((type instanceof QName) && faultName.equals(type)) {
- return true;
- }
- if (type instanceof XMLType && faultName.equals(((XMLType)type).getElementName())) {
- return true;
- }
- return false;
- }
-
-}
diff --git a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/interfacedef/util/JavaXMLMapper.java b/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/interfacedef/util/JavaXMLMapper.java
deleted file mode 100644
index 849b922285..0000000000
--- a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/interfacedef/util/JavaXMLMapper.java
+++ /dev/null
@@ -1,144 +0,0 @@
-/*
- * 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.interfacedef.util;
-
-import java.util.HashMap;
-import java.util.Map;
-
-import javax.xml.namespace.QName;
-
-/**
- * Utility class that can be used to map XSD types to Java classes and Java classes to XSD types.
- *
- * @version $Rev$ $Date$
- * @tuscany.spi.extension.asclient
- */
-public final class JavaXMLMapper {
- public static final String URI_2001_SCHEMA_XSD = "http://www.w3.org/2001/XMLSchema";
- private static final Map<Class, QName> JAVA2XML = new HashMap<Class, QName>();
- private static final Map<String, Class> XML2JAVA = new HashMap<String, Class>();
-
- private JavaXMLMapper() {
- }
-
- static {
- JAVA2XML.put(boolean.class, getTypeName("boolean"));
- JAVA2XML.put(byte.class, getTypeName("byte"));
- JAVA2XML.put(short.class, getTypeName("short"));
- JAVA2XML.put(int.class, getTypeName("int"));
- JAVA2XML.put(long.class, getTypeName("long"));
- JAVA2XML.put(float.class, getTypeName("float"));
- JAVA2XML.put(double.class, getTypeName("double"));
- JAVA2XML.put(Boolean.class, getTypeName("boolean"));
- JAVA2XML.put(Byte.class, getTypeName("byte"));
- JAVA2XML.put(Short.class, getTypeName("short"));
- JAVA2XML.put(Integer.class, getTypeName("int"));
- JAVA2XML.put(Long.class, getTypeName("long"));
- JAVA2XML.put(Float.class, getTypeName("float"));
- JAVA2XML.put(Double.class, getTypeName("double"));
- JAVA2XML.put(java.lang.String.class, getTypeName("string"));
- JAVA2XML.put(java.math.BigInteger.class, getTypeName("integer"));
- JAVA2XML.put(java.math.BigDecimal.class, getTypeName("decimal"));
- JAVA2XML.put(java.util.Calendar.class, getTypeName("dateTime"));
- JAVA2XML.put(java.util.Date.class, getTypeName("dateTime"));
- JAVA2XML.put(javax.xml.namespace.QName.class, getTypeName("QName"));
- JAVA2XML.put(java.net.URI.class, getTypeName("string"));
- JAVA2XML.put(javax.xml.datatype.XMLGregorianCalendar.class, getTypeName("anySimpleType"));
- JAVA2XML.put(javax.xml.datatype.Duration.class, getTypeName("duration"));
- JAVA2XML.put(java.lang.Object.class, getTypeName("anyType"));
- JAVA2XML.put(java.awt.Image.class, getTypeName("base64Binary"));
- JAVA2XML.put(byte[].class, getTypeName("base64Binary"));
- // java2XSD.put(javax.activation.DataHandler.class, getTypeName("base64Binary"));
- JAVA2XML.put(javax.xml.transform.Source.class, getTypeName("base64Binary"));
- JAVA2XML.put(java.util.UUID.class, getTypeName("string"));
- }
-
- static {
- XML2JAVA.put("string", java.lang.String.class);
- XML2JAVA.put("integer", java.math.BigInteger.class);
- XML2JAVA.put("int", int.class);
- XML2JAVA.put("long", long.class);
- XML2JAVA.put("short", short.class);
- XML2JAVA.put("decimal", java.math.BigDecimal.class);
- XML2JAVA.put("float", float.class);
- XML2JAVA.put("double", double.class);
- XML2JAVA.put("boolean", boolean.class);
- XML2JAVA.put("byte", byte.class);
- XML2JAVA.put("QName", javax.xml.namespace.QName.class);
- XML2JAVA.put("dateTime", javax.xml.datatype.XMLGregorianCalendar.class);
- XML2JAVA.put("base64Binary", byte[].class);
- XML2JAVA.put("hexBinary", byte[].class);
- XML2JAVA.put("unsignedInt", long.class);
- XML2JAVA.put("unsignedShort", int.class);
- XML2JAVA.put("unsignedByte", short.class);
- XML2JAVA.put("time", javax.xml.datatype.XMLGregorianCalendar.class);
- XML2JAVA.put("date", javax.xml.datatype.XMLGregorianCalendar.class);
- XML2JAVA.put("gDay", javax.xml.datatype.XMLGregorianCalendar.class);
- XML2JAVA.put("gMonth", javax.xml.datatype.XMLGregorianCalendar.class);
- XML2JAVA.put("gYear", javax.xml.datatype.XMLGregorianCalendar.class);
- XML2JAVA.put("gYearMonth", javax.xml.datatype.XMLGregorianCalendar.class);
- XML2JAVA.put("gMonthDay", javax.xml.datatype.XMLGregorianCalendar.class);
- XML2JAVA.put("anySimpleType", java.lang.Object.class); // For elements
- // XML2JAVA.put("anySimpleType", java.lang.String.class); // For
- // attributes
- XML2JAVA.put("duration", javax.xml.datatype.Duration.class);
- XML2JAVA.put("NOTATION", javax.xml.namespace.QName.class);
- }
-
- public static Class getJavaType(QName xmlType) {
- if (URI_2001_SCHEMA_XSD.equals(xmlType.getNamespaceURI())) {
- return XML2JAVA.get(xmlType.getLocalPart());
- } else {
- return null;
- }
- }
-
- private static QName getTypeName(String name) {
- return new QName(URI_2001_SCHEMA_XSD, name);
- }
-
- public static QName getXMLType(Class javaType) {
- return JAVA2XML.get(javaType);
- }
-
- private static String getPackageName(Class<?> cls) {
- String name = cls.getName();
- int index = name.lastIndexOf('.');
- return index == -1 ? "" : name.substring(0, index);
- }
-
- public static String getNamespace(Class<?> cls) {
- String packageName = getPackageName(cls);
- if ("".equals(packageName)) {
- return "";
- }
- StringBuffer ns = new StringBuffer("http://");
- String[] names = packageName.split("\\.");
- for (int i = names.length - 1; i >= 0; i--) {
- ns.append(names[i]);
- if (i != 0) {
- ns.append('.');
- }
- }
- ns.append('/');
- return ns.toString();
- }
-
-}
diff --git a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/interfacedef/util/TypeInfo.java b/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/interfacedef/util/TypeInfo.java
deleted file mode 100644
index abae4e7e38..0000000000
--- a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/interfacedef/util/TypeInfo.java
+++ /dev/null
@@ -1,101 +0,0 @@
-/*
- * 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.interfacedef.util;
-
-import javax.xml.namespace.QName;
-
-/**
- * An abstraction of XML schema types
- *
- * @version $Rev$ $Date$
- * @tuscany.spi.extension.asclient
- */
-public class TypeInfo {
- private QName name;
-
- private boolean isSimpleType;
-
- private TypeInfo baseType;
-
- /**
- * @param name
- * @param isSimpleType
- */
- public TypeInfo(QName name, boolean isSimpleType, TypeInfo baseType) {
- super();
- this.name = name;
- this.isSimpleType = isSimpleType;
- this.baseType = baseType;
- }
-
- /**
- * @return the isSimpleType
- */
- public boolean isSimpleType() {
- return isSimpleType;
- }
-
- /**
- * @return the name
- */
- public QName getQName() {
- return name;
- }
-
- /**
- * @return the baseType
- */
- public TypeInfo getBaseType() {
- return baseType;
- }
-
- @Override
- public String toString() {
- StringBuffer sb = new StringBuffer();
- sb.append("Type: ").append(name);
- return sb.toString();
- }
-
- @Override
- public int hashCode() {
- final int prime = 31;
- int result = 1;
- result = prime * result + ((name == null) ? 0 : name.hashCode());
- return result;
- }
-
- @Override
- public boolean equals(Object obj) {
- if (this == obj)
- return true;
- if (obj == null)
- return false;
- if (getClass() != obj.getClass())
- return false;
- final TypeInfo other = (TypeInfo)obj;
- if (name == null) {
- if (other.name != null)
- return false;
- } else if (!name.equals(other.name))
- return false;
- return true;
- }
-
-}
diff --git a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/interfacedef/util/WrapperInfo.java b/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/interfacedef/util/WrapperInfo.java
deleted file mode 100644
index 6873943efc..0000000000
--- a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/interfacedef/util/WrapperInfo.java
+++ /dev/null
@@ -1,181 +0,0 @@
-/*
- * 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.interfacedef.util;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.apache.tuscany.sca.interfacedef.DataType;
-import org.apache.tuscany.sca.interfacedef.impl.DataTypeImpl;
-
-/**
- * The "Wrapper Style" WSDL operation is defined by The Java API for XML-Based
- * Web Services (JAX-WS) 2.0 specification, section 2.3.1.2 Wrapper Style. <p/>
- * A WSDL operation qualifies for wrapper style mapping only if the following
- * criteria are met:
- * <ul>
- * <li>(i) The operations input and output messages (if present) each contain
- * only a single part
- * <li>(ii) The input message part refers to a global element declaration whose
- * localname is equal to the operation name
- * <li>(iii) The output message part refers to a global element declaration
- * <li>(iv) The elements referred to by the input and output message parts
- * (henceforth referred to as wrapper elements) are both complex types defined
- * using the xsd:sequence compositor
- * <li>(v) The wrapper elements only contain child elements, they must not
- * contain other structures such as wildcards (element or attribute),
- * xsd:choice, substitution groups (element references are not permitted) or
- * attributes; furthermore, they must not be nillable.
- * </ul>
- *
- * @version $Rev$ $Date$
- * @tuscany.spi.extension.asclient
- */
-public class WrapperInfo implements Cloneable {
-
- // The databinding for the wrapper
- private String dataBinding;
-
- // The XML element representation of the wrapper
- private ElementInfo wrapperElement;
-
- // The XML child elements of the wrapper
- private List<ElementInfo> childElements;
-
- // The data type for the wrapper bean
- private DataType<XMLType> wrapperType;
-
- // The data types of the unwrapped child elements
- private DataType<List<DataType>> unwrappedType;
-
- public WrapperInfo(String dataBinding,
- ElementInfo wrapperElement,
- List<ElementInfo> childElements) {
- super();
- this.dataBinding = dataBinding;
- this.wrapperElement = wrapperElement;
- this.childElements = childElements;
- }
-
- /**
- * Get the list of XML child elements that this
- * wrapper wraps
- *
- * @return the childElements
- */
- public List<ElementInfo> getChildElements() {
- return childElements;
- }
-
- /**
- * Get the XML element that represents this wrapper
- *
- * @return the wrapperElement
- */
- public ElementInfo getWrapperElement() {
- return wrapperElement;
- }
-
- /**
- * Get the databinding that this wrapper will
- * be subject to
- *
- * @return dataBinding
- */
- public String getDataBinding() {
- return dataBinding;
- }
-
- /**
- * Set the databinding that this wrapper will
- * be subject to
- *
- * @param dataBinding
- */
- public void setDataBinding(String dataBinding) {
- this.dataBinding = dataBinding;
- }
-
- /**
- * Get the Tuscany data type for the wrapper
- *
- * @return Tuscany data type for the wrapper
- */
- public DataType<XMLType> getWrapperType() {
- return wrapperType;
- }
-
- /**
- * Set the Tuscany data type for the wrapper
- *
- * @param wrapperType Tuscany data type for the wrapper
- */
- public void setWrapperType(DataType<XMLType> wrapperType) {
- this.wrapperType = wrapperType;
- }
-
- /**
- * Return the Java class for the wrapper
- *
- * @return Java class for the wrapper
- */
- public Class<?> getWrapperClass() {
- return wrapperType == null ? null : wrapperType.getPhysical();
- }
-
- @Override
- public Object clone() throws CloneNotSupportedException {
- WrapperInfo copy = (WrapperInfo) super.clone();
- if (wrapperType != null) {
- copy.wrapperType = (DataType<XMLType>)wrapperType.clone();
- }
- return copy;
-
- }
-
- /**
- * Creates and caches the data types for the child elements
- *
- * @return The list of child element data types
- */
- public DataType<List<DataType>> getUnwrappedType() {
- if (unwrappedType == null) {
- List<DataType> childTypes = new ArrayList<DataType>();
- for (ElementInfo element : getChildElements()) {
- DataType type = getDataType(element);
- childTypes.add(type);
- }
- unwrappedType = new DataTypeImpl<List<DataType>>("idl:unwrapped", Object[].class, childTypes);
- }
- return unwrappedType;
- }
-
- private DataType getDataType(ElementInfo element) {
- DataType type = null;
- if (element.isMany()) {
- DataType logical = new DataTypeImpl<XMLType>(dataBinding, Object.class, new XMLType(element));
- type = new DataTypeImpl<DataType>("java:array", Object[].class, logical);
- } else {
- type = new DataTypeImpl<XMLType>(dataBinding, Object.class, new XMLType(element));
- }
- return type;
- }
-
-}
diff --git a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/interfacedef/util/XMLType.java b/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/interfacedef/util/XMLType.java
deleted file mode 100644
index fd1b840b17..0000000000
--- a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/interfacedef/util/XMLType.java
+++ /dev/null
@@ -1,153 +0,0 @@
-/*
- * 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.interfacedef.util;
-
-import javax.xml.namespace.QName;
-
-/**
- * The metadata for an XML element or type.
- *
- * @version $Rev$ $Date$
- * @tuscany.spi.extension.asclient
- */
-public class XMLType {
- public static final XMLType UNKNOWN = new XMLType(null, null);
- protected QName element;
- protected QName type;
- protected boolean nillable = true;
- protected boolean many = false;
-
- /**
- * @param element
- */
- public XMLType(ElementInfo element) {
- super();
- this.element = element.getQName();
- if (element.getType() != null) {
- this.type = element.getType().getQName();
- }
- }
-
- /**
- * @param element
- */
- public XMLType(TypeInfo type) {
- this.element = null;
- this.type = type.getQName();
- }
-
- public XMLType(QName element, QName type) {
- this.element = element;
- this.type = type;
- }
-
- /**
- * @return the type
- */
- public QName getTypeName() {
- return type;
- }
-
- public boolean isElement() {
- return element != null;
- }
-
- public QName getElementName() {
- return element;
- }
-
- public void setElementName(QName element) {
- this.element = element;
- }
-
- public void setTypeName(QName type) {
- this.type = type;
- }
-
- public static XMLType getType(QName type) {
- return new XMLType(null, type);
- }
-
- /**
- * @see java.lang.Object#hashCode()
- */
- @Override
- public int hashCode() {
- final int PRIME = 31;
- int result = 1;
- result = PRIME * result + ((element == null) ? 0 : element.hashCode());
- result = PRIME * result + ((type == null) ? 0 : type.hashCode());
- return result;
- }
-
- /**
- * @see java.lang.Object#equals(java.lang.Object)
- */
- @Override
- public boolean equals(Object obj) {
- if (this == obj) {
- return true;
- }
- if (obj == null) {
- return false;
- }
- if (getClass() != obj.getClass()) {
- return false;
- }
- final XMLType other = (XMLType)obj;
- if (element == null) {
- if (other.element != null) {
- return false;
- }
- } else if (!element.equals(other.element)) {
- return false;
- }
- if (type == null) {
- if (other.type != null) {
- return false;
- }
- } else if (!type.equals(other.type)) {
- return false;
- }
- return true;
- }
-
- @Override
- public String toString() {
- return "Element: " + element + " Type: " + type;
- }
-
- public boolean isNillable() {
- return nillable;
- }
-
- public void setNillable(boolean niable) {
- this.nillable = niable;
- }
-
- public boolean isMany() {
- return many;
- }
-
- public void setMany(boolean many) {
- this.many = many;
- }
-
-}
diff --git a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/policy/BindingType.java b/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/policy/BindingType.java
deleted file mode 100644
index f43c428563..0000000000
--- a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/policy/BindingType.java
+++ /dev/null
@@ -1,27 +0,0 @@
-/*
- * 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;
-
-
-/**
- * Definition of binding type which extends from sca:binding
- */
-public interface BindingType extends ExtensionType {
-}
diff --git a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/policy/DefaultIntent.java b/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/policy/DefaultIntent.java
deleted file mode 100644
index 7f3579a388..0000000000
--- a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/policy/DefaultIntent.java
+++ /dev/null
@@ -1,53 +0,0 @@
-/*
- * 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;
-
-import java.util.List;
-
-import javax.xml.namespace.QName;
-
-/**
- * Represents a default intent and the intents that must not be present in order
- * for this default intent to come into force.
- */
-public interface DefaultIntent {
-
- /**
- * Returns the default intent object
- *
- * @return the intent
- */
- Intent getIntent();
-
- /**
- * Sets the intent object
- *
- * @param the intent
- */
- void setIntent(Intent intent);
-
- /**
- * Returns the list of intent names that must not be present
- * in order for the default intent to come into play.
- *
- * @return the list of mutually exclusive intent names
- */
- List<Intent> getMutuallyExclusiveIntents();
-
-}
diff --git a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/policy/DefaultPolicyFactory.java b/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/policy/DefaultPolicyFactory.java
deleted file mode 100644
index 2da41675a1..0000000000
--- a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/policy/DefaultPolicyFactory.java
+++ /dev/null
@@ -1,30 +0,0 @@
-/*
- * 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;
-
-import org.apache.tuscany.sca.policy.impl.PolicyFactoryImpl;
-
-/**
- * A factory for the policy model.
- *
- * @version $Rev$ $Date$
- */
-public class DefaultPolicyFactory extends PolicyFactoryImpl implements PolicyFactory {
-
-}
diff --git a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/policy/DefaultingPolicySubject.java b/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/policy/DefaultingPolicySubject.java
deleted file mode 100644
index 8f41d8fb71..0000000000
--- a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/policy/DefaultingPolicySubject.java
+++ /dev/null
@@ -1,48 +0,0 @@
-/*
- * 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;
-
-import java.util.List;
-
-/**
- * A policy subject is an entity in the assembly with which a policy can be
- * associated.
- *
- * This default extension provides a mechanism of associating default intents
- * with a policy subject so that the framework will take default intents
- * into account if no intents are specified by the user.
- *
- * Default intents are mainly applicable when an artifact defines mayProvides
- * intents but the user specified no intents
- */
-public interface DefaultingPolicySubject extends PolicySubject {
-
- /**
- * Default intents are mainly applicable when an
- * artifact defines mayProvides intents but the
- * user specified no intents. In some cases the
- * artifact will implement a default intent so
- * this collection provides the information for the
- * framework to determine what those defaults are
- *
- * @return A list of default intent records
- */
- List<DefaultIntent> getDefaultIntents();
-}
diff --git a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/policy/ExtensionType.java b/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/policy/ExtensionType.java
deleted file mode 100644
index f8f8a48b06..0000000000
--- a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/policy/ExtensionType.java
+++ /dev/null
@@ -1,82 +0,0 @@
-/*
- * 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;
-
-import java.util.List;
-
-import javax.xml.namespace.QName;
-
-/**
- * Definition of extension type: binding or implementation
- * @tuscany.spi.extension.asclient
- */
-public interface ExtensionType {
- QName BINDING_BASE = new QName("http://docs.oasis-open.org/ns/opencsa/sca/200912", "binding");
- QName IMPLEMENTATION_BASE = new QName("http://docs.oasis-open.org/ns/opencsa/sca/200912", "implementation");
-
- /**
- * The name of the extension type (binding or implementation). The extension type name
- * attribute MUST be the QName of an XSD global element definition used for
- * binding/implementation elements of that type
- *
- * @return The QName of this type
- */
- QName getType();
-
- /**
- * Set the QName for this type
- * @param type The QName of this type
- */
- void setType(QName type);
-
- QName getBaseType();
-
- /**
- * A set of intents. The intents in the alwaysProvides set are always
- * provided by this extension type, whether the intents are attached
- * to the using component or not.
- *
- * @return A list of intents that are always provided by this type
- */
- List<Intent> getAlwaysProvidedIntents();
-
- /**
- * a set of intents. The intents in the mayProvide set are provided by this
- * extension type if the intent in question is attached to the using
- * component.
- *
- * @return A list of intents that may be provided by this type
- */
- List<Intent> getMayProvidedIntents();
- /**
- * Returns true if the model element is unresolved.
- *
- * @return true if the model element is unresolved.
- */
- boolean isUnresolved();
-
- /**
- * Sets whether the model element is unresolved.
- *
- * @param unresolved whether the model element is unresolved
- */
- void setUnresolved(boolean unresolved);
-
-}
diff --git a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/policy/ExternalAttachment.java b/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/policy/ExternalAttachment.java
deleted file mode 100644
index 5bccf51b91..0000000000
--- a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/policy/ExternalAttachment.java
+++ /dev/null
@@ -1,85 +0,0 @@
-/*
- * 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;
-
-import java.util.List;
-
-import javax.xml.xpath.XPathExpression;
-
-/*
- * Represents an external attachment element. See the Policy Framework specification for a
- * description of this element.
- *
- * @version $Rev: 937291 $ $Date: 2010-04-23 06:41:24 -0700 (Fri, 23 Apr 2010) $
- * @tuscany.spi.extension.asclient
- */
-
-
-public interface ExternalAttachment {
-
- /**
- * Get the attachTo attribute
- * @return
- */
- String getAttachTo();
-
- /**
- * Set the attachTo attribute
- * @param name
- */
- void setAttachTo(String name);
-
- /**
- * Get the compiled XPath attachTo expression
- * @return
- */
- XPathExpression getAttachToXPathExpression();
-
- /**
- * Set the compiled XPath attachTo expression
- * @param expression
- */
- void setAttachToXPathExpression(XPathExpression expression);
-
- /**
- * Get the policy sets associated with this ExternalAttachment
- * @return
- */
- List<PolicySet> getPolicySets();
-
- /**
- * Get the intents associated with this ExternalAttachment
- * @return
- */
- List<Intent> getIntents();
-
- /**
- * Returns true if the model element is unresolved.
- *
- * @return true if the model element is unresolved.
- */
- boolean isUnresolved();
-
- /**
- * Sets whether the model element is unresolved.
- *
- * @param unresolved whether the model element is unresolved
- */
- void setUnresolved(boolean unresolved);
-}
diff --git a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/policy/ImplementationType.java b/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/policy/ImplementationType.java
deleted file mode 100644
index d142015f57..0000000000
--- a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/policy/ImplementationType.java
+++ /dev/null
@@ -1,27 +0,0 @@
-/*
- * 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;
-
-
-/**
- * Definition of an implementation type which extends from sca:implementation
- */
-public interface ImplementationType extends ExtensionType {
-}
diff --git a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/policy/Intent.java b/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/policy/Intent.java
deleted file mode 100644
index b2578fab49..0000000000
--- a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/policy/Intent.java
+++ /dev/null
@@ -1,161 +0,0 @@
-/*
- * 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;
-
-import java.util.List;
-
-import javax.xml.namespace.QName;
-
-/**
- * Represents a policy intent. See the Policy Framework specification for a
- * description of this element.
- *
- * @version $Rev$ $Date$
- * @tuscany.spi.extension.asclient
- */
-public interface Intent {
- enum Type {
- interaction, implementation
- };
-
- /**
- * Returns the intent name.
- *
- * @return the intent name
- */
- QName getName();
-
- /**
- * Sets the intent name
- *
- * @param name the intent name
- */
- void setName(QName name);
-
- /**
- * Returns the list of SCA constructs that this intent is meant to
- * configure.
- *
- * @return the list of SCA constructs that this intent is meant to configure
- */
- List<ExtensionType> getConstrainedTypes();
-
- /**
- * Return a list of required intents
- * @return The list of required intents
- */
- List<Intent> getRequiredIntents();
-
- /**
- * Returns the list of intents which are mutually exclusive with this intent.
- *
- * @return the list of mutually exclusive intents.
- */
- List<Intent> getExcludedIntents();
-
- /**
- * Returns the list of qualified intents.
- *
- * @return the list of qualified intents.
- */
- List<Intent> getQualifiedIntents();
-
- /**
- * Get the default qualified intent
- *
- * @return
- */
- Intent getDefaultQualifiedIntent();
-
- /**
- * Set the default qualified intent
- *
- * @param qualifiedIntent
- */
- void setDefaultQualifiedIntent(Intent qualifiedIntent);
-
- /**
- * Get the intent type: Interaction or Implementation
- * @return
- */
- Type getType();
-
- /**
- * Set the intent type
- * @param type: Interaction or Implementation
- */
- void setType(Type type);
-
- /**
- * If this attribute is present and has a value of true it indicates that
- * the qualified intents defined for this intent are mutually exclusive
- *
- * @return
- */
- boolean isMutuallyExclusive();
-
- /**
- * Set the value of mutuallyExclusive
- * @param mutuallyExclusive
- */
- void setMutuallyExclusive(boolean mutuallyExclusive);
-
- /**
- * Returns the intent description.
- *
- * @return the intent description
- */
- String getDescription();
-
- /**
- * Sets the intent description.
- *
- * @param description the intent description
- */
- void setDescription(String description);
-
- /**
- * Returns true if the model element is unresolved.
- *
- * @return true if the model element is unresolved.
- */
-
- /**
- * Get the parent intent for a qualified intent. If an intent is not qualified,
- * return null.
- * @return The parent intent or null if this intent is not qualified
- */
- Intent getQualifiableIntent();
-
- /**
- * Set the parent intent for a qualified intent
- * @param intent
- */
- void setQualifiableIntent(Intent intent);
-
- boolean isUnresolved();
-
- /**
- * Sets whether the model element is unresolved.
- *
- * @param unresolved whether the model element is unresolved
- */
- void setUnresolved(boolean unresolved);
-
-}
diff --git a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/policy/IntentMap.java b/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/policy/IntentMap.java
deleted file mode 100644
index 5b401baeb3..0000000000
--- a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/policy/IntentMap.java
+++ /dev/null
@@ -1,49 +0,0 @@
-/*
- * 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;
-
-import java.util.List;
-
-
-/**
- * Map policies to the qualified intents
- */
-public interface IntentMap {
- /**
- * Returns the intent realized by this intent map.
- *
- * @return the intent realized by this intent map
- */
- Intent getProvidedIntent();
-
- /**
- * Sets the intent realized by this intent map.
- *
- * @param providedIntent the intent realized by this intent map
- */
- void setProvidedIntent(Intent providedIntent);
-
- /**
- * Get a list of qualifiers
- *
- * @return A list of qualifiers
- */
- List<Qualifier> getQualifiers();
-}
diff --git a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/policy/PolicyAttachment.java b/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/policy/PolicyAttachment.java
deleted file mode 100644
index ee4f5b5236..0000000000
--- a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/policy/PolicyAttachment.java
+++ /dev/null
@@ -1,31 +0,0 @@
-/*
- * 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;
-
-import java.util.List;
-
-/**
- * Attach a policySet to a collection of policy subjects
- */
-public interface PolicyAttachment {
- PolicySet getPolicySet();
- void setPolicySet(PolicySet policySet);
- List<PolicySubject> getPolicySubjects();
-}
diff --git a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/policy/PolicyContainer.java b/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/policy/PolicyContainer.java
deleted file mode 100644
index 6bb7244e05..0000000000
--- a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/policy/PolicyContainer.java
+++ /dev/null
@@ -1,37 +0,0 @@
-/*
- * 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;
-
-/**
- * Base interface for policy models. Mainly allows policies to hold
- * other policies
- *
- * @version $Rev$ $Date$
- * @tuscany.spi.extension.inheritfrom
- */
-public interface PolicyContainer {
- /**
- * For complex policy models, such as ws-policy,
- * a policy provider may only match against one of a
- * number of child policy models
- *
- * @return the matching child policy object or null
- */
- <T> Object getChildPolicy(Class<T> policyType);
-}
diff --git a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/policy/PolicyExpression.java b/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/policy/PolicyExpression.java
deleted file mode 100644
index b7de263789..0000000000
--- a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/policy/PolicyExpression.java
+++ /dev/null
@@ -1,66 +0,0 @@
-/*
- * 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;
-
-import javax.xml.namespace.QName;
-
-/**
- * Interface that will abstract various types of policy specifications
- * and attachments for example WS-Policy
- *
- * @version $Rev$ $Date$
- * @tuscany.spi.extension.asclient
- */
-public interface PolicyExpression {
- /**
- * Get the QName of the policy expression
- * @return the QName of the policy expression
- */
- QName getName();
-
- /**
- * Set the QName of the policy expression
- * @param name
- */
- void setName(QName name);
-
- /**
- * Get the policy definition in the type of the specific domain
- * @return
- */
- <T> T getPolicy();
-
- /**
- * Set the policy definition
- * @param expression
- */
- <T> void setPolicy(T policy);
-
- /**
- *
- * @param unresolved
- */
- void setUnresolved(boolean unresolved);
-
- /**
- *
- * @return
- */
- boolean isUnresolved();
-}
diff --git a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/policy/PolicyFactory.java b/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/policy/PolicyFactory.java
deleted file mode 100644
index b553585c8d..0000000000
--- a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/policy/PolicyFactory.java
+++ /dev/null
@@ -1,78 +0,0 @@
-/*
- * 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;
-
-/**
- * A factory for the policy model.
- *
- * @version $Rev$ $Date$
- * @tuscany.spi.extension.asclient
- */
-public interface PolicyFactory {
-
- /**
- * Create a new intent.
- *
- * @return a new intent
- */
- Intent createIntent();
-
- /**
- * Create a new policy set.
- *
- * @return a new policy set
- */
- PolicySet createPolicySet();
-
- /**
- * Create a new intent map.
- *
- * @return a new intent map
- */
- IntentMap createIntentMap();
-
- /**
- * create a new Qualifier
- *
- * @return a Qualifier
- */
- Qualifier createQualifier();
-
- /**
- * Create a new PolicyExpression
- * @return
- */
- PolicyExpression createPolicyExpression();
-
- ExtensionType createExtensionType();
- BindingType createBindingType();
- ImplementationType createImplementationType();
-
- /**
- * Create a new ExternalAttachment
- * @return
- */
- ExternalAttachment createExternalAttachment();
-
- /**
- * Create a new DefaultIntent
- * @return
- */
- DefaultIntent createDefaultIntent();
-}
diff --git a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/policy/PolicySet.java b/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/policy/PolicySet.java
deleted file mode 100644
index 230d635e76..0000000000
--- a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/policy/PolicySet.java
+++ /dev/null
@@ -1,159 +0,0 @@
-/*
- * 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;
-
-import java.util.List;
-
-import javax.xml.namespace.QName;
-import javax.xml.xpath.XPathExpression;
-
-/**
- * Represents a policy set. See the Policy Framework specification for a
- * description of this element.
- *
- * @version $Rev$ $Date$
- * @tuscany.spi.extension.asclient
- */
-public interface PolicySet {
-
- /**
- * Returns the intent name.
- *
- * @return the intent name
- */
- QName getName();
-
- /**
- * Sets the intent name
- *
- * @param name the intent name
- */
- void setName(QName name);
-
- /**
- * Returns the list of
- *
- * @return
- */
- List<PolicySet> getReferencedPolicySets();
-
- /**
- * Returns the list of provided intents
- *
- * @return
- */
- List<Intent> getProvidedIntents();
-
- /**
- * Returns the list of concrete policies, either WS-Policy policy
- * attachments, policy references, or policies expressed in another policy
- * language.
- *
- * @return the list of concrete policies
- */
- List<PolicyExpression> getPolicies();
-
- /**
- * Returns true if the model element is unresolved.
- *
- * @return true if the model element is unresolved.
- */
- boolean isUnresolved();
-
- /**
- * Sets whether the model element is unresolved.
- *
- * @param unresolved whether the model element is unresolved
- */
- void setUnresolved(boolean unresolved);
-
- /**
- * Returns the XPath expression that is to be used to evaluate
- * if this PolicySet applies to specific policy subject
- *
- * @return the XPath expression
- */
- String getAppliesTo();
-
- /**
- * Sets the XPath expression that is to be used to evaluate
- * if this PolicySet applies to specific policy subject
- *
- */
- void setAppliesTo(String xpath);
-
- /**
- * A string which is an XPath 1.0 expression identifying one or more
- * elements (policy subject) in the Domain. It is used to declare which
- * set of elements the policySet is actually attached to.
- *
- * @return The attachTo XPath
- */
- String getAttachTo();
-
- /**
- * Set the attachTo XPath
- * @param xpath
- */
- void setAttachTo(String xpath);
-
- /**
- * Get the resolved XPathExpression for attachTo
- * @return
- */
- XPathExpression getAttachToXPathExpression();
-
- /**
- * Set the resolved XPathExpression for attachTo
- * @param expression
- */
- void setAttachToXPathExpression(XPathExpression expression);
-
- /**
- * Returns the policies / policy attachments provided thro intent maps
- *
- * @return
- */
- List<IntentMap> getIntentMaps();
-
- /**
- * Get the XPath expression for the appliesTo attribute
- * @return the XPath expression for the appliesTo attribute
- */
- XPathExpression getAppliesToXPathExpression();
-
- /**
- * Set the XPath expression for the appliesTo attribute
- * @param xpathExpression the XPath expression for the appliesTo attribute
- */
- void setAppliesToXPathExpression(XPathExpression xpathExpression);
-
- /**
- * Returns true if this PolicySet was attached via external attachment
- * For unattached and directly attached PolicySets, returns false
- * @return
- */
- boolean isExternalAttachment();
-
- /**
- * Sets whether this PolicySet has been attached via external attachment or not
- * @param value
- */
- void setIsExternalAttachment(boolean value);
-}
diff --git a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/policy/PolicySubject.java b/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/policy/PolicySubject.java
deleted file mode 100644
index e585fcf384..0000000000
--- a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/policy/PolicySubject.java
+++ /dev/null
@@ -1,57 +0,0 @@
-/*
- * 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;
-
-import java.util.List;
-
-/**
- * A policy subject is an entity in the assembly with which a policy can be
- * associated.
- *
- * For example, a policy subject can be one of the following:
- * <ul>
- * <li>composite
- * <li>component
- * <li>implementation
- * <li>service
- * <li>reference
- * <li>binding
- * <li>interface
- * </ul>
- * @tuscany.spi.extension.inheritfrom
- */
-public interface PolicySubject {
- /**
- * Get a list of required intents
- *
- * @return
- */
- List<Intent> getRequiredIntents();
-
- /**
- * Get a list of attached policySets
- *
- * @return A list of policySets
- */
- List<PolicySet> getPolicySets();
-
- ExtensionType getExtensionType();
- void setExtensionType(ExtensionType type);
-}
diff --git a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/policy/Qualifier.java b/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/policy/Qualifier.java
deleted file mode 100644
index c1862283c7..0000000000
--- a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/policy/Qualifier.java
+++ /dev/null
@@ -1,44 +0,0 @@
-/*
- * 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;
-
-import java.util.List;
-
-/**
- * A qualifier provides a list of policies for a qualified intent within the IntentMap
- */
-public interface Qualifier {
- /**
- * Get the qualified intent for this qualifier
- * @return The intent
- */
- Intent getIntent();
-
- /**
- * Set the qualified intent for this qualifier
- */
- void setIntent(Intent intent);
-
- /**
- * Get the list of policies provided by this qualifier
- * @return A list of policies
- */
- List<PolicyExpression> getPolicies();
-}
diff --git a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/policy/impl/BindingTypeImpl.java b/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/policy/impl/BindingTypeImpl.java
deleted file mode 100644
index 1a2a9c5bad..0000000000
--- a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/policy/impl/BindingTypeImpl.java
+++ /dev/null
@@ -1,38 +0,0 @@
-/*
- * 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.impl;
-
-import javax.xml.namespace.QName;
-
-import org.apache.tuscany.sca.policy.BindingType;
-
-/**
- * Concrete implementation for a BindingType
- *
- * @version $Rev$ $Date$
- */
-public class BindingTypeImpl extends ExtensionTypeImpl implements BindingType {
- protected BindingTypeImpl() {
- super();
- }
-
- public QName getBaseType() {
- return BINDING_BASE;
- }
-}
diff --git a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/policy/impl/DefaultIntentImpl.java b/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/policy/impl/DefaultIntentImpl.java
deleted file mode 100644
index c7c2426d36..0000000000
--- a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/policy/impl/DefaultIntentImpl.java
+++ /dev/null
@@ -1,60 +0,0 @@
-/*
- * 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.impl;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import javax.xml.namespace.QName;
-
-import org.apache.tuscany.sca.policy.DefaultIntent;
-import org.apache.tuscany.sca.policy.Intent;
-
-/**
- * Represents a default policy intent and the
- * intents that must not be present for it to
- * be active
- */
-public class DefaultIntentImpl implements DefaultIntent {
-
- private Intent defaultIntent = null;
- private List<Intent> mutuallyExclusiveIntents = new ArrayList<Intent>();
-
- protected DefaultIntentImpl() {
- }
-
- @Override
- public Intent getIntent() {
- return defaultIntent;
- }
-
- @Override
- public void setIntent(Intent defaultIntent) {
- this.defaultIntent = defaultIntent;
- }
-
- @Override
- public List<Intent> getMutuallyExclusiveIntents() {
- return mutuallyExclusiveIntents;
- }
-
- public String toString() {
- return String.valueOf(defaultIntent.getName());
- }
-}
diff --git a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/policy/impl/ExtensionTypeImpl.java b/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/policy/impl/ExtensionTypeImpl.java
deleted file mode 100644
index 97fbc19ced..0000000000
--- a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/policy/impl/ExtensionTypeImpl.java
+++ /dev/null
@@ -1,97 +0,0 @@
-/*
- * 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.impl;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import javax.xml.namespace.QName;
-
-import org.apache.tuscany.sca.policy.ExtensionType;
-import org.apache.tuscany.sca.policy.Intent;
-
-/**
- * Concrete implementation for a BindingType
- *
- * @version $Rev$ $Date$
- */
-public class ExtensionTypeImpl implements ExtensionType {
-
- private List<Intent> alwaysProvides = new ArrayList<Intent>();
- private List<Intent> mayProvide = new ArrayList<Intent>();
- private QName typeName;
- private boolean unResolved = true;
-
- protected ExtensionTypeImpl() {
-
- }
-
- public List<Intent> getAlwaysProvidedIntents() {
- return alwaysProvides;
- }
-
- public List<Intent> getMayProvidedIntents() {
- return mayProvide;
- }
-
- public QName getType() {
- return typeName;
- }
-
- public void setType(QName type) {
- this.typeName = type;
- }
-
- public boolean isUnresolved() {
- return unResolved;
- }
-
- public void setUnresolved(boolean unresolved) {
- this.unResolved = unresolved;
- }
-
- @Override
- public int hashCode() {
- return String.valueOf(getType()).hashCode();
- }
-
- @Override
- public boolean equals(Object obj) {
- if (obj == this) {
- return true;
- } else if (obj instanceof ExtensionTypeImpl) {
- if (getType() != null) {
- return getType().equals(((ExtensionTypeImpl)obj).getType());
- } else {
- return ((ExtensionTypeImpl)obj).getType() == null;
- }
- } else {
- return false;
- }
- }
-
- @Override
- public String toString() {
- return (this.typeName != null) ? getType().toString() : "null";
- }
-
- public QName getBaseType() {
- return null;
- }
-};
diff --git a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/policy/impl/ExternalAttachmentImpl.java b/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/policy/impl/ExternalAttachmentImpl.java
deleted file mode 100644
index 1e90e26324..0000000000
--- a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/policy/impl/ExternalAttachmentImpl.java
+++ /dev/null
@@ -1,76 +0,0 @@
-/*
- * 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.impl;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import javax.xml.xpath.XPathExpression;
-
-import org.apache.tuscany.sca.policy.ExternalAttachment;
-
-import org.apache.tuscany.sca.policy.Intent;
-import org.apache.tuscany.sca.policy.PolicySet;
-
-/**
- * An implementation of ExternalAttachment
- *
- */
-public class ExternalAttachmentImpl implements ExternalAttachment {
-
- private String attachTo;
- private List<Intent> intents = new ArrayList<Intent>();
- private List<PolicySet> policySets = new ArrayList<PolicySet>();
- private XPathExpression xpath;
- private boolean isUnresolved;
-
-
- public String getAttachTo() {
- return attachTo;
- }
-
- public void setAttachTo(String attachTo) {
- this.attachTo = attachTo;
- }
-
- public List<PolicySet> getPolicySets() {
- return this.policySets;
- }
-
- public List<Intent> getIntents() {
- return this.intents;
- }
-
- public XPathExpression getAttachToXPathExpression() {
- return this.xpath;
- }
-
- public void setAttachToXPathExpression(XPathExpression expression) {
- this.xpath = expression;
- }
-
- public boolean isUnresolved() {
- return this.isUnresolved;
- }
-
- public void setUnresolved(boolean unresolved) {
- this.isUnresolved = unresolved;
- }
-
-}
diff --git a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/policy/impl/ImplementationTypeImpl.java b/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/policy/impl/ImplementationTypeImpl.java
deleted file mode 100644
index 5c285e4d95..0000000000
--- a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/policy/impl/ImplementationTypeImpl.java
+++ /dev/null
@@ -1,39 +0,0 @@
-/*
- * 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.impl;
-
-import javax.xml.namespace.QName;
-
-import org.apache.tuscany.sca.policy.ImplementationType;
-
-/**
- * Concrete implementation for a Implementation Type
- *
- * @version $Rev$ $Date$
- */
-public class ImplementationTypeImpl extends ExtensionTypeImpl implements ImplementationType {
- protected ImplementationTypeImpl() {
- super();
- }
-
- public QName getBaseType() {
- return IMPLEMENTATION_BASE;
- }
-
-}
diff --git a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/policy/impl/IntentImpl.java b/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/policy/impl/IntentImpl.java
deleted file mode 100644
index 27a77f3ba8..0000000000
--- a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/policy/impl/IntentImpl.java
+++ /dev/null
@@ -1,168 +0,0 @@
-/*
- * 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.impl;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import javax.xml.namespace.QName;
-
-import org.apache.tuscany.sca.policy.ExtensionType;
-import org.apache.tuscany.sca.policy.Intent;
-
-/**
- * Represents a policy intent.
- *
- * @version $Rev$ $Date$
- */
-public class IntentImpl implements Intent {
-
- private QName name;
- private Type type;
- private List<ExtensionType> constrainedTypes = new ArrayList<ExtensionType>();
- private String description;
- private List<Intent> qualifiedIntents = new ArrayList<Intent>();
- private Intent defaultQualifiedIntent;
- private Intent parent;
- private List<Intent> requiredIntents = new ArrayList<Intent>();
- private List<Intent> excludedIntents = new ArrayList<Intent>();
- private boolean mutuallyExclusive;
- private boolean unresolved = true;
-
- protected IntentImpl() {
- }
-
- public QName getName() {
- return name;
- }
-
- public void setName(QName name) {
- this.name = name;
- }
-
- public List<ExtensionType> getConstrainedTypes() {
- return constrainedTypes;
- }
-
- public void setConstrainedTypes(List<ExtensionType> constrainedTypes) {
- this.constrainedTypes = constrainedTypes;
- }
-
- public String getDescription() {
- return description;
- }
-
- public void setDescription(String description) {
- this.description = description;
- }
-
- public Intent getQualifiableIntent() {
- return parent;
- }
-
- public void setQualifiableIntent(Intent parent) {
- this.parent = parent;
- }
-
- public List<Intent> getQualifiedIntents() {
- return qualifiedIntents;
- }
-
- public void setQualifiedIntents(List<Intent> qualifiedIntents) {
- this.qualifiedIntents = qualifiedIntents;
- }
-
- public List<Intent> getRequiredIntents() {
- return requiredIntents;
- }
-
- public void setRequiredIntents(List<Intent> requiredIntents) {
- this.requiredIntents = requiredIntents;
- }
-
- public List<Intent> getExcludedIntents() {
- return excludedIntents;
- }
-
- public void setExcludedIntents(List<Intent> excludedIntents) {
- this.excludedIntents = excludedIntents;
- }
-
- public boolean isUnresolved() {
- return unresolved;
- }
-
- public void setUnresolved(boolean unresolved) {
- this.unresolved = unresolved;
- }
-
- public Type getType() {
- return type;
- }
-
- public void setType(Type type) {
- this.type = type;
- }
-
- public boolean isMutuallyExclusive() {
- return mutuallyExclusive;
- }
-
- public void setMutuallyExclusive(boolean mutuallyExclusive) {
- this.mutuallyExclusive = mutuallyExclusive;
- }
-
- public Intent getDefaultQualifiedIntent() {
- return defaultQualifiedIntent;
- }
-
- public void setDefaultQualifiedIntent(Intent defaultQualifiedIntent) {
- this.defaultQualifiedIntent = defaultQualifiedIntent;
- }
-
-
- @Override
- public int hashCode() {
- final int prime = 31;
- int result = 1;
- result = prime * result + ((name == null) ? 0 : name.hashCode());
- return result;
- }
-
- @Override
- public boolean equals(Object obj) {
- if (this == obj)
- return true;
- if (obj == null)
- return false;
- if (getClass() != obj.getClass())
- return false;
- IntentImpl other = (IntentImpl)obj;
- if (name == null) {
- if (other.name != null)
- return false;
- } else if (!name.equals(other.name))
- return false;
- return true;
- }
-
- public String toString() {
- return String.valueOf(name);
- }
-}
diff --git a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/policy/impl/IntentMapImpl.java b/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/policy/impl/IntentMapImpl.java
deleted file mode 100644
index 357b7afab4..0000000000
--- a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/policy/impl/IntentMapImpl.java
+++ /dev/null
@@ -1,78 +0,0 @@
-/*
- * 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.impl;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.apache.tuscany.sca.policy.Intent;
-import org.apache.tuscany.sca.policy.IntentMap;
-import org.apache.tuscany.sca.policy.Qualifier;
-
-/**
- * Represents an intent map.
- *
- * @version $Rev$ $Date$
- */
-public class IntentMapImpl implements IntentMap {
-
- private boolean unresolved;
- private Intent providedIntent;
- private List<Qualifier> qualifiers = new ArrayList<Qualifier>();
-
- protected IntentMapImpl() {
- }
-
- public boolean isUnresolved() {
- return unresolved;
- }
-
- public void setUnresolved(boolean unresolved) {
- this.unresolved = unresolved;
- }
-
- public Intent getProvidedIntent() {
- return providedIntent;
- }
-
- public void setProvidedIntent(Intent providedIntent) {
- this.providedIntent = providedIntent;
- }
-
- public List<Qualifier> getQualifiers() {
- return qualifiers;
- }
-
- @Override
- public boolean equals(Object obj) {
- if (this == obj)
- return true;
- if (obj == null)
- return false;
- if (getClass() != obj.getClass())
- return false;
- IntentMapImpl other = (IntentMapImpl)obj;
- if (providedIntent == null) {
- if (other.providedIntent != null)
- return false;
- } else if (!providedIntent.equals(other.providedIntent))
- return false;
- return true;
- }
-}
diff --git a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/policy/impl/PolicyExpressionImpl.java b/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/policy/impl/PolicyExpressionImpl.java
deleted file mode 100644
index b9f9fa5eb4..0000000000
--- a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/policy/impl/PolicyExpressionImpl.java
+++ /dev/null
@@ -1,87 +0,0 @@
-/*
- * 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.impl;
-
-import javax.xml.namespace.QName;
-
-import org.apache.tuscany.sca.policy.PolicyExpression;
-
-public class PolicyExpressionImpl implements PolicyExpression {
- private QName name;
- private Object policy;
- private boolean unresolved = true;
-
- protected PolicyExpressionImpl() {
- }
-
- public QName getName() {
- return name;
- }
-
- @SuppressWarnings("unchecked")
- public <T> T getPolicy() {
- return (T)policy;
- }
-
- public boolean isUnresolved() {
- return unresolved;
- }
-
- public void setName(QName name) {
- this.name = name;
- }
-
- public <T> void setPolicy(T policy) {
- this.policy = policy;
- }
-
- public void setUnresolved(boolean unresolved) {
- this.unresolved = unresolved;
- }
-
- public String toString() {
- return String.valueOf(name);
- }
-
- @Override
- public int hashCode() {
- final int prime = 31;
- int result = 1;
- result = prime * result + ((name == null) ? 0 : name.hashCode());
- return result;
- }
-
- @Override
- public boolean equals(Object obj) {
- if (this == obj)
- return true;
- if (obj == null)
- return false;
- if (getClass() != obj.getClass())
- return false;
- PolicyExpressionImpl other = (PolicyExpressionImpl)obj;
- if (name == null) {
- if (other.name != null)
- return false;
- } else if (!name.equals(other.name))
- return false;
- return true;
- }
-}
diff --git a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/policy/impl/PolicyFactoryImpl.java b/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/policy/impl/PolicyFactoryImpl.java
deleted file mode 100644
index e1561a99b6..0000000000
--- a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/policy/impl/PolicyFactoryImpl.java
+++ /dev/null
@@ -1,80 +0,0 @@
-/*
- * 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.impl;
-
-import org.apache.tuscany.sca.policy.BindingType;
-import org.apache.tuscany.sca.policy.DefaultIntent;
-import org.apache.tuscany.sca.policy.ExtensionType;
-import org.apache.tuscany.sca.policy.ImplementationType;
-import org.apache.tuscany.sca.policy.Intent;
-import org.apache.tuscany.sca.policy.IntentMap;
-import org.apache.tuscany.sca.policy.PolicyExpression;
-import org.apache.tuscany.sca.policy.PolicyFactory;
-import org.apache.tuscany.sca.policy.PolicySet;
-import org.apache.tuscany.sca.policy.Qualifier;
-
-import org.apache.tuscany.sca.policy.ExternalAttachment;
-
-/**
- * A factory for the policy model.
- *
- * @version $Rev$ $Date$
- */
-public abstract class PolicyFactoryImpl implements PolicyFactory {
-
- public Intent createIntent() {
- return new IntentImpl();
- }
-
- public PolicySet createPolicySet() {
- return new PolicySetImpl();
- }
-
- public IntentMap createIntentMap() {
- return new IntentMapImpl();
- }
-
- public Qualifier createQualifier() {
- return new QualifierImpl();
- }
-
- public PolicyExpression createPolicyExpression() {
- return new PolicyExpressionImpl();
- }
-
- public BindingType createBindingType() {
- return new BindingTypeImpl();
- }
-
- public ImplementationType createImplementationType() {
- return new ImplementationTypeImpl();
- }
-
- public ExtensionType createExtensionType() {
- return new ExtensionTypeImpl();
- }
-
- public ExternalAttachment createExternalAttachment() {
- return new ExternalAttachmentImpl();
- }
-
- public DefaultIntent createDefaultIntent() {
- return new DefaultIntentImpl();
- }
-}
diff --git a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/policy/impl/PolicySetImpl.java b/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/policy/impl/PolicySetImpl.java
deleted file mode 100644
index 22e6e4d4cf..0000000000
--- a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/policy/impl/PolicySetImpl.java
+++ /dev/null
@@ -1,154 +0,0 @@
-/*
- * 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.impl;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import javax.xml.namespace.QName;
-import javax.xml.xpath.XPathExpression;
-
-import org.apache.tuscany.sca.policy.Intent;
-import org.apache.tuscany.sca.policy.IntentMap;
-import org.apache.tuscany.sca.policy.PolicyExpression;
-import org.apache.tuscany.sca.policy.PolicySet;
-
-/**
- * Represents a policy set.
- *
- * @version $Rev$ $Date$
- */
-public class PolicySetImpl implements PolicySet {
-
- private QName name;
- private String appliesTo;
- private String attachTo;
- private List<Intent> providedIntents = new ArrayList<Intent>();
- private List<PolicySet> referencedPolicySets = new ArrayList<PolicySet>();
- private boolean unresolved = true;
-
- private XPathExpression appliesToXPathExpression;
- private XPathExpression attachToXPathExpression;
-
- private List<IntentMap> intentMaps = new ArrayList<IntentMap>();
- private List<PolicyExpression> policies = new ArrayList<PolicyExpression>();
- private boolean isExternalAttachment;
-
- public QName getName() {
- return name;
- }
-
- public void setName(QName name) {
- this.name = name;
- }
-
- public String getAppliesTo() {
- return appliesTo;
- }
-
- public void setAppliesTo(String appliesTo) {
- this.appliesTo = appliesTo;
- }
-
- public String getAttachTo() {
- return attachTo;
- }
-
- public void setAttachTo(String attachTo) {
- this.attachTo = attachTo;
- }
-
- public boolean isUnresolved() {
- return unresolved;
- }
-
- public void setUnresolved(boolean unresolved) {
- this.unresolved = unresolved;
- }
-
- public XPathExpression getAppliesToXPathExpression() {
- return appliesToXPathExpression;
- }
-
- public void setAppliesToXPathExpression(XPathExpression appliesToXPathExpression) {
- this.appliesToXPathExpression = appliesToXPathExpression;
- }
-
- public XPathExpression getAttachToXPathExpression() {
- return attachToXPathExpression;
- }
-
- public void setAttachToXPathExpression(XPathExpression attachToXPathExpression) {
- this.attachToXPathExpression = attachToXPathExpression;
- }
-
- public List<IntentMap> getIntentMaps() {
- return intentMaps;
- }
-
- public List<Intent> getProvidedIntents() {
- return providedIntents;
- }
-
- public List<PolicySet> getReferencedPolicySets() {
- return referencedPolicySets;
- }
-
- public List<PolicyExpression> getPolicies() {
- return policies;
- }
-
- public String toString() {
- return String.valueOf(name);
- }
-
- @Override
- public int hashCode() {
- final int prime = 31;
- int result = 1;
- result = prime * result + ((name == null) ? 0 : name.hashCode());
- return result;
- }
-
- @Override
- public boolean equals(Object obj) {
- if (this == obj)
- return true;
- if (obj == null)
- return false;
- if (getClass() != obj.getClass())
- return false;
- PolicySetImpl other = (PolicySetImpl)obj;
- if (name == null) {
- if (other.name != null)
- return false;
- } else if (!name.equals(other.name))
- return false;
- return true;
- }
-
- public boolean isExternalAttachment() {
- return this.isExternalAttachment;
- }
-
- public void setIsExternalAttachment(boolean value) {
- this.isExternalAttachment = value;
- }
-
-}
diff --git a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/policy/impl/QualifierImpl.java b/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/policy/impl/QualifierImpl.java
deleted file mode 100644
index 102bea8d41..0000000000
--- a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/policy/impl/QualifierImpl.java
+++ /dev/null
@@ -1,48 +0,0 @@
-/*
- * 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.impl;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.apache.tuscany.sca.policy.Intent;
-import org.apache.tuscany.sca.policy.PolicyExpression;
-import org.apache.tuscany.sca.policy.Qualifier;
-
-public class QualifierImpl implements Qualifier {
- private Intent intent;
- private List<PolicyExpression> policies = new ArrayList<PolicyExpression>();
-
- protected QualifierImpl() {
- }
-
- public Intent getIntent() {
- return intent;
- }
-
- public List<PolicyExpression> getPolicies() {
- return policies;
- }
-
- public void setIntent(Intent intent) {
- this.intent = intent;
- }
-
-}
diff --git a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/policy/util/PolicyHelper.java b/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/policy/util/PolicyHelper.java
deleted file mode 100644
index d153e50149..0000000000
--- a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/java/org/apache/tuscany/sca/policy/util/PolicyHelper.java
+++ /dev/null
@@ -1,117 +0,0 @@
-/*
- * 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.util;
-
-import java.util.ArrayList;
-import java.util.Collection;
-import java.util.List;
-
-import javax.xml.namespace.QName;
-
-import org.apache.tuscany.sca.assembly.Binding;
-import org.apache.tuscany.sca.definitions.Definitions;
-import org.apache.tuscany.sca.policy.Intent;
-import org.apache.tuscany.sca.policy.PolicyExpression;
-import org.apache.tuscany.sca.policy.PolicySet;
-import org.apache.tuscany.sca.policy.PolicySubject;
-
-/**
- * A utility that helps to navigate the policy model
- * @tuscany.spi.extension.asclient
- */
-public class PolicyHelper {
- public static PolicySet getPolicySet(PolicySubject subject, QName policySetName) {
- for (PolicySet ps : subject.getPolicySets()) {
- if (ps.getName().equals(policySetName)) {
- return ps;
- }
- }
- return null;
- }
-
- public static Intent getIntent(Definitions subject, QName intentName) {
- for (Intent i : subject.getIntents()) {
- if (i.getName().equals(intentName)) {
- return i;
- }
- for (Intent qualifiedIntent : i.getQualifiedIntents()){
- if (qualifiedIntent.getName().equals(intentName)) {
- return qualifiedIntent;
- }
- }
- }
- return null;
- }
-
- public static PolicySet getPolicySet(Definitions subject, QName policySetName) {
- for (PolicySet ps : subject.getPolicySets()) {
- if (ps.getName().equals(policySetName)) {
- return ps;
- }
- }
- return null;
- }
-
- public static Intent getIntent(PolicySubject subject, QName intentName) {
- for (Intent i : subject.getRequiredIntents()) {
- if (i.getName().equals(intentName)) {
- return i;
- }
- }
- return null;
- }
-
- public static Collection<PolicyExpression> getPolicyExpressions(PolicySubject subject, QName policyName) {
- Collection<PolicyExpression> policies = new ArrayList<PolicyExpression>();
- for (PolicySet ps : subject.getPolicySets()) {
- for (PolicyExpression exp : ps.getPolicies()) {
- if (exp.getName().equals(policyName)) {
- policies.add(exp);
- }
- }
- }
- return policies;
- }
-
- public static Collection<Object> getPolicies(PolicySubject subject, QName policyName) {
- Collection<Object> policies = new ArrayList<Object>();
- for (PolicySet ps : subject.getPolicySets()) {
- for (PolicyExpression exp : ps.getPolicies()) {
- if (exp.getName().equals(policyName)) {
- policies.add(exp.getPolicy());
- }
- }
- }
- return policies;
- }
-
- public static boolean isIntentRequired(PolicySubject subject, QName intent) {
-
- List<Intent> intents = ((PolicySubject)subject).getRequiredIntents();
- for (Intent i : intents) {
- if (intent.equals(i.getName())) {
- return true;
- }
- }
-
- return getPolicySet(subject, intent) != null;
- }
-
-}
diff --git a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/resources/META-INF/services/org.apache.tuscany.sca.assembly.AssemblyFactory b/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/resources/META-INF/services/org.apache.tuscany.sca.assembly.AssemblyFactory
deleted file mode 100644
index 20189eae98..0000000000
--- a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/resources/META-INF/services/org.apache.tuscany.sca.assembly.AssemblyFactory
+++ /dev/null
@@ -1,18 +0,0 @@
-# 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.
-
-org.apache.tuscany.sca.assembly.DefaultAssemblyFactory
diff --git a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/resources/META-INF/services/org.apache.tuscany.sca.assembly.SCABindingFactory b/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/resources/META-INF/services/org.apache.tuscany.sca.assembly.SCABindingFactory
deleted file mode 100644
index 6e24d0bcfd..0000000000
--- a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/resources/META-INF/services/org.apache.tuscany.sca.assembly.SCABindingFactory
+++ /dev/null
@@ -1,19 +0,0 @@
-# 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.
-
-org.apache.tuscany.sca.assembly.impl.SCABindingFactoryImpl
-
diff --git a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/resources/META-INF/services/org.apache.tuscany.sca.assembly.builder.BuilderExtensionPoint b/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/resources/META-INF/services/org.apache.tuscany.sca.assembly.builder.BuilderExtensionPoint
deleted file mode 100644
index 61171ac041..0000000000
--- a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/resources/META-INF/services/org.apache.tuscany.sca.assembly.builder.BuilderExtensionPoint
+++ /dev/null
@@ -1,18 +0,0 @@
-# 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.
-
-org.apache.tuscany.sca.assembly.builder.DefaultBuilderExtensionPoint
diff --git a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/resources/META-INF/services/org.apache.tuscany.sca.definitions.DefinitionsFactory b/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/resources/META-INF/services/org.apache.tuscany.sca.definitions.DefinitionsFactory
deleted file mode 100644
index c1cb41d967..0000000000
--- a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/resources/META-INF/services/org.apache.tuscany.sca.definitions.DefinitionsFactory
+++ /dev/null
@@ -1,17 +0,0 @@
-# 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.
-org.apache.tuscany.sca.definitions.DefaultDefinitionsFactory
diff --git a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/resources/META-INF/services/org.apache.tuscany.sca.interfacedef.InterfaceContractMapper b/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/resources/META-INF/services/org.apache.tuscany.sca.interfacedef.InterfaceContractMapper
deleted file mode 100644
index e2da378609..0000000000
--- a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/resources/META-INF/services/org.apache.tuscany.sca.interfacedef.InterfaceContractMapper
+++ /dev/null
@@ -1,19 +0,0 @@
-# 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.
-
-org.apache.tuscany.sca.interfacedef.impl.InterfaceContractMapperImpl
-
diff --git a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/resources/META-INF/services/org.apache.tuscany.sca.policy.PolicyFactory b/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/resources/META-INF/services/org.apache.tuscany.sca.policy.PolicyFactory
deleted file mode 100644
index 6ff07189e1..0000000000
--- a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/resources/META-INF/services/org.apache.tuscany.sca.policy.PolicyFactory
+++ /dev/null
@@ -1,18 +0,0 @@
-# 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.
-
-org.apache.tuscany.sca.policy.DefaultPolicyFactory
diff --git a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/resources/org/apache/tuscany/sca/assembly/builder/assembly-validation-messages.properties b/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/resources/org/apache/tuscany/sca/assembly/builder/assembly-validation-messages.properties
deleted file mode 100644
index 91b1721bf7..0000000000
--- a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/resources/org/apache/tuscany/sca/assembly/builder/assembly-validation-messages.properties
+++ /dev/null
@@ -1,85 +0,0 @@
-#
-#
-# 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.
-#
-DuplicateComponentName = [ASM50001] Duplicate component name: Composite = {0} Component = {1}
-DuplicateComponentServiceName = Duplicate component service name: Component = {0} Service = {1}
-DuplicateComponentReferenceName = Duplicate component reference name: Component = {0} Reference = {1}
-DuplicateComponentPropertyName = Duplicate component property name: Component = {0} Property = {1}
-NoComponentImplementation = No implementation for component: Component = {0}
-ServiceNotFoundForComponentService = Component type service not found for component service (missing @Remotable annotation?): Component = {0} Service = {1}
-UnresolvedComponentImplementation = [ASM60030,JCI50004,JCI80001] Component implementation not resolved: Component = {0} Uri = {1}
-DuplicateImplementationPropertyName = [ASM40005,ASM60014] Duplicate implementation property name: Component = {0} Property = {1}
-DuplicateImplementationServiceName = [ASM40003,ASM60003,JCA90045] Duplicate implementation service name: Component = {0} Service = {1}
-DuplicateImplementationReferenceName = [ASM40004,ASM50007,ASM60006] Duplicate implementation reference name: Component = {0} Reference = {1}
-PropertyNotFound = [ASM50031] Property not found for component property: Component = {0} Property = {1}
-PropertyMustSupplyIncompatible = Component property mustSupply attribute incompatible with property: Component = {0} Property = {1}
-PropertyMustSupplyNull = [ASM40011,ASM60034] No value configured on a mustSupply property: Component = {0} Property = {1}
-PropertyOverrideManyAttribute = Component property many attribute incompatible with property: Component = {0} Property = {1}
-ReferenceNotFoundForComponentReference = [ASM50008] Component type reference not found for component reference: Component = {0} Reference = {1}
-CompositeReferenceIncompatibleMultiplicity = [ASM60011] Composite reference multiplicity incompatible with component reference multiplicity: Composite = {0} Composite reference = {1} Component reference = {2}
-ReferenceIncompatibleMultiplicity = [ASM50009] Component reference multiplicity incompatible with reference multiplicity: Component = {0} Reference = {1}
-ReferenceIncompatibleInterface = Incompatible interfaces on component reference and target: Composite = {0} Reference = {1} Service = {2}
-ReferencePromotionIncompatibleInterface = Promoted reference interface incompatible with promoting reference: Promoting interface = {0} Promoted = {1}
-ReferencePromotionInterfacesNotEqual = Peer promoted references not equal: First interface = {0} second interface = {1}
-ReferenceIncompatibleComponentInterface = [JCA30001,JCA30002,JCA30003,JCA90046] Component reference interface incompatible with implementation reference interface: Component = {0} Reference = {1} {2}
-ServiceIncompatibleComponentInterface = [ASM50004,JCA30002,JCI80001] Component service interface incompatible with implementation service interface: Component = {0} Service = {1} {2}
-MultipleBindingsForService = Multiple bindings with the same name for a service: Service = {0} Binding name = {1}
-MultipleBindingsForReference = Multiple bindings with the same name for a reference: Reference = {0} Binding name = {1}
-ReferenceWithoutTargets = [ASM60033] No targets for reference: Composite = {0} Reference = {1}
-PromotedReferenceNotFound = [ASM60007] Promoted component reference not found: Composite = {0} Reference = {1}
-PromotedServiceNotFound = [ASM60004,ASM60032] Promoted component service not found: Composite = {0} Service = {1}
-NoSCABindingAvailableForUnresolvedService = A local service cannot be found for reference {0} target {1} and there is no SCA binding available to represent the unresolved target
-NoMatchingBinding = Component reference {0} does not have a binding which matches the bindings of service {1}
-NoMatchingCallbackBinding = Component reference {0} does not have a callback binding which matches the callback bindings of service {1}
-ReferenceEndPointMixWithTarget = [ASM50026] Composite {0} Component {1} Reference {2} must not specify endpoints using both target attribute and with a binding child element
-CompositeAlreadyIncluded = Composite {0} has already been included.
-ComponentReferenceMoreWire = Component reference {0} has more than one wires
-WireTargetNotFound = Wire target not found : {0}
-WireSourceNotFound = Wire source not found : {0}
-WireIncompatibleInterface = Incompatible interfaces on wire source and target : source = {0} target = {1}
-ComponentIncompatibleInterface = Incompatible interfaces on component reference and target : reference = {0} target = {1}
-TooManyReferenceTargets = [ASM50022] Too many targets on reference: {0}
-ReferenceInterfaceNotSubSet = [ASM60008,ASM60013] Interface of composite reference {0} must be compatible with the interface declared by promoted component reference. {1}
-ServiceInterfaceNotSubSet = Interface of composite service {0} must be subset of the interface declared by promoted component service. {1}
-NoComponentReferenceTarget = [ASM60028] No target services found for the component reference to be autowired: {0}
-NoTypeForComponentProperty = No type specified on component property: Component = {0} Property = {1}
-URLSyntaxException = URLSyntaxException when creating binding URI at component = {0} service = {1} binding = {2}
-IllegalCompositeIncusion = Local Composite {0} cannot include a non-local composite {1}
-PropertySourceNotFound = The property source {0} for property {1} in component {2} cannot be resolved to a composite property
-PropertySourceValueInvalid = The property source {0} for property {1} in component {2} has an invalid value. It should start with $ followed by the name of a composite property
-PropertySourceXPathInvalid = The property source {0} for property {1} in component {2} has an invalid XPath expression. The following error was returned while processing the XPath expression: {3}
-PropertyFileValueInvalid = The property file {0} for property {1} in component {2} is an invalid value. The following error was returned while processing the file name: {3}
-PolicyRelatedException = Policy Related Exception occured due to : {0}
-IntentNotFound = Intent {0} is not defined in SCA definitions
-PolicySetNotFound = PolicySet {0} is not defined in SCA definitions
-MutuallyExclusiveIntents = [POL40009,ASM60009,ASM60010] Intent {0} and {1} are mutually exclusive
-PropertyXpathExpressionReturnedNull = The property XPath expression for component {0} property {1} expression {2} did not match anything in the source property
-PropertyHasManyValues = [ASM50032] The property component {0} property {1} has many values but its "many" attribute is set to false
-PropertXSDTypesDontMatch = [ASM_5036] The property component {0} property {1} has XSD type {2} while its component type property has the XSD type {3}
-PropertXSDElementsDontMatch = [ASM_5036] The property component {0} property {1} has XSD element {2} while its component type property has the XSD element {3}
-IntentNotSatisfied = The intent {0} associated with policy subject {1} has no matching policy set
-URIFoundOnServiceSCABinding = [ASM90005] The SCA binding {0} on component {1} service {2} should not have a URI and the URI is currently set to {3}
-CompositeReferencePromotesNonOverridableReference = [ASM50042] Composite reference promotes component reference with 1..1 multiplicity and nonOverridable flag set true: Composite = {0} Composite reference = {1} Component reference = {2}
-PropertyValueDoesNotMatchSimpleType = [ASM50027] The property {0} on component {1} has a value which does not match the simple type {2} with which it is associated
-PropertyValueDoesNotMatchComplexType = [ASM50038] The property {0} on component {1} has a value which does not match the complex type {2} with which it is associated. Validation reported {3}
-PropertyValueDoesNotMatchElement = [ASM50029] The property {0} on component {1} has a value which does not match the element {2} with which it is associated. Validation reported {3}
-EPRIncompatibleInterface = [BWS20007] The reference interface is incompatible with the interface of the reference binding {0}
-EPIncompatibleInterface = [BWS20007] The service interface is incompatible with the interface of the service binding {0}
-PromotedCallbackReferenceNotFound = For component {0} and service {1} the promoted component {2} does not have a callback reference called {3} which should have been created automatically by Tuscany
-PromotedCallbackServiceNotFound = For component {0} and reference {1} the promoted component {2} does not have a callback service called {3} which should have been created automatically by Tuscany
diff --git a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/resources/org/apache/tuscany/sca/assembly/builder/assembly-validation-messages_it.properties b/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/resources/org/apache/tuscany/sca/assembly/builder/assembly-validation-messages_it.properties
deleted file mode 100644
index b94d37ba2d..0000000000
--- a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/resources/org/apache/tuscany/sca/assembly/builder/assembly-validation-messages_it.properties
+++ /dev/null
@@ -1,30 +0,0 @@
-#
-#
-# 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.
-#
-#
-DuplicateComponentName = Nome del componente duplicato: Composite = {0} Component = {1}
-DuplicateComponentServiceName = Nome del servizio del componente duplicato: Component = {0} Service = {1}
-DuplicateComponentReferenceName = Nome del reference del componente duplicato: Component = {0} Reference = {1}
-DuplicateComponentPropertyName = Nome della property del componente duplicato: Component = {0} Property = {1}
-NoComponentImplementation = Implementazione insistente per il componente: Component = {0}
-ServiceNotFoundForComponentService = Servizio non trovato per il componente: Component = {0} Service = {1}
-UnresolvedComponentImplementation = Implementazione del componente non trovata: Component = {0} Uri = {1}
-DuplicateImplementationPropertyName = Nome della property del componente duplicata: Component = {0} Property = {1}
-DuplicateImplementationReferenceName = Nome del riferimento duplicato: Component = {0} Reference = {1}
-PropertyNotFound = Property non trovata per il componente: Component = {0} Property = {1}
diff --git a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/resources/org/apache/tuscany/sca/assembly/builder/definitions-validation-messages.properties b/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/resources/org/apache/tuscany/sca/assembly/builder/definitions-validation-messages.properties
deleted file mode 100644
index d3905035b9..0000000000
--- a/sca-java-2.x/tags/2.0.1-RC1/modules/assembly/src/main/resources/org/apache/tuscany/sca/assembly/builder/definitions-validation-messages.properties
+++ /dev/null
@@ -1,25 +0,0 @@
-#
-#
-# 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.
-#
-#
-
-DuplicateIntent = [ASM10001,POL30002] Duplicate intent {0} found in domain
-DuplicatePolicysSet = Duplicate policy set {0} found in domain
-DuplicateImplementationType = Duplicate implementation type {0} found in domain
-DuplicateBindingType = [POL40020] Duplicate binding type {0} found in domain