summaryrefslogtreecommitdiffstats
path: root/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-policy/LICENSE205
-rw-r--r--sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-policy/NOTICE6
-rw-r--r--sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-policy/pom.xml94
-rw-r--r--sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-policy/src/main/java/org/apache/tuscany/sca/binding/jms/policy/JMSBindingDefinitionsProvider.java66
-rw-r--r--sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-policy/src/main/java/org/apache/tuscany/sca/binding/jms/policy/authentication/token/JMSTokenAuthenticationPolicy.java56
-rw-r--r--sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-policy/src/main/java/org/apache/tuscany/sca/binding/jms/policy/authentication/token/JMSTokenAuthenticationPolicyProcessor.java112
-rw-r--r--sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-policy/src/main/java/org/apache/tuscany/sca/binding/jms/policy/authentication/token/JMSTokenAuthenticationPolicyProviderFactory.java75
-rw-r--r--sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-policy/src/main/java/org/apache/tuscany/sca/binding/jms/policy/authentication/token/JMSTokenAuthenticationReferencePolicyInterceptor.java100
-rw-r--r--sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-policy/src/main/java/org/apache/tuscany/sca/binding/jms/policy/authentication/token/JMSTokenAuthenticationReferencePolicyProvider.java91
-rw-r--r--sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-policy/src/main/java/org/apache/tuscany/sca/binding/jms/policy/authentication/token/JMSTokenAuthenticationServicePolicyInterceptor.java100
-rw-r--r--sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-policy/src/main/java/org/apache/tuscany/sca/binding/jms/policy/authentication/token/JMSTokenAuthenticationServicePolicyProvider.java88
-rw-r--r--sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-policy/src/main/java/org/apache/tuscany/sca/binding/jms/policy/header/JMSHeaderPolicy.java131
-rw-r--r--sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-policy/src/main/java/org/apache/tuscany/sca/binding/jms/policy/header/JMSHeaderPolicyProcessor.java210
-rw-r--r--sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-policy/src/main/java/org/apache/tuscany/sca/binding/jms/policy/header/JMSHeaderPolicyProviderFactory.java75
-rw-r--r--sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-policy/src/main/java/org/apache/tuscany/sca/binding/jms/policy/header/JMSHeaderReferencePolicyInterceptor.java101
-rw-r--r--sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-policy/src/main/java/org/apache/tuscany/sca/binding/jms/policy/header/JMSHeaderReferencePolicyProvider.java90
-rw-r--r--sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-policy/src/main/resources/META-INF/services/org.apache.tuscany.sca.contribution.processor.StAXArtifactProcessor20
-rw-r--r--sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-policy/src/main/resources/META-INF/services/org.apache.tuscany.sca.provider.PolicyProviderFactory19
-rw-r--r--sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-policy/src/main/resources/META-INF/services/org.apache.tuscany.sca.provider.SCADefinitionsProvider19
-rw-r--r--sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-policy/src/main/resources/binding-jms-policy-validation-messages.properties23
-rw-r--r--sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-policy/src/main/resources/org/apache/tuscany/sca/binding/jms/policy/definitions.xml84
-rw-r--r--sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-policy/src/test/java/org/apache/tuscany/sca/binding/jms/policy/PolicyProcessorTestCase.java91
-rw-r--r--sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-policy/src/test/resources/org/apache/tuscany/sca/binding/jms/policy/mock_policy_definitions.xml39
-rw-r--r--sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/LICENSE205
-rw-r--r--sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/NOTICE6
-rw-r--r--sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/pom.xml142
-rw-r--r--sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/context/JMSBindingContext.java143
-rw-r--r--sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/headers/HeaderReferenceInterceptor.java182
-rw-r--r--sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/operationselector/jmsdefault/runtime/OperationSelectorJMSDefaultProviderFactory.java69
-rw-r--r--sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/operationselector/jmsdefault/runtime/OperationSelectorJMSDefaultServiceInterceptor.java196
-rw-r--r--sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/operationselector/jmsdefault/runtime/OperationSelectorJMSDefaultServiceProvider.java59
-rw-r--r--sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/operationselector/jmsuserprop/runtime/OperationSelectorJMSUserPropProviderFactory.java62
-rw-r--r--sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/operationselector/jmsuserprop/runtime/OperationSelectorJMSUserPropServiceInterceptor.java107
-rw-r--r--sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/operationselector/jmsuserprop/runtime/OperationSelectorJMSUserPropServiceProvider.java54
-rw-r--r--sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/provider/AbstractMessageProcessor.java136
-rw-r--r--sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/provider/BytesMessageProcessor.java124
-rw-r--r--sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/provider/DefaultJMSResourceFactoryExtensionPoint.java30
-rw-r--r--sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/provider/DefaultMessageProcessor.java287
-rw-r--r--sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/provider/JMSBindingProviderFactory.java70
-rw-r--r--sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/provider/JMSBindingReferenceBindingProvider.java170
-rw-r--r--sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/provider/JMSBindingServiceBindingProvider.java228
-rw-r--r--sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/provider/JMSMessageProcessor.java55
-rw-r--r--sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/provider/JMSMessageProcessorUtil.java75
-rw-r--r--sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/provider/JMSResourceFactory.java95
-rw-r--r--sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/provider/JMSResourceFactoryExtensionPoint.java28
-rw-r--r--sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/provider/JMSResourceFactoryImpl.java282
-rw-r--r--sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/provider/ObjectMessageProcessor.java230
-rw-r--r--sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/provider/RRBJMSBindingInvoker.java270
-rw-r--r--sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/provider/TextMessageProcessor.java79
-rw-r--r--sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/provider/XMLBytesMessageProcessor.java134
-rw-r--r--sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/provider/XMLTextMessageProcessor.java129
-rw-r--r--sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/transport/TransportReferenceInterceptor.java163
-rw-r--r--sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/transport/TransportServiceInterceptor.java188
-rw-r--r--sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wire/CallbackDestinationInterceptor.java96
-rw-r--r--sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wire/OperationPropertiesInterceptor.java78
-rw-r--r--sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmsbytes/runtime/WireFormatJMSBytesProviderFactory.java66
-rw-r--r--sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmsbytes/runtime/WireFormatJMSBytesReferenceInterceptor.java123
-rw-r--r--sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmsbytes/runtime/WireFormatJMSBytesReferenceProvider.java97
-rw-r--r--sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmsbytes/runtime/WireFormatJMSBytesServiceInterceptor.java114
-rw-r--r--sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmsbytes/runtime/WireFormatJMSBytesServiceProvider.java101
-rw-r--r--sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmsbytesxml/runtime/WireFormatJMSBytesXMLProviderFactory.java70
-rw-r--r--sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmsbytesxml/runtime/WireFormatJMSBytesXMLReferenceInterceptor.java122
-rw-r--r--sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmsbytesxml/runtime/WireFormatJMSBytesXMLReferenceProvider.java105
-rw-r--r--sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmsbytesxml/runtime/WireFormatJMSBytesXMLServiceInterceptor.java109
-rw-r--r--sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmsbytesxml/runtime/WireFormatJMSBytesXMLServiceProvider.java114
-rw-r--r--sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmsdefault/runtime/WireFormatJMSDefaultProviderFactory.java69
-rw-r--r--sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmsdefault/runtime/WireFormatJMSDefaultReferenceInterceptor.java176
-rw-r--r--sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmsdefault/runtime/WireFormatJMSDefaultReferenceProvider.java199
-rw-r--r--sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmsdefault/runtime/WireFormatJMSDefaultServiceInterceptor.java176
-rw-r--r--sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmsdefault/runtime/WireFormatJMSDefaultServiceProvider.java191
-rw-r--r--sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmsobject/runtime/WireFormatJMSObjectProviderFactory.java66
-rw-r--r--sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmsobject/runtime/WireFormatJMSObjectReferenceInterceptor.java143
-rw-r--r--sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmsobject/runtime/WireFormatJMSObjectReferenceProvider.java116
-rw-r--r--sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmsobject/runtime/WireFormatJMSObjectServiceInterceptor.java138
-rw-r--r--sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmsobject/runtime/WireFormatJMSObjectServiceProvider.java122
-rw-r--r--sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmstext/runtime/WireFormatJMSTextProviderFactory.java66
-rw-r--r--sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmstext/runtime/WireFormatJMSTextReferenceInterceptor.java125
-rw-r--r--sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmstext/runtime/WireFormatJMSTextReferenceProvider.java106
-rw-r--r--sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmstext/runtime/WireFormatJMSTextServiceInterceptor.java114
-rw-r--r--sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmstext/runtime/WireFormatJMSTextServiceProvider.java108
-rw-r--r--sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmstextxml/runtime/WireFormatJMSTextXMLProviderFactory.java72
-rw-r--r--sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmstextxml/runtime/WireFormatJMSTextXMLReferenceInterceptor.java128
-rw-r--r--sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmstextxml/runtime/WireFormatJMSTextXMLReferenceProvider.java118
-rw-r--r--sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmstextxml/runtime/WireFormatJMSTextXMLServiceInterceptor.java115
-rw-r--r--sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmstextxml/runtime/WireFormatJMSTextXMLServiceProvider.java111
-rw-r--r--sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/resources/META-INF/services/org.apache.tuscany.sca.provider.BindingProviderFactory19
-rw-r--r--sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/resources/META-INF/services/org.apache.tuscany.sca.provider.OperationSelectorProviderFactory20
-rw-r--r--sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/resources/META-INF/services/org.apache.tuscany.sca.provider.WireFormatProviderFactory24
-rw-r--r--sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/test/java/org/apache/tuscany/sca/binding/jms/HelloWorldClientImpl.java43
-rw-r--r--sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/test/java/org/apache/tuscany/sca/binding/jms/HelloWorldService.java31
-rw-r--r--sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/test/java/org/apache/tuscany/sca/binding/jms/HelloWorldServiceImpl.java32
-rw-r--r--sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/test/java/org/apache/tuscany/sca/binding/jms/OperationSelectionTestCaseFIXME.java237
-rw-r--r--sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/test/resources/simple/client.composite38
-rw-r--r--sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/test/resources/simple/service.composite35
-rw-r--r--sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms/LICENSE205
-rw-r--r--sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms/NOTICE6
-rw-r--r--sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms/pom.xml66
-rw-r--r--sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms/src/main/java/org/apache/tuscany/sca/binding/jms/impl/BindingProperty.java71
-rw-r--r--sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms/src/main/java/org/apache/tuscany/sca/binding/jms/impl/JMSBinding.java970
-rw-r--r--sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms/src/main/java/org/apache/tuscany/sca/binding/jms/impl/JMSBindingConstants.java75
-rw-r--r--sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms/src/main/java/org/apache/tuscany/sca/binding/jms/impl/JMSBindingException.java45
-rw-r--r--sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms/src/main/java/org/apache/tuscany/sca/binding/jms/impl/JMSBindingProcessor.java1560
-rw-r--r--sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms/src/main/java/org/apache/tuscany/sca/binding/jms/operationselector/jmsdefault/OperationSelectorJMSDefault.java45
-rw-r--r--sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms/src/main/java/org/apache/tuscany/sca/binding/jms/operationselector/jmsdefault/OperationSelectorJMSDefaultProcessor.java76
-rw-r--r--sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms/src/main/java/org/apache/tuscany/sca/binding/jms/operationselector/jmsuserprop/OperationSelectorJMSUserProp.java57
-rw-r--r--sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms/src/main/java/org/apache/tuscany/sca/binding/jms/operationselector/jmsuserprop/OperationSelectorJMSUserPropProcessor.java87
-rw-r--r--sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmsbytes/WireFormatJMSBytes.java45
-rw-r--r--sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmsbytes/WireFormatJMSBytesProcessor.java78
-rw-r--r--sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmsbytesxml/WireFormatJMSBytesXML.java40
-rw-r--r--sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmsbytesxml/WireFormatJMSBytesXMLProcessor.java75
-rw-r--r--sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmsdefault/WireFormatJMSDefault.java64
-rw-r--r--sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmsdefault/WireFormatJMSDefaultProcessor.java93
-rw-r--r--sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmsobject/WireFormatJMSObject.java57
-rw-r--r--sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmsobject/WireFormatJMSObjectProcessor.java91
-rw-r--r--sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmstext/WireFormatJMSText.java45
-rw-r--r--sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmstext/WireFormatJMSTextProcessor.java78
-rw-r--r--sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmstextxml/WireFormatJMSTextXML.java48
-rw-r--r--sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmstextxml/WireFormatJMSTextXMLProcessor.java78
-rw-r--r--sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms/src/main/resources/META-INF/services/org.apache.tuscany.sca.contribution.processor.StAXArtifactProcessor27
-rw-r--r--sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms/src/main/resources/binding-jms-validation-messages.properties50
-rw-r--r--sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms/src/test/java/org/apache/tuscany/sca/binding/jms/impl/JMSBindingProcessorTestCase.java783
-rw-r--r--sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms/src/test/java/org/apache/tuscany/sca/binding/jms/impl/JMSBindingProcessorWriteTestCase.java456
122 files changed, 0 insertions, 15397 deletions
diff --git a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-policy/LICENSE b/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-policy/LICENSE
deleted file mode 100644
index 8aa906c321..0000000000
--- a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-policy/LICENSE
+++ /dev/null
@@ -1,205 +0,0 @@
-
- Apache License
- Version 2.0, January 2004
- http://www.apache.org/licenses/
-
- TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
-
- 1. Definitions.
-
- "License" shall mean the terms and conditions for use, reproduction,
- and distribution as defined by Sections 1 through 9 of this document.
-
- "Licensor" shall mean the copyright owner or entity authorized by
- the copyright owner that is granting the License.
-
- "Legal Entity" shall mean the union of the acting entity and all
- other entities that control, are controlled by, or are under common
- control with that entity. For the purposes of this definition,
- "control" means (i) the power, direct or indirect, to cause the
- direction or management of such entity, whether by contract or
- otherwise, or (ii) ownership of fifty percent (50%) or more of the
- outstanding shares, or (iii) beneficial ownership of such entity.
-
- "You" (or "Your") shall mean an individual or Legal Entity
- exercising permissions granted by this License.
-
- "Source" form shall mean the preferred form for making modifications,
- including but not limited to software source code, documentation
- source, and configuration files.
-
- "Object" form shall mean any form resulting from mechanical
- transformation or translation of a Source form, including but
- not limited to compiled object code, generated documentation,
- and conversions to other media types.
-
- "Work" shall mean the work of authorship, whether in Source or
- Object form, made available under the License, as indicated by a
- copyright notice that is included in or attached to the work
- (an example is provided in the Appendix below).
-
- "Derivative Works" shall mean any work, whether in Source or Object
- form, that is based on (or derived from) the Work and for which the
- editorial revisions, annotations, elaborations, or other modifications
- represent, as a whole, an original work of authorship. For the purposes
- of this License, Derivative Works shall not include works that remain
- separable from, or merely link (or bind by name) to the interfaces of,
- the Work and Derivative Works thereof.
-
- "Contribution" shall mean any work of authorship, including
- the original version of the Work and any modifications or additions
- to that Work or Derivative Works thereof, that is intentionally
- submitted to Licensor for inclusion in the Work by the copyright owner
- or by an individual or Legal Entity authorized to submit on behalf of
- the copyright owner. For the purposes of this definition, "submitted"
- means any form of electronic, verbal, or written communication sent
- to the Licensor or its representatives, including but not limited to
- communication on electronic mailing lists, source code control systems,
- and issue tracking systems that are managed by, or on behalf of, the
- Licensor for the purpose of discussing and improving the Work, but
- excluding communication that is conspicuously marked or otherwise
- designated in writing by the copyright owner as "Not a Contribution."
-
- "Contributor" shall mean Licensor and any individual or Legal Entity
- on behalf of whom a Contribution has been received by Licensor and
- subsequently incorporated within the Work.
-
- 2. Grant of Copyright License. Subject to the terms and conditions of
- this License, each Contributor hereby grants to You a perpetual,
- worldwide, non-exclusive, no-charge, royalty-free, irrevocable
- copyright license to reproduce, prepare Derivative Works of,
- publicly display, publicly perform, sublicense, and distribute the
- Work and such Derivative Works in Source or Object form.
-
- 3. Grant of Patent License. Subject to the terms and conditions of
- this License, each Contributor hereby grants to You a perpetual,
- worldwide, non-exclusive, no-charge, royalty-free, irrevocable
- (except as stated in this section) patent license to make, have made,
- use, offer to sell, sell, import, and otherwise transfer the Work,
- where such license applies only to those patent claims licensable
- by such Contributor that are necessarily infringed by their
- Contribution(s) alone or by combination of their Contribution(s)
- with the Work to which such Contribution(s) was submitted. If You
- institute patent litigation against any entity (including a
- cross-claim or counterclaim in a lawsuit) alleging that the Work
- or a Contribution incorporated within the Work constitutes direct
- or contributory patent infringement, then any patent licenses
- granted to You under this License for that Work shall terminate
- as of the date such litigation is filed.
-
- 4. Redistribution. You may reproduce and distribute copies of the
- Work or Derivative Works thereof in any medium, with or without
- modifications, and in Source or Object form, provided that You
- meet the following conditions:
-
- (a) You must give any other recipients of the Work or
- Derivative Works a copy of this License; and
-
- (b) You must cause any modified files to carry prominent notices
- stating that You changed the files; and
-
- (c) You must retain, in the Source form of any Derivative Works
- that You distribute, all copyright, patent, trademark, and
- attribution notices from the Source form of the Work,
- excluding those notices that do not pertain to any part of
- the Derivative Works; and
-
- (d) If the Work includes a "NOTICE" text file as part of its
- distribution, then any Derivative Works that You distribute must
- include a readable copy of the attribution notices contained
- within such NOTICE file, excluding those notices that do not
- pertain to any part of the Derivative Works, in at least one
- of the following places: within a NOTICE text file distributed
- as part of the Derivative Works; within the Source form or
- documentation, if provided along with the Derivative Works; or,
- within a display generated by the Derivative Works, if and
- wherever such third-party notices normally appear. The contents
- of the NOTICE file are for informational purposes only and
- do not modify the License. You may add Your own attribution
- notices within Derivative Works that You distribute, alongside
- or as an addendum to the NOTICE text from the Work, provided
- that such additional attribution notices cannot be construed
- as modifying the License.
-
- You may add Your own copyright statement to Your modifications and
- may provide additional or different license terms and conditions
- for use, reproduction, or distribution of Your modifications, or
- for any such Derivative Works as a whole, provided Your use,
- reproduction, and distribution of the Work otherwise complies with
- the conditions stated in this License.
-
- 5. Submission of Contributions. Unless You explicitly state otherwise,
- any Contribution intentionally submitted for inclusion in the Work
- by You to the Licensor shall be under the terms and conditions of
- this License, without any additional terms or conditions.
- Notwithstanding the above, nothing herein shall supersede or modify
- the terms of any separate license agreement you may have executed
- with Licensor regarding such Contributions.
-
- 6. Trademarks. This License does not grant permission to use the trade
- names, trademarks, service marks, or product names of the Licensor,
- except as required for reasonable and customary use in describing the
- origin of the Work and reproducing the content of the NOTICE file.
-
- 7. Disclaimer of Warranty. Unless required by applicable law or
- agreed to in writing, Licensor provides the Work (and each
- Contributor provides its Contributions) on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
- implied, including, without limitation, any warranties or conditions
- of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
- PARTICULAR PURPOSE. You are solely responsible for determining the
- appropriateness of using or redistributing the Work and assume any
- risks associated with Your exercise of permissions under this License.
-
- 8. Limitation of Liability. In no event and under no legal theory,
- whether in tort (including negligence), contract, or otherwise,
- unless required by applicable law (such as deliberate and grossly
- negligent acts) or agreed to in writing, shall any Contributor be
- liable to You for damages, including any direct, indirect, special,
- incidental, or consequential damages of any character arising as a
- result of this License or out of the use or inability to use the
- Work (including but not limited to damages for loss of goodwill,
- work stoppage, computer failure or malfunction, or any and all
- other commercial damages or losses), even if such Contributor
- has been advised of the possibility of such damages.
-
- 9. Accepting Warranty or Additional Liability. While redistributing
- the Work or Derivative Works thereof, You may choose to offer,
- and charge a fee for, acceptance of support, warranty, indemnity,
- or other liability obligations and/or rights consistent with this
- License. However, in accepting such obligations, You may act only
- on Your own behalf and on Your sole responsibility, not on behalf
- of any other Contributor, and only if You agree to indemnify,
- defend, and hold each Contributor harmless for any liability
- incurred by, or claims asserted against, such Contributor by reason
- of your accepting any such warranty or additional liability.
-
- END OF TERMS AND CONDITIONS
-
- APPENDIX: How to apply the Apache License to your work.
-
- To apply the Apache License to your work, attach the following
- boilerplate notice, with the fields enclosed by brackets "[]"
- replaced with your own identifying information. (Don't include
- the brackets!) The text should be enclosed in the appropriate
- comment syntax for the file format. We also recommend that a
- file or class name and description of purpose be included on the
- same "printed page" as the copyright notice for easier
- identification within third-party archives.
-
- Copyright [yyyy] [name of copyright owner]
-
- Licensed 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.
-
-
-
diff --git a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-policy/NOTICE b/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-policy/NOTICE
deleted file mode 100644
index fdfa0e9faa..0000000000
--- a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-policy/NOTICE
+++ /dev/null
@@ -1,6 +0,0 @@
-${pom.name}
-Copyright (c) 2005 - 2008 The Apache Software Foundation
-
-This product includes software developed by
-The Apache Software Foundation (http://www.apache.org/).
-
diff --git a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-policy/pom.xml b/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-policy/pom.xml
deleted file mode 100644
index 65b993fd3c..0000000000
--- a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-policy/pom.xml
+++ /dev/null
@@ -1,94 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
- * 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.
--->
-<project>
- <modelVersion>4.0.0</modelVersion>
- <parent>
- <groupId>org.apache.tuscany.sca</groupId>
- <artifactId>tuscany-modules</artifactId>
- <version>1.5.1</version>
- <relativePath>../pom.xml</relativePath>
- </parent>
- <artifactId>tuscany-binding-jms-policy</artifactId>
- <name>Apache Tuscany SCA Policy Model for JMS Binding</name>
-
- <dependencies>
- <dependency>
- <groupId>org.apache.tuscany.sca</groupId>
- <artifactId>tuscany-contribution</artifactId>
- <version>1.5.1</version>
- </dependency>
-
- <dependency>
- <groupId>org.apache.tuscany.sca</groupId>
- <artifactId>tuscany-assembly-xml</artifactId>
- <version>1.5.1</version>
- </dependency>
-
- <dependency>
- <groupId>org.apache.geronimo.specs</groupId>
- <artifactId>geronimo-jms_1.1_spec</artifactId>
- <version>1.1</version>
- <scope>provided</scope>
- <exclusions>
- <exclusion>
- <groupId>org.apache.geronimo.specs</groupId>
- <artifactId>geronimo-jms_1.1_spec</artifactId>
- </exclusion>
- </exclusions>
- </dependency>
-
- <dependency>
- <groupId>org.apache.tuscany.sca</groupId>
- <artifactId>tuscany-binding-jms-runtime</artifactId>
- <version>1.5.1</version>
- </dependency>
-
- <dependency>
- <groupId>org.apache.tuscany.sca</groupId>
- <artifactId>tuscany-policy-reliability</artifactId>
- <version>1.5.1</version>
- </dependency>
-
- <dependency>
- <groupId>org.apache.tuscany.sca</groupId>
- <artifactId>tuscany-policy-security</artifactId>
- <version>1.5.1</version>
- </dependency>
- </dependencies>
-
- <build>
- <plugins>
- <plugin>
- <groupId>org.apache.felix</groupId>
- <artifactId>maven-bundle-plugin</artifactId>
-
- <configuration>
- <instructions>
- <Bundle-Version>${tuscany.version}</Bundle-Version>
- <Bundle-SymbolicName>org.apache.tuscany.sca.binding.jms.policy</Bundle-SymbolicName>
- <Bundle-Description>${pom.name}</Bundle-Description>
- <Export-Package>org.apache.tuscany.sca.binding.jms.policy*</Export-Package>
- </instructions>
- </configuration>
- </plugin>
- </plugins>
- </build>
-
-</project>
diff --git a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-policy/src/main/java/org/apache/tuscany/sca/binding/jms/policy/JMSBindingDefinitionsProvider.java b/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-policy/src/main/java/org/apache/tuscany/sca/binding/jms/policy/JMSBindingDefinitionsProvider.java
deleted file mode 100644
index de54545f7e..0000000000
--- a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-policy/src/main/java/org/apache/tuscany/sca/binding/jms/policy/JMSBindingDefinitionsProvider.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.binding.jms.policy;
-
-import java.net.URI;
-import java.net.URL;
-import java.security.AccessController;
-import java.security.PrivilegedExceptionAction;
-
-import org.apache.tuscany.sca.contribution.processor.URLArtifactProcessor;
-import org.apache.tuscany.sca.contribution.processor.URLArtifactProcessorExtensionPoint;
-import org.apache.tuscany.sca.contribution.service.ContributionReadException;
-import org.apache.tuscany.sca.core.ExtensionPointRegistry;
-import org.apache.tuscany.sca.definitions.SCADefinitions;
-import org.apache.tuscany.sca.provider.SCADefinitionsProvider;
-import org.apache.tuscany.sca.provider.SCADefinitionsProviderException;
-
-/**
- * Provider for Policy Intents and PolicySet definitions for the JMS binding
- *
- * @version $Rev$ $Date$
- */
-public class JMSBindingDefinitionsProvider implements SCADefinitionsProvider {
- private String definitionsFile = "org/apache/tuscany/sca/binding/jms/policy/definitions.xml";
- URLArtifactProcessor urlArtifactProcessor = null;
-
- public JMSBindingDefinitionsProvider(ExtensionPointRegistry registry) {
- URLArtifactProcessorExtensionPoint documentProcessors = registry.getExtensionPoint(URLArtifactProcessorExtensionPoint.class);
- urlArtifactProcessor = (URLArtifactProcessor)documentProcessors.getProcessor(SCADefinitions.class);
- }
-
- public SCADefinitions getSCADefinition() throws SCADefinitionsProviderException {
- final URL definitionsFileUrl = getClass().getClassLoader().getResource(definitionsFile);
- SCADefinitions scaDefn = null;
- try {
- final URI uri = new URI(definitionsFile);
- // Allow bindings to read properties. Requires PropertyPermission read in security policy.
- scaDefn = AccessController.doPrivileged(new PrivilegedExceptionAction<SCADefinitions>() {
- public SCADefinitions run() throws ContributionReadException {
- return (SCADefinitions)urlArtifactProcessor.read(null, uri, definitionsFileUrl);
- }
- });
- } catch (Exception e) {
- throw new SCADefinitionsProviderException(e);
- }
- return scaDefn;
- }
-
-}
diff --git a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-policy/src/main/java/org/apache/tuscany/sca/binding/jms/policy/authentication/token/JMSTokenAuthenticationPolicy.java b/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-policy/src/main/java/org/apache/tuscany/sca/binding/jms/policy/authentication/token/JMSTokenAuthenticationPolicy.java
deleted file mode 100644
index 16ed2a53a4..0000000000
--- a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-policy/src/main/java/org/apache/tuscany/sca/binding/jms/policy/authentication/token/JMSTokenAuthenticationPolicy.java
+++ /dev/null
@@ -1,56 +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.binding.jms.policy.authentication.token;
-
-import javax.xml.namespace.QName;
-
-import org.apache.tuscany.sca.assembly.xml.Constants;
-import org.apache.tuscany.sca.policy.Policy;
-
-/**
- * Implementation for policies that could be injected as parameter
- * into the axis2config.
- *
- * @version $Rev$ $Date$
- */
-public class JMSTokenAuthenticationPolicy implements Policy {
- public static final QName JMS_TOKEN_AUTHENTICATION_POLICY_QNAME = new QName(Constants.SCA10_TUSCANY_NS, "jmsTokenAuthentication");
- public static final String JMS_TOKEN_AUTHENTICATION_TOKEN_NAME = "tokenName";
-
- private QName tokenName;
-
- public QName getTokenName() {
- return tokenName;
- }
-
- public void setTokenName(QName tokenName) {
- this.tokenName = tokenName;
- }
-
- public QName getSchemaName() {
- return JMS_TOKEN_AUTHENTICATION_POLICY_QNAME;
- }
-
- public boolean isUnresolved() {
- return false;
- }
-
- public void setUnresolved(boolean unresolved) {
- }
-}
diff --git a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-policy/src/main/java/org/apache/tuscany/sca/binding/jms/policy/authentication/token/JMSTokenAuthenticationPolicyProcessor.java b/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-policy/src/main/java/org/apache/tuscany/sca/binding/jms/policy/authentication/token/JMSTokenAuthenticationPolicyProcessor.java
deleted file mode 100644
index 11747914da..0000000000
--- a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-policy/src/main/java/org/apache/tuscany/sca/binding/jms/policy/authentication/token/JMSTokenAuthenticationPolicyProcessor.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.binding.jms.policy.authentication.token;
-
-import static javax.xml.stream.XMLStreamConstants.END_ELEMENT;
-import static javax.xml.stream.XMLStreamConstants.START_ELEMENT;
-
-import javax.xml.namespace.QName;
-import javax.xml.stream.XMLStreamException;
-import javax.xml.stream.XMLStreamReader;
-import javax.xml.stream.XMLStreamWriter;
-
-import org.apache.tuscany.sca.assembly.xml.Constants;
-import org.apache.tuscany.sca.binding.jms.policy.header.JMSHeaderPolicy;
-import org.apache.tuscany.sca.contribution.ModelFactoryExtensionPoint;
-import org.apache.tuscany.sca.contribution.processor.BaseStAXArtifactProcessor;
-import org.apache.tuscany.sca.contribution.processor.StAXArtifactProcessor;
-import org.apache.tuscany.sca.contribution.resolver.ModelResolver;
-import org.apache.tuscany.sca.contribution.service.ContributionReadException;
-import org.apache.tuscany.sca.contribution.service.ContributionResolveException;
-import org.apache.tuscany.sca.contribution.service.ContributionWriteException;
-import org.apache.tuscany.sca.monitor.Monitor;
-
-/**
- *
- * @version $Rev$ $Date$
- */
-public class JMSTokenAuthenticationPolicyProcessor extends BaseStAXArtifactProcessor implements StAXArtifactProcessor<JMSTokenAuthenticationPolicy> {
-
- public QName getArtifactType() {
- return JMSTokenAuthenticationPolicy.JMS_TOKEN_AUTHENTICATION_POLICY_QNAME;
- }
-
- public JMSTokenAuthenticationPolicyProcessor(ModelFactoryExtensionPoint modelFactories, Monitor monitor) {
- }
-
-
- public JMSTokenAuthenticationPolicy read(XMLStreamReader reader) throws ContributionReadException, XMLStreamException {
- JMSTokenAuthenticationPolicy policy = new JMSTokenAuthenticationPolicy();
- int event = reader.getEventType();
- QName name = null;
-
- while (reader.hasNext()) {
- event = reader.getEventType();
- switch (event) {
- case START_ELEMENT : {
- name = reader.getName();
- if ( name.equals(getArtifactType()) ) {
- policy.setTokenName(getQName(reader, JMSTokenAuthenticationPolicy.JMS_TOKEN_AUTHENTICATION_TOKEN_NAME));
- }
- break;
- }
- }
-
- if ( event == END_ELEMENT ) {
- if ( getArtifactType().equals(reader.getName()) ) {
- break;
- }
- }
-
- //Read the next element
- if (reader.hasNext()) {
- reader.next();
- }
- }
-
- return policy;
- }
-
- public void write(JMSTokenAuthenticationPolicy policy, XMLStreamWriter writer)
- throws ContributionWriteException, XMLStreamException {
- String prefix = "tuscany";
- writer.writeStartElement(prefix,
- getArtifactType().getLocalPart(),
- getArtifactType().getNamespaceURI());
- writer.writeNamespace("tuscany", Constants.SCA10_TUSCANY_NS);
-
- if ( policy.getTokenName() != null ) {
- writer.writeAttribute(prefix,
- getArtifactType().getNamespaceURI(),
- JMSTokenAuthenticationPolicy.JMS_TOKEN_AUTHENTICATION_TOKEN_NAME,
- policy.getTokenName().toString());
- }
-
- writer.writeEndElement();
- }
-
- public Class<JMSTokenAuthenticationPolicy> getModelType() {
- return JMSTokenAuthenticationPolicy.class;
- }
-
- public void resolve(JMSTokenAuthenticationPolicy arg0, ModelResolver arg1) throws ContributionResolveException {
-
- }
-
-}
diff --git a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-policy/src/main/java/org/apache/tuscany/sca/binding/jms/policy/authentication/token/JMSTokenAuthenticationPolicyProviderFactory.java b/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-policy/src/main/java/org/apache/tuscany/sca/binding/jms/policy/authentication/token/JMSTokenAuthenticationPolicyProviderFactory.java
deleted file mode 100644
index fd77e57418..0000000000
--- a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-policy/src/main/java/org/apache/tuscany/sca/binding/jms/policy/authentication/token/JMSTokenAuthenticationPolicyProviderFactory.java
+++ /dev/null
@@ -1,75 +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.binding.jms.policy.authentication.token;
-
-import org.apache.tuscany.sca.assembly.Binding;
-import org.apache.tuscany.sca.assembly.Implementation;
-import org.apache.tuscany.sca.core.ExtensionPointRegistry;
-import org.apache.tuscany.sca.provider.PolicyProvider;
-import org.apache.tuscany.sca.provider.PolicyProviderFactory;
-import org.apache.tuscany.sca.runtime.RuntimeComponent;
-import org.apache.tuscany.sca.runtime.RuntimeComponentReference;
-import org.apache.tuscany.sca.runtime.RuntimeComponentService;
-
-/**
- * @version $Rev$ $Date$
- */
-public class JMSTokenAuthenticationPolicyProviderFactory implements PolicyProviderFactory<JMSTokenAuthenticationPolicy> {
- private ExtensionPointRegistry registry;
-
- public JMSTokenAuthenticationPolicyProviderFactory(ExtensionPointRegistry registry) {
- super();
- this.registry = registry;
- }
-
- /**
- * @see org.apache.tuscany.sca.provider.PolicyProviderFactory#createImplementationPolicyProvider(org.apache.tuscany.sca.runtime.RuntimeComponent, org.apache.tuscany.sca.assembly.Implementation)
- */
- public PolicyProvider createImplementationPolicyProvider(RuntimeComponent component, Implementation implementation) {
- return null;//new TokenAuthenticationImplementationPolicyProvider(component, implementation);
- }
-
- /**
- * @see org.apache.tuscany.sca.provider.PolicyProviderFactory#createReferencePolicyProvider(org.apache.tuscany.sca.runtime.RuntimeComponent, org.apache.tuscany.sca.runtime.RuntimeComponentReference, org.apache.tuscany.sca.assembly.Binding)
- */
- public PolicyProvider createReferencePolicyProvider(RuntimeComponent component,
- RuntimeComponentReference reference,
- Binding binding) {
- return new JMSTokenAuthenticationReferencePolicyProvider(component, reference, binding);
- }
-
- /**
- * @see org.apache.tuscany.sca.provider.PolicyProviderFactory#createServicePolicyProvider(org.apache.tuscany.sca.runtime.RuntimeComponent, org.apache.tuscany.sca.runtime.RuntimeComponentService, org.apache.tuscany.sca.assembly.Binding)
- */
- public PolicyProvider createServicePolicyProvider(RuntimeComponent component,
- RuntimeComponentService service,
- Binding binding) {
- return new JMSTokenAuthenticationServicePolicyProvider(component, service, binding);
- }
-
- /**
- * @see org.apache.tuscany.sca.provider.ProviderFactory#getModelType()
- */
- public Class getModelType() {
- // TODO Auto-generated method stub
- return null;
- }
-
-}
diff --git a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-policy/src/main/java/org/apache/tuscany/sca/binding/jms/policy/authentication/token/JMSTokenAuthenticationReferencePolicyInterceptor.java b/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-policy/src/main/java/org/apache/tuscany/sca/binding/jms/policy/authentication/token/JMSTokenAuthenticationReferencePolicyInterceptor.java
deleted file mode 100644
index 56fffeb817..0000000000
--- a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-policy/src/main/java/org/apache/tuscany/sca/binding/jms/policy/authentication/token/JMSTokenAuthenticationReferencePolicyInterceptor.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.binding.jms.policy.authentication.token;
-
-
-import javax.jms.JMSException;
-import javax.security.auth.Subject;
-
-import org.apache.tuscany.sca.binding.jms.context.JMSBindingContext;
-import org.apache.tuscany.sca.binding.jms.impl.JMSBindingConstants;
-import org.apache.tuscany.sca.binding.jms.impl.JMSBindingException;
-import org.apache.tuscany.sca.interfacedef.Operation;
-import org.apache.tuscany.sca.invocation.Interceptor;
-import org.apache.tuscany.sca.invocation.Invoker;
-import org.apache.tuscany.sca.invocation.Message;
-import org.apache.tuscany.sca.policy.PolicySet;
-import org.apache.tuscany.sca.policy.SecurityUtil;
-import org.apache.tuscany.sca.policy.authentication.token.TokenPrincipal;
-
-/**
- * Policy handler to handle PolicySet related to Logging with the QName
- * {http://tuscany.apache.org/xmlns/sca/1.0/impl/java}LoggingPolicy
- *
- * @version $Rev$ $Date$
- */
-public class JMSTokenAuthenticationReferencePolicyInterceptor implements Interceptor {
-
- private Invoker next;
- private PolicySet policySet = null;
- private String context;
- private JMSTokenAuthenticationPolicy policy;
-
- public JMSTokenAuthenticationReferencePolicyInterceptor(String context, PolicySet policySet) {
- super();
- this.policySet = policySet;
- this.context = context;
- init();
- }
-
- private void init() {
- if (policySet != null) {
- for (Object policyObject : policySet.getPolicies()){
- if (policyObject instanceof JMSTokenAuthenticationPolicy){
- policy = (JMSTokenAuthenticationPolicy)policyObject;
- break;
- }
- }
- }
- }
-
- public Message invoke(Message msg) {
- try {
- javax.jms.Message jmsMsg = msg.getBody();
-
- if ( policy.getTokenName() != null){
-
- Subject subject = SecurityUtil.getSubject(msg);
- TokenPrincipal principal = SecurityUtil.getPrincipal(subject, TokenPrincipal.class);
-
- if (principal == null){
- // should call out here to some 3rd party system to get credentials
- // and correct token. Here we are just putting in the token name
- principal = new TokenPrincipal("DummyTokenID");
- subject.getPrincipals().add(principal);
- }
-
- jmsMsg.setStringProperty(policy.getTokenName().toString(), principal.getName());
- }
-
- return getNext().invoke(msg);
-
- } catch (JMSException e) {
- throw new JMSBindingException(e);
- }
- }
-
- public Invoker getNext() {
- return next;
- }
-
- public void setNext(Invoker next) {
- this.next = next;
- }
-}
diff --git a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-policy/src/main/java/org/apache/tuscany/sca/binding/jms/policy/authentication/token/JMSTokenAuthenticationReferencePolicyProvider.java b/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-policy/src/main/java/org/apache/tuscany/sca/binding/jms/policy/authentication/token/JMSTokenAuthenticationReferencePolicyProvider.java
deleted file mode 100644
index b4fa617f74..0000000000
--- a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-policy/src/main/java/org/apache/tuscany/sca/binding/jms/policy/authentication/token/JMSTokenAuthenticationReferencePolicyProvider.java
+++ /dev/null
@@ -1,91 +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.binding.jms.policy.authentication.token;
-
-import java.util.List;
-
-import org.apache.tuscany.sca.assembly.Binding;
-import org.apache.tuscany.sca.interfacedef.Operation;
-import org.apache.tuscany.sca.invocation.Interceptor;
-import org.apache.tuscany.sca.invocation.Phase;
-import org.apache.tuscany.sca.policy.PolicySet;
-import org.apache.tuscany.sca.policy.PolicySetAttachPoint;
-import org.apache.tuscany.sca.policy.util.PolicyHandler;
-import org.apache.tuscany.sca.provider.PolicyProvider;
-import org.apache.tuscany.sca.runtime.RuntimeComponent;
-import org.apache.tuscany.sca.runtime.RuntimeComponentReference;
-
-/**
- * @version $Rev$ $Date$
- */
-public class JMSTokenAuthenticationReferencePolicyProvider implements PolicyProvider {
- private RuntimeComponent component;
- private RuntimeComponentReference reference;
- private Binding binding;
-
- public JMSTokenAuthenticationReferencePolicyProvider(RuntimeComponent component,
- RuntimeComponentReference reference,
- Binding binding) {
- super();
- this.component = component;
- this.reference = reference;
- this.binding = binding;
- }
-
- private PolicySet findPolicySet() {
- if (binding instanceof PolicySetAttachPoint) {
- List<PolicySet> policySets = ((PolicySetAttachPoint)binding).getApplicablePolicySets();
- for (PolicySet ps : policySets) {
- for (Object p : ps.getPolicies()) {
- if (JMSTokenAuthenticationPolicy.class.isInstance(p)) {
- return ps;
- }
- }
- }
- }
- return null;
- }
-
- private String getContext() {
- return "component.reference: " + component.getURI()
- + "#"
- + reference.getName()
- + "("
- + binding.getClass().getName()
- + ")";
- }
-
- /**
- * @see org.apache.tuscany.sca.provider.PolicyProvider#createInterceptor(org.apache.tuscany.sca.interfacedef.Operation)
- */
- public Interceptor createInterceptor(Operation operation) {
- PolicySet ps = findPolicySet();
- return ps == null ? null : new JMSTokenAuthenticationReferencePolicyInterceptor(getContext(), ps);
-
- }
-
- /**
- * @see org.apache.tuscany.sca.provider.PolicyProvider#getPhase()
- */
- public String getPhase() {
- return Phase.REFERENCE_BINDING_POLICY;
- }
-
-}
diff --git a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-policy/src/main/java/org/apache/tuscany/sca/binding/jms/policy/authentication/token/JMSTokenAuthenticationServicePolicyInterceptor.java b/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-policy/src/main/java/org/apache/tuscany/sca/binding/jms/policy/authentication/token/JMSTokenAuthenticationServicePolicyInterceptor.java
deleted file mode 100644
index c8d28ad5db..0000000000
--- a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-policy/src/main/java/org/apache/tuscany/sca/binding/jms/policy/authentication/token/JMSTokenAuthenticationServicePolicyInterceptor.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.binding.jms.policy.authentication.token;
-
-
-
-import javax.jms.JMSException;
-import javax.security.auth.Subject;
-
-import org.apache.tuscany.sca.binding.jms.context.JMSBindingContext;
-import org.apache.tuscany.sca.binding.jms.impl.JMSBindingConstants;
-import org.apache.tuscany.sca.binding.jms.impl.JMSBindingException;
-import org.apache.tuscany.sca.invocation.Interceptor;
-import org.apache.tuscany.sca.invocation.Invoker;
-import org.apache.tuscany.sca.invocation.Message;
-import org.apache.tuscany.sca.policy.PolicySet;
-import org.apache.tuscany.sca.policy.SecurityUtil;
-import org.apache.tuscany.sca.policy.authentication.token.TokenPrincipal;
-
-/**
- * Policy handler to handle token based authentication
- * {http://tuscany.apache.org/xmlns/sca/1.0/impl/java}LoggingPolicy
- *
- * @version $Rev$ $Date$
- */
-public class JMSTokenAuthenticationServicePolicyInterceptor implements Interceptor {
- private Invoker next;
- private PolicySet policySet = null;
- private String context;
- private JMSTokenAuthenticationPolicy policy;
-
- public JMSTokenAuthenticationServicePolicyInterceptor(String context, PolicySet policySet) {
- super();
- this.policySet = policySet;
- this.context = context;
- init();
- }
-
- private void init() {
- if (policySet != null) {
- for (Object policyObject : policySet.getPolicies()){
- if (policyObject instanceof JMSTokenAuthenticationPolicy){
- policy = (JMSTokenAuthenticationPolicy)policyObject;
- break;
- }
- }
- }
- }
-
- public Message invoke(Message msg) {
- try{
- // get the jms context
- JMSBindingContext context = msg.getBindingContext();
- javax.jms.Message jmsMsg = context.getJmsMsg();
-
- String token = jmsMsg.getStringProperty(policy.getTokenName().toString());
-
- Subject subject = SecurityUtil.getSubject(msg);
- TokenPrincipal principal = SecurityUtil.getPrincipal(subject, TokenPrincipal.class);
-
- if (principal == null){
- principal = new TokenPrincipal(token);
- subject.getPrincipals().add(principal);
- }
-
- System.out.println("JMS service received token: " + principal.getName());
-
- // call out here to some 3rd party system to do whatever you
- // need to authenticate the principal
-
- return getNext().invoke(msg);
- } catch (JMSException e) {
- throw new JMSBindingException(e);
- }
- }
-
- public Invoker getNext() {
- return next;
- }
-
- public void setNext(Invoker next) {
- this.next = next;
- }
-}
diff --git a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-policy/src/main/java/org/apache/tuscany/sca/binding/jms/policy/authentication/token/JMSTokenAuthenticationServicePolicyProvider.java b/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-policy/src/main/java/org/apache/tuscany/sca/binding/jms/policy/authentication/token/JMSTokenAuthenticationServicePolicyProvider.java
deleted file mode 100644
index 4b0944a420..0000000000
--- a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-policy/src/main/java/org/apache/tuscany/sca/binding/jms/policy/authentication/token/JMSTokenAuthenticationServicePolicyProvider.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.binding.jms.policy.authentication.token;
-
-import java.util.List;
-
-import org.apache.tuscany.sca.assembly.Binding;
-import org.apache.tuscany.sca.interfacedef.Operation;
-import org.apache.tuscany.sca.invocation.Interceptor;
-import org.apache.tuscany.sca.invocation.Phase;
-import org.apache.tuscany.sca.policy.PolicySet;
-import org.apache.tuscany.sca.policy.PolicySetAttachPoint;
-import org.apache.tuscany.sca.policy.util.PolicyHandler;
-import org.apache.tuscany.sca.provider.PolicyProvider;
-import org.apache.tuscany.sca.runtime.RuntimeComponent;
-import org.apache.tuscany.sca.runtime.RuntimeComponentService;
-
-/**
- * @version $Rev$ $Date$
- */
-public class JMSTokenAuthenticationServicePolicyProvider implements PolicyProvider {
- private RuntimeComponent component;
- private RuntimeComponentService service;
- private Binding binding;
-
- public JMSTokenAuthenticationServicePolicyProvider(RuntimeComponent component, RuntimeComponentService service, Binding binding) {
- super();
- this.component = component;
- this.service = service;
- this.binding = binding;
- }
-
- private PolicySet findPolicySet() {
- if (binding instanceof PolicySetAttachPoint) {
- List<PolicySet> policySets = ((PolicySetAttachPoint)binding).getApplicablePolicySets();
- for (PolicySet ps : policySets) {
- for (Object p : ps.getPolicies()) {
- if (JMSTokenAuthenticationPolicy.class.isInstance(p)) {
- return ps;
- }
- }
- }
- }
- return null;
- }
-
- private String getContext() {
- return "component.service: " + component.getURI()
- + "#"
- + service.getName()
- + "("
- + binding.getClass().getName()
- + ")";
- }
-
- /**
- * @see org.apache.tuscany.sca.provider.PolicyProvider#createInterceptor(org.apache.tuscany.sca.interfacedef.Operation)
- */
- public Interceptor createInterceptor(Operation operation) {
- PolicySet ps = findPolicySet();
- return ps == null ? null : new JMSTokenAuthenticationServicePolicyInterceptor(getContext(), ps);
- }
-
- /**
- * @see org.apache.tuscany.sca.provider.PolicyProvider#getPhase()
- */
- public String getPhase() {
- return Phase.SERVICE_BINDING_POLICY;
- }
-
-}
diff --git a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-policy/src/main/java/org/apache/tuscany/sca/binding/jms/policy/header/JMSHeaderPolicy.java b/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-policy/src/main/java/org/apache/tuscany/sca/binding/jms/policy/header/JMSHeaderPolicy.java
deleted file mode 100644
index 1c16e3fa1b..0000000000
--- a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-policy/src/main/java/org/apache/tuscany/sca/binding/jms/policy/header/JMSHeaderPolicy.java
+++ /dev/null
@@ -1,131 +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.binding.jms.policy.header;
-
-import java.util.Hashtable;
-import java.util.Map;
-
-import javax.xml.namespace.QName;
-
-import org.apache.tuscany.sca.assembly.xml.Constants;
-import org.apache.tuscany.sca.policy.Policy;
-
-/**
- * Implementation for policies that could be injected as parameter
- * into the axis2config.
- *
- * @version $Rev$ $Date$
- */
-public class JMSHeaderPolicy implements Policy {
- public static final QName JMS_HEADER_POLICY_QNAME = new QName(Constants.SCA10_TUSCANY_NS, "jmsHeader");
- public static final String JMS_HEADER_JMS_TYPE = "JMSType";
- public static final String JMS_HEADER_JMS_CORRELATION_ID = "JMSCorrelationID";
- public static final String JMS_HEADER_JMS_DELIVERY_MODE = "JMSDeliveryMode";
- public static final String JMS_HEADER_JMS_TIME_TO_LIVE = "JMSTimeToLive";
- public static final String JMS_HEADER_JMS_PRIORITY = "JMSPriority";
- public static final String JMS_HEADER_JMS_PROPERTY = "property";
- public static final String JMS_HEADER_JMS_PROPERTY_NAME = "name";
-
- private String jmsType = null;
- private String jmsCorrelationId = null;
- private Boolean deliveryModePersistent = null;
- private Long timeToLive = null;
- private Integer jmsPriority = null;
- private Map<String, String> properties = new Hashtable<String, String>();
-
- public String getJmsType() {
- return jmsType;
- }
-
- public void setJmsType(String jmsType) {
- this.jmsType = jmsType;
- }
-
- public String getJmsCorrelationId() {
- return jmsCorrelationId;
- }
-
- public void setJmsCorrelationId(String jmsCorrelationId) {
- this.jmsCorrelationId = jmsCorrelationId;
- }
-
- public Boolean getDeliveryModePersistent() {
- return deliveryModePersistent;
- }
-
- public void setDeliveryModePersistent(Boolean deliveryModePersistent) {
- this.deliveryModePersistent = deliveryModePersistent;
- }
-
- public Long getTimeToLive() {
- return timeToLive;
- }
-
- public void setTimeToLive(Long timeToLive) {
- this.timeToLive = timeToLive;
- }
-
- public Integer getJmsPriority() {
- return jmsPriority;
- }
-
- public void setJmsPriority(Integer jmsPriority) {
- this.jmsPriority = jmsPriority;
- }
-
- public Map<String, String> getProperties() {
- return properties;
- }
-
- public QName getSchemaName() {
- return JMS_HEADER_POLICY_QNAME;
- }
-
- public boolean isUnresolved() {
- return false;
- }
-
- public void setUnresolved(boolean unresolved) {
- }
-
- @Override
- public String toString() {
- String result = "jmsHeader";
-
- result += " JMSType ";
- result += getJmsType();
- result += " JMSDeliveryMode ";
- result += getJmsCorrelationId();
- result += " JMSDeliveryMode ";
- result += getDeliveryModePersistent();
- result += " JMSTimeToLive ";
- result += getTimeToLive();
- result += " JMSPriority ";
- result += getJmsPriority();
-
- for (String propertyName : properties.keySet()){
- result += " property ";
- result += propertyName;
- result += " ";
- result += properties.get(propertyName);
- }
-
- return result;
- }
-}
diff --git a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-policy/src/main/java/org/apache/tuscany/sca/binding/jms/policy/header/JMSHeaderPolicyProcessor.java b/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-policy/src/main/java/org/apache/tuscany/sca/binding/jms/policy/header/JMSHeaderPolicyProcessor.java
deleted file mode 100644
index de2b69201b..0000000000
--- a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-policy/src/main/java/org/apache/tuscany/sca/binding/jms/policy/header/JMSHeaderPolicyProcessor.java
+++ /dev/null
@@ -1,210 +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.binding.jms.policy.header;
-
-import static javax.xml.stream.XMLStreamConstants.END_ELEMENT;
-import static javax.xml.stream.XMLStreamConstants.START_ELEMENT;
-
-import java.util.Hashtable;
-import java.util.Map;
-import java.util.logging.Level;
-
-import javax.xml.namespace.QName;
-import javax.xml.stream.XMLStreamException;
-import javax.xml.stream.XMLStreamReader;
-import javax.xml.stream.XMLStreamWriter;
-
-import org.apache.tuscany.sca.assembly.xml.Constants;
-import org.apache.tuscany.sca.contribution.ModelFactoryExtensionPoint;
-import org.apache.tuscany.sca.contribution.processor.BaseStAXArtifactProcessor;
-import org.apache.tuscany.sca.contribution.processor.StAXArtifactProcessor;
-import org.apache.tuscany.sca.contribution.resolver.ModelResolver;
-import org.apache.tuscany.sca.contribution.service.ContributionReadException;
-import org.apache.tuscany.sca.contribution.service.ContributionResolveException;
-import org.apache.tuscany.sca.contribution.service.ContributionWriteException;
-import org.apache.tuscany.sca.monitor.Monitor;
-import org.apache.tuscany.sca.monitor.Problem;
-import org.apache.tuscany.sca.monitor.Problem.Severity;
-import org.apache.tuscany.sca.monitor.impl.ProblemImpl;
-
-/**
- *
- * @version $Rev$ $Date$
- */
-public class JMSHeaderPolicyProcessor extends BaseStAXArtifactProcessor implements StAXArtifactProcessor<JMSHeaderPolicy> {
-
- private Monitor monitor;
-
- public QName getArtifactType() {
- return JMSHeaderPolicy.JMS_HEADER_POLICY_QNAME;
- }
-
- public JMSHeaderPolicyProcessor(ModelFactoryExtensionPoint modelFactories, Monitor monitor) {
- this.monitor = monitor;
- }
-
- /**
- * Marshals warnings into the monitor
- *
- * @param message
- * @param model
- * @param messageParameters
- */
- protected void warning(String message, Object model, String... messageParameters) {
- if (monitor != null){
- Problem problem = new ProblemImpl(this.getClass().getName(), "assembly-xml-validation-messages", Severity.WARNING, model, message, (Object[])messageParameters);
- monitor.problem(problem);
- }
- }
-
- /**
- * Marshals errors into the monitor
- *
- * @param problems
- * @param message
- * @param model
- */
- protected void error(String message, Object model, Object... messageParameters) {
- if (monitor != null) {
- Problem problem = new ProblemImpl(this.getClass().getName(), "assembly-xml-validation-messages", Severity.ERROR, model, message, (Object[])messageParameters);
- monitor.problem(problem);
- }
- }
-
-
- public JMSHeaderPolicy read(XMLStreamReader reader) throws ContributionReadException, XMLStreamException {
- JMSHeaderPolicy policy = new JMSHeaderPolicy();
- int event = reader.getEventType();
- QName name = null;
-
- while (reader.hasNext()) {
- event = reader.getEventType();
- switch (event) {
- case START_ELEMENT : {
- name = reader.getName();
- if ( name.equals(getArtifactType()) ) {
-
- policy.setJmsType(getString(reader, JMSHeaderPolicy.JMS_HEADER_JMS_TYPE));
- policy.setJmsCorrelationId(getString(reader, JMSHeaderPolicy.JMS_HEADER_JMS_CORRELATION_ID));
-
- String deliveryMode = getString(reader, JMSHeaderPolicy.JMS_HEADER_JMS_DELIVERY_MODE);
- if (deliveryMode != null){
- if (deliveryMode.equals("PERSISTENT")) {
- policy.setDeliveryModePersistent(true);
- } else if (deliveryMode.equals("NON_PERSISTENT")){
- policy.setDeliveryModePersistent(false);
- } else {
- error("InvalidDeliveryMode", policy, deliveryMode);
- }
- }
-
- String timeToLive = getString(reader, JMSHeaderPolicy.JMS_HEADER_JMS_TIME_TO_LIVE);
-
- if ( timeToLive != null){
- try {
- policy.setTimeToLive(Long.valueOf(timeToLive));
- } catch (NumberFormatException ex){
- error("InvalidTimeToLive", policy, timeToLive);
- }
- }
-
- String priority = getString(reader, JMSHeaderPolicy.JMS_HEADER_JMS_PRIORITY);
-
- if ( priority != null){
- try {
- policy.setJmsPriority(Integer.valueOf(priority));
- } catch (NumberFormatException ex){
- error("InvalidPriority", policy, priority);
- }
- }
- } else if (name.getLocalPart().equals(JMSHeaderPolicy.JMS_HEADER_JMS_PROPERTY)) {
- String propertyName = getString(reader, JMSHeaderPolicy.JMS_HEADER_JMS_PROPERTY_NAME);
- String propertyValue = reader.getElementText();
- policy.getProperties().put(propertyName, propertyValue);
- }
- break;
- }
- }
-
- if ( event == END_ELEMENT ) {
- if ( getArtifactType().equals(reader.getName()) ) {
- break;
- }
- }
-
- //Read the next element
- if (reader.hasNext()) {
- reader.next();
- }
- }
-
- return policy;
- }
-
- public void write(JMSHeaderPolicy policy, XMLStreamWriter writer)
- throws ContributionWriteException, XMLStreamException {
- String prefix = "tuscany";
- writer.writeStartElement(prefix,
- getArtifactType().getLocalPart(),
- getArtifactType().getNamespaceURI());
- writer.writeNamespace("tuscany", Constants.SCA10_TUSCANY_NS);
-
- if (policy.getJmsType() != null){
- writer.writeAttribute(JMSHeaderPolicy.JMS_HEADER_JMS_TYPE, policy.getJmsType());
- }
-
- if (policy.getJmsCorrelationId() != null){
- writer.writeAttribute(JMSHeaderPolicy.JMS_HEADER_JMS_CORRELATION_ID, policy.getJmsCorrelationId());
- }
-
- if (policy.getDeliveryModePersistent() == true){
- writer.writeAttribute(JMSHeaderPolicy.JMS_HEADER_JMS_DELIVERY_MODE, "PERSISTENT");
- } else {
- writer.writeAttribute(JMSHeaderPolicy.JMS_HEADER_JMS_DELIVERY_MODE, "NON_PERSISTENT");
- }
-
- if (policy.getTimeToLive()!= null){
- writer.writeAttribute(JMSHeaderPolicy.JMS_HEADER_JMS_TIME_TO_LIVE, policy.getTimeToLive().toString());
- }
-
- if (policy.getJmsPriority()!= null){
- writer.writeAttribute(JMSHeaderPolicy.JMS_HEADER_JMS_PRIORITY, policy.getJmsPriority().toString());
- }
-
- for (String propertyName : policy.getProperties().keySet()){
- writer.writeStartElement(prefix,
- JMSHeaderPolicy.JMS_HEADER_JMS_PROPERTY,
- getArtifactType().getNamespaceURI());
- writer.writeAttribute(JMSHeaderPolicy.JMS_HEADER_JMS_PROPERTY_NAME, propertyName);
- writer.writeCharacters(policy.getProperties().get(propertyName));
- writer.writeEndElement();
- }
-
- writer.writeEndElement();
- }
-
- public Class<JMSHeaderPolicy> getModelType() {
- return JMSHeaderPolicy.class;
- }
-
- public void resolve(JMSHeaderPolicy arg0, ModelResolver arg1) throws ContributionResolveException {
-
- }
-
-}
diff --git a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-policy/src/main/java/org/apache/tuscany/sca/binding/jms/policy/header/JMSHeaderPolicyProviderFactory.java b/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-policy/src/main/java/org/apache/tuscany/sca/binding/jms/policy/header/JMSHeaderPolicyProviderFactory.java
deleted file mode 100644
index ded3da05b9..0000000000
--- a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-policy/src/main/java/org/apache/tuscany/sca/binding/jms/policy/header/JMSHeaderPolicyProviderFactory.java
+++ /dev/null
@@ -1,75 +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.binding.jms.policy.header;
-
-import org.apache.tuscany.sca.assembly.Binding;
-import org.apache.tuscany.sca.assembly.Implementation;
-import org.apache.tuscany.sca.core.ExtensionPointRegistry;
-import org.apache.tuscany.sca.provider.PolicyProvider;
-import org.apache.tuscany.sca.provider.PolicyProviderFactory;
-import org.apache.tuscany.sca.runtime.RuntimeComponent;
-import org.apache.tuscany.sca.runtime.RuntimeComponentReference;
-import org.apache.tuscany.sca.runtime.RuntimeComponentService;
-
-/**
- * @version $Rev$ $Date$
- */
-public class JMSHeaderPolicyProviderFactory implements PolicyProviderFactory<JMSHeaderPolicy> {
- private ExtensionPointRegistry registry;
-
- public JMSHeaderPolicyProviderFactory(ExtensionPointRegistry registry) {
- super();
- this.registry = registry;
- }
-
- /**
- * @see org.apache.tuscany.sca.provider.PolicyProviderFactory#createImplementationPolicyProvider(org.apache.tuscany.sca.runtime.RuntimeComponent, org.apache.tuscany.sca.assembly.Implementation)
- */
- public PolicyProvider createImplementationPolicyProvider(RuntimeComponent component, Implementation implementation) {
- return null;
- }
-
- /**
- * @see org.apache.tuscany.sca.provider.PolicyProviderFactory#createReferencePolicyProvider(org.apache.tuscany.sca.runtime.RuntimeComponent, org.apache.tuscany.sca.runtime.RuntimeComponentReference, org.apache.tuscany.sca.assembly.Binding)
- */
- public PolicyProvider createReferencePolicyProvider(RuntimeComponent component,
- RuntimeComponentReference reference,
- Binding binding) {
- return new JMSHeaderReferencePolicyProvider(component, reference, binding);
- }
-
- /**
- * @see org.apache.tuscany.sca.provider.PolicyProviderFactory#createServicePolicyProvider(org.apache.tuscany.sca.runtime.RuntimeComponent, org.apache.tuscany.sca.runtime.RuntimeComponentService, org.apache.tuscany.sca.assembly.Binding)
- */
- public PolicyProvider createServicePolicyProvider(RuntimeComponent component,
- RuntimeComponentService service,
- Binding binding) {
- return null;
- }
-
- /**
- * @see org.apache.tuscany.sca.provider.ProviderFactory#getModelType()
- */
- public Class getModelType() {
- // TODO Auto-generated method stub
- return null;
- }
-
-}
diff --git a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-policy/src/main/java/org/apache/tuscany/sca/binding/jms/policy/header/JMSHeaderReferencePolicyInterceptor.java b/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-policy/src/main/java/org/apache/tuscany/sca/binding/jms/policy/header/JMSHeaderReferencePolicyInterceptor.java
deleted file mode 100644
index 3c7b4467ba..0000000000
--- a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-policy/src/main/java/org/apache/tuscany/sca/binding/jms/policy/header/JMSHeaderReferencePolicyInterceptor.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.binding.jms.policy.header;
-
-
-import java.util.Map;
-
-import javax.jms.DeliveryMode;
-import javax.jms.JMSException;
-import javax.security.auth.Subject;
-
-import org.apache.tuscany.sca.assembly.Binding;
-import org.apache.tuscany.sca.binding.jms.context.JMSBindingContext;
-import org.apache.tuscany.sca.binding.jms.impl.JMSBinding;
-import org.apache.tuscany.sca.binding.jms.impl.JMSBindingConstants;
-import org.apache.tuscany.sca.binding.jms.impl.JMSBindingException;
-import org.apache.tuscany.sca.binding.jms.policy.JMSBindingDefinitionsProvider;
-import org.apache.tuscany.sca.interfacedef.Operation;
-import org.apache.tuscany.sca.invocation.Interceptor;
-import org.apache.tuscany.sca.invocation.Invoker;
-import org.apache.tuscany.sca.invocation.Message;
-import org.apache.tuscany.sca.policy.PolicySet;
-import org.apache.tuscany.sca.policy.SecurityUtil;
-import org.apache.tuscany.sca.policy.authentication.token.TokenPrincipal;
-import org.apache.tuscany.sca.runtime.ReferenceParameters;
-import org.apache.tuscany.sca.runtime.RuntimeComponent;
-import org.apache.tuscany.sca.runtime.RuntimeComponentReference;
-
-/**
- * Policy handler to handle PolicySet related to Logging with the QName
- * {http://tuscany.apache.org/xmlns/sca/1.0/impl/java}LoggingPolicy
- *
- * @version $Rev$ $Date$
- */
-public class JMSHeaderReferencePolicyInterceptor implements Interceptor {
-
- private Invoker next;
- private RuntimeComponent component;
- private RuntimeComponentReference reference;
- private JMSBinding jmsBinding;
- private PolicySet policySet = null;
- private String context;
- private JMSHeaderPolicy jmsHeaderPolicy;
-
- public JMSHeaderReferencePolicyInterceptor(String context, RuntimeComponent component, RuntimeComponentReference reference, Binding binding, PolicySet policySet) {
- super();
- this.component = component;
- this.reference = reference;
- this.jmsBinding = (JMSBinding)binding;
- this.policySet = policySet;
- this.context = context;
-
- init();
- }
-
- private void init() {
- if (policySet != null) {
- for (Object policyObject : policySet.getPolicies()){
- if (policyObject instanceof JMSHeaderPolicy){
- jmsHeaderPolicy = (JMSHeaderPolicy)policyObject;
- break;
- }
- }
- }
- }
-
- public Message invoke(Message msg) {
- // get the jms context
- JMSBindingContext context = msg.getBindingContext();
-
- javax.jms.Message jmsMsg = msg.getBody();
-
- // JMS header attrs set on MessageProducer via interceptors.
-
- return getNext().invoke(msg);
- }
-
- public Invoker getNext() {
- return next;
- }
-
- public void setNext(Invoker next) {
- this.next = next;
- }
-}
diff --git a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-policy/src/main/java/org/apache/tuscany/sca/binding/jms/policy/header/JMSHeaderReferencePolicyProvider.java b/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-policy/src/main/java/org/apache/tuscany/sca/binding/jms/policy/header/JMSHeaderReferencePolicyProvider.java
deleted file mode 100644
index 3983541de3..0000000000
--- a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-policy/src/main/java/org/apache/tuscany/sca/binding/jms/policy/header/JMSHeaderReferencePolicyProvider.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.binding.jms.policy.header;
-
-import java.util.List;
-
-import org.apache.tuscany.sca.assembly.Binding;
-import org.apache.tuscany.sca.interfacedef.Operation;
-import org.apache.tuscany.sca.invocation.Interceptor;
-import org.apache.tuscany.sca.invocation.Phase;
-import org.apache.tuscany.sca.policy.PolicySet;
-import org.apache.tuscany.sca.policy.PolicySetAttachPoint;
-import org.apache.tuscany.sca.policy.util.PolicyHandler;
-import org.apache.tuscany.sca.provider.PolicyProvider;
-import org.apache.tuscany.sca.runtime.RuntimeComponent;
-import org.apache.tuscany.sca.runtime.RuntimeComponentReference;
-
-/**
- * @version $Rev$ $Date$
- */
-public class JMSHeaderReferencePolicyProvider implements PolicyProvider {
- private RuntimeComponent component;
- private RuntimeComponentReference reference;
- private Binding binding;
-
- public JMSHeaderReferencePolicyProvider(RuntimeComponent component,
- RuntimeComponentReference reference,
- Binding binding) {
- super();
- this.component = component;
- this.reference = reference;
- this.binding = binding;
- }
-
- private PolicySet findPolicySet() {
- if (binding instanceof PolicySetAttachPoint) {
- List<PolicySet> policySets = ((PolicySetAttachPoint)binding).getApplicablePolicySets();
- for (PolicySet ps : policySets) {
- for (Object p : ps.getPolicies()) {
- if (JMSHeaderPolicy.class.isInstance(p)) {
- return ps;
- }
- }
- }
- }
- return null;
- }
-
- private String getContext() {
- return "component.reference: " + component.getURI()
- + "#"
- + reference.getName()
- + "("
- + binding.getClass().getName()
- + ")";
- }
-
- /**
- * @see org.apache.tuscany.sca.provider.PolicyProvider#createInterceptor(org.apache.tuscany.sca.interfacedef.Operation)
- */
- public Interceptor createInterceptor(Operation operation) {
- PolicySet ps = findPolicySet();
- return ps == null ? null : new JMSHeaderReferencePolicyInterceptor(getContext(), component, reference, binding, ps);
- }
-
- /**
- * @see org.apache.tuscany.sca.provider.PolicyProvider#getPhase()
- */
- public String getPhase() {
- return Phase.REFERENCE_BINDING_POLICY;
- }
-
-}
diff --git a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-policy/src/main/resources/META-INF/services/org.apache.tuscany.sca.contribution.processor.StAXArtifactProcessor b/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-policy/src/main/resources/META-INF/services/org.apache.tuscany.sca.contribution.processor.StAXArtifactProcessor
deleted file mode 100644
index e6f22e327c..0000000000
--- a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-policy/src/main/resources/META-INF/services/org.apache.tuscany.sca.contribution.processor.StAXArtifactProcessor
+++ /dev/null
@@ -1,20 +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.
-
-# Implementation class for the artifact processor extension
-org.apache.tuscany.sca.binding.jms.policy.authentication.token.JMSTokenAuthenticationPolicyProcessor;qname=http://tuscany.apache.org/xmlns/sca/1.0#jmsTokenAuthentication,model=org.apache.tuscany.sca.binding.jms.policy.authentication.token.JMSTokenAuthenticationPolicy
-org.apache.tuscany.sca.binding.jms.policy.header.JMSHeaderPolicyProcessor;qname=http://tuscany.apache.org/xmlns/sca/1.0#jmsHeader,model=org.apache.tuscany.sca.binding.jms.policy.header.JMSHeaderPolicy \ No newline at end of file
diff --git a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-policy/src/main/resources/META-INF/services/org.apache.tuscany.sca.provider.PolicyProviderFactory b/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-policy/src/main/resources/META-INF/services/org.apache.tuscany.sca.provider.PolicyProviderFactory
deleted file mode 100644
index b04c71d8e3..0000000000
--- a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-policy/src/main/resources/META-INF/services/org.apache.tuscany.sca.provider.PolicyProviderFactory
+++ /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.
-
-# Implementation class for the policy extension
-org.apache.tuscany.sca.binding.jms.policy.authentication.token.JMSTokenAuthenticationPolicyProviderFactory;model=org.apache.tuscany.sca.binding.jms.policy.authentication.token.JMSTokenAuthenticationPolicy \ No newline at end of file
diff --git a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-policy/src/main/resources/META-INF/services/org.apache.tuscany.sca.provider.SCADefinitionsProvider b/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-policy/src/main/resources/META-INF/services/org.apache.tuscany.sca.provider.SCADefinitionsProvider
deleted file mode 100644
index 0598cdc368..0000000000
--- a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-policy/src/main/resources/META-INF/services/org.apache.tuscany.sca.provider.SCADefinitionsProvider
+++ /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.
-
-# Implementation class for SCA Definitions Providers
-org.apache.tuscany.sca.binding.jms.policy.JMSBindingDefinitionsProvider \ No newline at end of file
diff --git a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-policy/src/main/resources/binding-jms-policy-validation-messages.properties b/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-policy/src/main/resources/binding-jms-policy-validation-messages.properties
deleted file mode 100644
index fd43b2c4e9..0000000000
--- a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-policy/src/main/resources/binding-jms-policy-validation-messages.properties
+++ /dev/null
@@ -1,23 +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.
-#
-#
-InvalidDeliveryMode = JMSDeliveryMode must be either PERSISTENT or NON_PERSISTENT but found {0}
-InvalidTimeToLive = JMSTimeToLive must be a long integer but found {0}
-InvalidPriority = JMSPriority must be a integer but found {0}
diff --git a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-policy/src/main/resources/org/apache/tuscany/sca/binding/jms/policy/definitions.xml b/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-policy/src/main/resources/org/apache/tuscany/sca/binding/jms/policy/definitions.xml
deleted file mode 100644
index c87079dd54..0000000000
--- a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-policy/src/main/resources/org/apache/tuscany/sca/binding/jms/policy/definitions.xml
+++ /dev/null
@@ -1,84 +0,0 @@
-<?xml version="1.0" encoding="ASCII"?>
-<!--
- * 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.
--->
-<definitions xmlns="http://www.osoa.org/xmlns/sca/1.0"
- targetNamespace="http://www.osoa.org/xmlns/sca/1.0"
- xmlns:sca="http://www.osoa.org/xmlns/sca/1.0">
-
- <!-- intents not yet enabled -->
- <!--sca:bindingType type="sca:binding.jms"
- alwaysProvides="JMS"
- mayProvide="atLeastOnce atMostOnce ordered conversation" /-->
-
- <!-- PolicyIntents defined by the SCA Runtime Extension for JMS Binding -->
-
- <sca:intent name="JMS" constrains="sca:binding.jms">
- <sca:description>
- Communication through this binding requires JMS
- </sca:description>
- </sca:intent>
-
- <!-- delivery mode -->
- <intent name="deliveryMode"
- constrains="sca:binding.jms">
- <description>
- This intent is used to indicate the deliver mode
- of the sent message
- </description>
- </intent>
-
- <intent name="deliveryMode.persistent">
- <description>
- Message are sent persistently
- </description>
- </intent>
-
- <intent name="deliveryMode.nonPersistent">
- <description>
- Message are sent persistently
- </description>
- </intent>
-
- <!-- priority -->
- <intent name="priority"
- constrains="sca:binding.jms">
- <description>
- This intent is used to indicate the priority of the
- sent message
- </description>
- </intent>
-
- <intent name="priority.high">
- <description>
- Messages are high priority
- </description>
- </intent>
-
- <intent name="priority.medium">
- <description>
- Messages are medium priority
- </description>
- </intent>
-
- <intent name="priority.low">
- <description>
- Messages are low priority
- </description>
- </intent>
-</definitions> \ No newline at end of file
diff --git a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-policy/src/test/java/org/apache/tuscany/sca/binding/jms/policy/PolicyProcessorTestCase.java b/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-policy/src/test/java/org/apache/tuscany/sca/binding/jms/policy/PolicyProcessorTestCase.java
deleted file mode 100644
index a9da07ca7d..0000000000
--- a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-policy/src/test/java/org/apache/tuscany/sca/binding/jms/policy/PolicyProcessorTestCase.java
+++ /dev/null
@@ -1,91 +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.binding.jms.policy;
-
-import java.io.ByteArrayOutputStream;
-import java.io.InputStream;
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-
-import javax.xml.namespace.QName;
-import javax.xml.stream.XMLInputFactory;
-import javax.xml.stream.XMLOutputFactory;
-import javax.xml.stream.XMLStreamConstants;
-import javax.xml.stream.XMLStreamReader;
-import javax.xml.stream.XMLStreamWriter;
-
-import junit.framework.Assert;
-
-import org.apache.tuscany.sca.binding.jms.policy.authentication.token.JMSTokenAuthenticationPolicy;
-import org.apache.tuscany.sca.binding.jms.policy.authentication.token.JMSTokenAuthenticationPolicyProcessor;
-import org.apache.tuscany.sca.binding.jms.policy.header.JMSHeaderPolicy;
-import org.apache.tuscany.sca.binding.jms.policy.header.JMSHeaderPolicyProcessor;
-import org.apache.tuscany.sca.contribution.processor.StAXArtifactProcessor;
-import org.apache.tuscany.sca.policy.Policy;
-import org.junit.Test;
-
-/**
- * @version $Rev$ $Date$
- */
-public class PolicyProcessorTestCase {
- private final static List<String> SEQ =
- Arrays.asList("<tuscany:jmsHeader xmlns:tuscany=\"http://tuscany.apache.org/xmlns/sca/1.0\" JMSType=\"ABC\" JMSDeliveryMode=\"PERSISTENT\" JMSTimeToLive=\"123\" JMSPriority=\"4\"><tuscany:property name=\"aProperty\">property value</tuscany:property></tuscany:jmsHeader>",
- "<tuscany:jmsTokenAuthentication xmlns:tuscany=\"http://tuscany.apache.org/xmlns/sca/1.0\" tuscany:tokenName=\"{http://tuscany.apache.org/foo}myname\" />");
-
- @Test
- public void testRead() throws Exception {
- List<String> results = new ArrayList<String>();
- Map<QName, StAXArtifactProcessor> processors = new HashMap<QName, StAXArtifactProcessor>();
- processors.put(JMSHeaderPolicy.JMS_HEADER_POLICY_QNAME, new JMSHeaderPolicyProcessor(null, null));
- processors.put(JMSTokenAuthenticationPolicy.JMS_TOKEN_AUTHENTICATION_POLICY_QNAME, new JMSTokenAuthenticationPolicyProcessor(null, null));
-
- InputStream is = getClass().getResourceAsStream("mock_policy_definitions.xml");
- XMLInputFactory inputFactory = XMLInputFactory.newInstance();
- XMLStreamReader reader = inputFactory.createXMLStreamReader(is);
-
- XMLOutputFactory outputFactory = XMLOutputFactory.newInstance();
-
- while (true) {
- int event = reader.getEventType();
- if (event == XMLStreamConstants.START_ELEMENT) {
- if ("policySet".equals(reader.getName().getLocalPart())) {
- reader.nextTag();
- StAXArtifactProcessor processor = processors.get(reader.getName());
- Policy policy = (Policy)processor.read(reader);
-
- ByteArrayOutputStream outputStream = new ByteArrayOutputStream();
- XMLStreamWriter writer = outputFactory.createXMLStreamWriter(outputStream);
- processor.write(policy, writer);
- writer.flush();
- results.add(outputStream.toString());
- }
- }
- if (reader.hasNext()) {
- reader.next();
- } else {
- break;
- }
- }
- Assert.assertEquals(SEQ, results);
- }
-}
diff --git a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-policy/src/test/resources/org/apache/tuscany/sca/binding/jms/policy/mock_policy_definitions.xml b/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-policy/src/test/resources/org/apache/tuscany/sca/binding/jms/policy/mock_policy_definitions.xml
deleted file mode 100644
index 3631c682aa..0000000000
--- a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-policy/src/test/resources/org/apache/tuscany/sca/binding/jms/policy/mock_policy_definitions.xml
+++ /dev/null
@@ -1,39 +0,0 @@
-<?xml version="1.0" encoding="ASCII"?>
-<!--
- * 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.
--->
-<definitions xmlns="http://www.osoa.org/xmlns/sca/1.0"
- targetNamespace="http://tuscany.apache.org/xmlns/sca/1.0"
- xmlns:tuscany="http://tuscany.apache.org/xmlns/sca/1.0"
- xmlns:sca="http://www.osoa.org/xmlns/sca/1.0">
-
- <!-- POLICY SETS -->
- <policySet name="ps1" provides="authorization" appliesTo="sca:implementation">
- <tuscany:jmsHeader JMSType="ABC"
- JMSCorrelattionID="DEF"
- JMSDeliveryMode="PERSISTENT"
- JMSTimeToLive="123"
- JMSPriority="4">
- <property name="aProperty">property value</property>
- </tuscany:jmsHeader>
- </policySet>
-
- <policySet name="ps2" provides="authorization" appliesTo="sca:implementation">
- <tuscany:jmsTokenAuthentication xmlns:foo="http://tuscany.apache.org/foo" tokenName="foo:myname"/>
- </policySet>
-</definitions> \ No newline at end of file
diff --git a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/LICENSE b/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/LICENSE
deleted file mode 100644
index 8aa906c321..0000000000
--- a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/LICENSE
+++ /dev/null
@@ -1,205 +0,0 @@
-
- Apache License
- Version 2.0, January 2004
- http://www.apache.org/licenses/
-
- TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
-
- 1. Definitions.
-
- "License" shall mean the terms and conditions for use, reproduction,
- and distribution as defined by Sections 1 through 9 of this document.
-
- "Licensor" shall mean the copyright owner or entity authorized by
- the copyright owner that is granting the License.
-
- "Legal Entity" shall mean the union of the acting entity and all
- other entities that control, are controlled by, or are under common
- control with that entity. For the purposes of this definition,
- "control" means (i) the power, direct or indirect, to cause the
- direction or management of such entity, whether by contract or
- otherwise, or (ii) ownership of fifty percent (50%) or more of the
- outstanding shares, or (iii) beneficial ownership of such entity.
-
- "You" (or "Your") shall mean an individual or Legal Entity
- exercising permissions granted by this License.
-
- "Source" form shall mean the preferred form for making modifications,
- including but not limited to software source code, documentation
- source, and configuration files.
-
- "Object" form shall mean any form resulting from mechanical
- transformation or translation of a Source form, including but
- not limited to compiled object code, generated documentation,
- and conversions to other media types.
-
- "Work" shall mean the work of authorship, whether in Source or
- Object form, made available under the License, as indicated by a
- copyright notice that is included in or attached to the work
- (an example is provided in the Appendix below).
-
- "Derivative Works" shall mean any work, whether in Source or Object
- form, that is based on (or derived from) the Work and for which the
- editorial revisions, annotations, elaborations, or other modifications
- represent, as a whole, an original work of authorship. For the purposes
- of this License, Derivative Works shall not include works that remain
- separable from, or merely link (or bind by name) to the interfaces of,
- the Work and Derivative Works thereof.
-
- "Contribution" shall mean any work of authorship, including
- the original version of the Work and any modifications or additions
- to that Work or Derivative Works thereof, that is intentionally
- submitted to Licensor for inclusion in the Work by the copyright owner
- or by an individual or Legal Entity authorized to submit on behalf of
- the copyright owner. For the purposes of this definition, "submitted"
- means any form of electronic, verbal, or written communication sent
- to the Licensor or its representatives, including but not limited to
- communication on electronic mailing lists, source code control systems,
- and issue tracking systems that are managed by, or on behalf of, the
- Licensor for the purpose of discussing and improving the Work, but
- excluding communication that is conspicuously marked or otherwise
- designated in writing by the copyright owner as "Not a Contribution."
-
- "Contributor" shall mean Licensor and any individual or Legal Entity
- on behalf of whom a Contribution has been received by Licensor and
- subsequently incorporated within the Work.
-
- 2. Grant of Copyright License. Subject to the terms and conditions of
- this License, each Contributor hereby grants to You a perpetual,
- worldwide, non-exclusive, no-charge, royalty-free, irrevocable
- copyright license to reproduce, prepare Derivative Works of,
- publicly display, publicly perform, sublicense, and distribute the
- Work and such Derivative Works in Source or Object form.
-
- 3. Grant of Patent License. Subject to the terms and conditions of
- this License, each Contributor hereby grants to You a perpetual,
- worldwide, non-exclusive, no-charge, royalty-free, irrevocable
- (except as stated in this section) patent license to make, have made,
- use, offer to sell, sell, import, and otherwise transfer the Work,
- where such license applies only to those patent claims licensable
- by such Contributor that are necessarily infringed by their
- Contribution(s) alone or by combination of their Contribution(s)
- with the Work to which such Contribution(s) was submitted. If You
- institute patent litigation against any entity (including a
- cross-claim or counterclaim in a lawsuit) alleging that the Work
- or a Contribution incorporated within the Work constitutes direct
- or contributory patent infringement, then any patent licenses
- granted to You under this License for that Work shall terminate
- as of the date such litigation is filed.
-
- 4. Redistribution. You may reproduce and distribute copies of the
- Work or Derivative Works thereof in any medium, with or without
- modifications, and in Source or Object form, provided that You
- meet the following conditions:
-
- (a) You must give any other recipients of the Work or
- Derivative Works a copy of this License; and
-
- (b) You must cause any modified files to carry prominent notices
- stating that You changed the files; and
-
- (c) You must retain, in the Source form of any Derivative Works
- that You distribute, all copyright, patent, trademark, and
- attribution notices from the Source form of the Work,
- excluding those notices that do not pertain to any part of
- the Derivative Works; and
-
- (d) If the Work includes a "NOTICE" text file as part of its
- distribution, then any Derivative Works that You distribute must
- include a readable copy of the attribution notices contained
- within such NOTICE file, excluding those notices that do not
- pertain to any part of the Derivative Works, in at least one
- of the following places: within a NOTICE text file distributed
- as part of the Derivative Works; within the Source form or
- documentation, if provided along with the Derivative Works; or,
- within a display generated by the Derivative Works, if and
- wherever such third-party notices normally appear. The contents
- of the NOTICE file are for informational purposes only and
- do not modify the License. You may add Your own attribution
- notices within Derivative Works that You distribute, alongside
- or as an addendum to the NOTICE text from the Work, provided
- that such additional attribution notices cannot be construed
- as modifying the License.
-
- You may add Your own copyright statement to Your modifications and
- may provide additional or different license terms and conditions
- for use, reproduction, or distribution of Your modifications, or
- for any such Derivative Works as a whole, provided Your use,
- reproduction, and distribution of the Work otherwise complies with
- the conditions stated in this License.
-
- 5. Submission of Contributions. Unless You explicitly state otherwise,
- any Contribution intentionally submitted for inclusion in the Work
- by You to the Licensor shall be under the terms and conditions of
- this License, without any additional terms or conditions.
- Notwithstanding the above, nothing herein shall supersede or modify
- the terms of any separate license agreement you may have executed
- with Licensor regarding such Contributions.
-
- 6. Trademarks. This License does not grant permission to use the trade
- names, trademarks, service marks, or product names of the Licensor,
- except as required for reasonable and customary use in describing the
- origin of the Work and reproducing the content of the NOTICE file.
-
- 7. Disclaimer of Warranty. Unless required by applicable law or
- agreed to in writing, Licensor provides the Work (and each
- Contributor provides its Contributions) on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
- implied, including, without limitation, any warranties or conditions
- of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
- PARTICULAR PURPOSE. You are solely responsible for determining the
- appropriateness of using or redistributing the Work and assume any
- risks associated with Your exercise of permissions under this License.
-
- 8. Limitation of Liability. In no event and under no legal theory,
- whether in tort (including negligence), contract, or otherwise,
- unless required by applicable law (such as deliberate and grossly
- negligent acts) or agreed to in writing, shall any Contributor be
- liable to You for damages, including any direct, indirect, special,
- incidental, or consequential damages of any character arising as a
- result of this License or out of the use or inability to use the
- Work (including but not limited to damages for loss of goodwill,
- work stoppage, computer failure or malfunction, or any and all
- other commercial damages or losses), even if such Contributor
- has been advised of the possibility of such damages.
-
- 9. Accepting Warranty or Additional Liability. While redistributing
- the Work or Derivative Works thereof, You may choose to offer,
- and charge a fee for, acceptance of support, warranty, indemnity,
- or other liability obligations and/or rights consistent with this
- License. However, in accepting such obligations, You may act only
- on Your own behalf and on Your sole responsibility, not on behalf
- of any other Contributor, and only if You agree to indemnify,
- defend, and hold each Contributor harmless for any liability
- incurred by, or claims asserted against, such Contributor by reason
- of your accepting any such warranty or additional liability.
-
- END OF TERMS AND CONDITIONS
-
- APPENDIX: How to apply the Apache License to your work.
-
- To apply the Apache License to your work, attach the following
- boilerplate notice, with the fields enclosed by brackets "[]"
- replaced with your own identifying information. (Don't include
- the brackets!) The text should be enclosed in the appropriate
- comment syntax for the file format. We also recommend that a
- file or class name and description of purpose be included on the
- same "printed page" as the copyright notice for easier
- identification within third-party archives.
-
- Copyright [yyyy] [name of copyright owner]
-
- Licensed 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.
-
-
-
diff --git a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/NOTICE b/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/NOTICE
deleted file mode 100644
index fdfa0e9faa..0000000000
--- a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/NOTICE
+++ /dev/null
@@ -1,6 +0,0 @@
-${pom.name}
-Copyright (c) 2005 - 2008 The Apache Software Foundation
-
-This product includes software developed by
-The Apache Software Foundation (http://www.apache.org/).
-
diff --git a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/pom.xml b/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/pom.xml
deleted file mode 100644
index a0e78037bb..0000000000
--- a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/pom.xml
+++ /dev/null
@@ -1,142 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
- * 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.
--->
-<project>
- <modelVersion>4.0.0</modelVersion>
- <parent>
- <groupId>org.apache.tuscany.sca</groupId>
- <artifactId>tuscany-modules</artifactId>
- <version>1.5.1</version>
- <relativePath>../pom.xml</relativePath>
- </parent>
- <artifactId>tuscany-binding-jms-runtime</artifactId>
- <name>Apache Tuscany SCA JMS Binding Runtime</name>
-
- <dependencies>
-
- <dependency>
- <groupId>org.apache.tuscany.sca</groupId>
- <artifactId>tuscany-binding-jms</artifactId>
- <version>1.5.1</version>
- </dependency>
-
- <dependency>
- <groupId>org.apache.tuscany.sca</groupId>
- <artifactId>tuscany-host-jms</artifactId>
- <version>1.5.1</version>
- </dependency>
-
- <dependency>
- <groupId>org.apache.tuscany.sca</groupId>
- <artifactId>tuscany-sca-api</artifactId>
- <version>1.5.1</version>
- </dependency>
-
- <dependency>
- <groupId>org.apache.tuscany.sca</groupId>
- <artifactId>tuscany-core-spi</artifactId>
- <version>1.5.1</version>
- </dependency>
-
- <dependency>
- <groupId>org.apache.tuscany.sca</groupId>
- <artifactId>tuscany-core</artifactId>
- <version>1.5.1</version>
- </dependency>
-
- <dependency>
- <groupId>org.apache.tuscany.sca</groupId>
- <artifactId>tuscany-interface-java</artifactId>
- <version>1.5.1</version>
- </dependency>
-
- <dependency>
- <groupId>org.apache.tuscany.sca</groupId>
- <artifactId>tuscany-interface-wsdl</artifactId>
- <version>1.5.1</version>
- </dependency>
-
- <dependency>
- <groupId>org.apache.tuscany.sca</groupId>
- <artifactId>tuscany-databinding-axiom</artifactId>
- <version>1.5.1</version>
- </dependency>
-
- <dependency>
- <groupId>org.apache.tuscany.sca</groupId>
- <artifactId>tuscany-binding-ws-wsdlgen</artifactId>
- <version>1.5.1</version>
- </dependency>
-
- <dependency>
- <groupId>org.apache.geronimo.specs</groupId>
- <artifactId>geronimo-jms_1.1_spec</artifactId>
- <version>1.1</version>
- <scope>provided</scope>
- <exclusions>
- <exclusion>
- <groupId>org.apache.geronimo.specs</groupId>
- <artifactId>geronimo-jms_1.1_spec</artifactId>
- </exclusion>
- </exclusions>
- </dependency>
-
- <dependency>
- <groupId>org.apache.tuscany.sca</groupId>
- <artifactId>tuscany-implementation-java-runtime</artifactId>
- <version>1.5.1</version>
- <scope>test</scope>
- </dependency>
-
- <dependency>
- <groupId>org.apache.tuscany.sca</groupId>
- <artifactId>tuscany-host-embedded</artifactId>
- <version>1.5.1</version>
- <scope>test</scope>
- </dependency>
-
- <dependency>
- <groupId>junit</groupId>
- <artifactId>junit</artifactId>
- <version>4.5</version>
- <scope>test</scope>
- </dependency>
-
- </dependencies>
-
-
- <build>
- <plugins>
- <plugin>
- <groupId>org.apache.felix</groupId>
- <artifactId>maven-bundle-plugin</artifactId>
-
- <configuration>
- <instructions>
- <Bundle-Version>${tuscany.version}</Bundle-Version>
- <Bundle-SymbolicName>org.apache.tuscany.sca.binding.jms.runtime</Bundle-SymbolicName>
- <Bundle-Description>${pom.name}</Bundle-Description>
- <Export-Package>org.apache.tuscany.sca.binding.jms.provider*</Export-Package>
- </instructions>
- </configuration>
- </plugin>
- </plugins>
- </build>
-
-</project>
diff --git a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/context/JMSBindingContext.java b/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/context/JMSBindingContext.java
deleted file mode 100644
index 677f8eb6f8..0000000000
--- a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/context/JMSBindingContext.java
+++ /dev/null
@@ -1,143 +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.binding.jms.context;
-
-import javax.jms.Destination;
-import javax.jms.JMSException;
-import javax.jms.Message;
-import javax.jms.Session;
-import javax.naming.NamingException;
-
-import org.apache.tuscany.sca.binding.jms.impl.JMSBindingException;
-import org.apache.tuscany.sca.binding.jms.provider.JMSResourceFactory;
-
-
-/**
- * Context that the JMS binding puts on the Tuscany wire
- *
- * @version $Rev$ $Date$
- */
-public class JMSBindingContext {
-
- private Message jmsMsg;
- private Session jmsSession;
- private Session jmsResponseSession;
- private Destination requestDestination;
- private Destination replyToDestination;
- private JMSResourceFactory jmsResourceFactory;
- private long timeToLive;
- private boolean useBytesForWFJMSDefaultResponse;
-
- public Message getJmsMsg() {
- return jmsMsg;
- }
-
- public void setJmsMsg(Message jmsMsg) {
- this.jmsMsg = jmsMsg;
- }
-
- public synchronized Session getJmsSession() {
- if (jmsSession == null) {
- try {
- jmsSession = getJmsResourceFactory().createSession();
- } catch (Exception e) {
- throw new JMSBindingException(e);
- }
- }
- return jmsSession;
- }
-
- public synchronized void closeJmsSession() {
- if (jmsSession != null) {
- try {
- getJmsResourceFactory().closeSession(jmsSession);
- } catch (Exception e) {
- throw new JMSBindingException(e);
- } finally {
- jmsSession = null;
- }
- }
- }
-
- public synchronized Session getJmsResponseSession() {
- if (jmsResponseSession == null) {
- try {
- jmsResponseSession = getJmsResourceFactory().createResponseSession();
- } catch (Exception e) {
- throw new JMSBindingException(e);
- }
- }
- return jmsResponseSession;
- }
-
- public synchronized void closeJmsResponseSession() {
- if (jmsResponseSession != null) {
- try {
- getJmsResourceFactory().closeResponseSession(jmsResponseSession);
- } catch (Exception e) {
- throw new JMSBindingException(e);
- } finally {
- jmsResponseSession = null;
- }
- }
- }
-
- public Destination getRequestDestination() {
- return requestDestination;
- }
-
- public void setRequestDestination(Destination requestDestination) {
- this.requestDestination = requestDestination;
- }
-
- public Destination getReplyToDestination() {
- return replyToDestination;
- }
-
- public void setReplyToDestination(Destination replyToDestination) {
- this.replyToDestination = replyToDestination;
- }
-
- // TODO - difficult to get the resource factory into all the JMS providers
- // so it's here for the moment
- public JMSResourceFactory getJmsResourceFactory() {
- return jmsResourceFactory;
- }
-
- public void setJmsResourceFactory(JMSResourceFactory jmsResourceFactory) {
- this.jmsResourceFactory = jmsResourceFactory;
- }
-
- public long getTimeToLive() {
- return timeToLive;
- }
-
- public void setTimeToLive(long timeToLive) {
- this.timeToLive = timeToLive;
- }
-
- public boolean isUseBytesForWFJMSDefaultResponse() {
- return useBytesForWFJMSDefaultResponse;
- }
-
- public void setUseBytesForWFJMSDefaultResponse(
- boolean useBytesForWFJMSDefaultResponse) {
- this.useBytesForWFJMSDefaultResponse = useBytesForWFJMSDefaultResponse;
- }
-}
diff --git a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/headers/HeaderReferenceInterceptor.java b/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/headers/HeaderReferenceInterceptor.java
deleted file mode 100644
index 5b7c8f992d..0000000000
--- a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/headers/HeaderReferenceInterceptor.java
+++ /dev/null
@@ -1,182 +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.binding.jms.headers;
-
-
-
-
-import java.util.Map;
-
-import javax.jms.DeliveryMode;
-import javax.jms.JMSException;
-import javax.jms.Session;
-
-import org.apache.tuscany.sca.assembly.Reference;
-import org.apache.tuscany.sca.assembly.WireFormat;
-import org.apache.tuscany.sca.binding.jms.context.JMSBindingContext;
-import org.apache.tuscany.sca.binding.jms.impl.JMSBinding;
-import org.apache.tuscany.sca.binding.jms.impl.JMSBindingConstants;
-import org.apache.tuscany.sca.binding.jms.impl.JMSBindingException;
-import org.apache.tuscany.sca.binding.jms.provider.JMSBindingServiceBindingProvider;
-import org.apache.tuscany.sca.binding.jms.provider.JMSMessageProcessor;
-import org.apache.tuscany.sca.binding.jms.provider.JMSMessageProcessorUtil;
-import org.apache.tuscany.sca.binding.jms.provider.JMSResourceFactory;
-import org.apache.tuscany.sca.interfacedef.Operation;
-import org.apache.tuscany.sca.interfacedef.java.JavaInterface;
-import org.apache.tuscany.sca.invocation.Interceptor;
-import org.apache.tuscany.sca.invocation.Invoker;
-import org.apache.tuscany.sca.invocation.Message;
-import org.apache.tuscany.sca.runtime.ReferenceParameters;
-import org.apache.tuscany.sca.runtime.RuntimeComponentReference;
-import org.apache.tuscany.sca.runtime.RuntimeComponentService;
-import org.apache.tuscany.sca.runtime.RuntimeWire;
-
-/**
- *
- * @version $Rev$ $Date$
- */
-public class HeaderReferenceInterceptor implements Interceptor {
-
- private Invoker next;
- private RuntimeWire runtimeWire;
- private JMSResourceFactory jmsResourceFactory;
- private JMSBinding jmsBinding;
- private JMSMessageProcessor requestMessageProcessor;
- private JMSMessageProcessor responseMessageProcessor;
- private String correlationScheme;
- private WireFormat requestWireFormat;
- private WireFormat responseWireFormat;
-
- public HeaderReferenceInterceptor(JMSBinding jmsBinding, JMSResourceFactory jmsResourceFactory, RuntimeWire runtimeWire) {
- super();
- this.jmsBinding = jmsBinding;
- this.runtimeWire = runtimeWire;
- this.jmsResourceFactory = jmsResourceFactory;
- this.requestMessageProcessor = JMSMessageProcessorUtil.getRequestMessageProcessor(jmsBinding);
- this.responseMessageProcessor = JMSMessageProcessorUtil.getResponseMessageProcessor(jmsBinding);
- this.correlationScheme = jmsBinding.getCorrelationScheme();
-
- }
-
- public Message invoke(Message msg) {
-
- return next.invoke(invokeRequest(msg));
-
- }
-
- public Message invokeRequest(Message tuscanyMsg) {
- try {
- // get the jms context
- JMSBindingContext context = tuscanyMsg.getBindingContext();
- javax.jms.Message jmsMsg = tuscanyMsg.getBody();
-
- Operation operation = tuscanyMsg.getOperation();
- String operationName = operation.getName();
- RuntimeComponentReference reference = (RuntimeComponentReference)runtimeWire.getSource().getContract();
-
- // I think the OASIS spec suggests we do not need to do anything with
- // @nativeOperation here on the reference side.
- requestMessageProcessor.setOperationName(operationName, jmsMsg);
-
- if (jmsBinding.getOperationJMSDeliveryMode(operationName) != null) {
- if (jmsBinding.getOperationJMSDeliveryMode(operationName)) {
- jmsMsg.setJMSDeliveryMode(DeliveryMode.PERSISTENT);
- } else {
- jmsMsg.setJMSDeliveryMode(DeliveryMode.NON_PERSISTENT);
- }
- }
-
- if (jmsBinding.getOperationJMSCorrelationId(operationName) != null) {
- jmsMsg.setJMSCorrelationID(jmsBinding.getOperationJMSCorrelationId(operationName));
- }
-
- if (jmsBinding.getOperationJMSPriority(operationName) != null) {
- jmsMsg.setJMSPriority(jmsBinding.getOperationJMSPriority(operationName));
- }
-
- if (jmsBinding.getOperationJMSType(operationName) != null) {
- jmsMsg.setJMSType(jmsBinding.getOperationJMSType(operationName));
- }
-
- ReferenceParameters parameters = tuscanyMsg.getFrom().getReferenceParameters();
-
- Object conversationID = parameters.getConversationID();
- if (conversationID != null) {
- jmsMsg.setStringProperty(JMSBindingConstants.CONVERSATION_ID_PROPERTY, conversationID.toString());
- }
-
- if (tuscanyMsg.getFrom().getCallbackEndpoint() != null) {
-
- if (parameters.getCallbackID() != null) {
- jmsMsg.setStringProperty(JMSBindingConstants.CALLBACK_ID_PROPERTY, parameters.getCallbackID().toString());
- }
-
- String callbackDestName = getCallbackDestinationName(reference);
- if (callbackDestName != null) {
- jmsMsg.setStringProperty(JMSBindingConstants.CALLBACK_Q_PROPERTY, callbackDestName);
- }
- }
-
- for (String propName : jmsBinding.getPropertyNames()) {
- Object value = jmsBinding.getProperty(propName);
- jmsMsg.setObjectProperty(propName, value);
- }
-
- Map<String, Object> operationProperties = jmsBinding.getOperationProperties(operationName);
- if (operationProperties != null) {
- for (String propName : operationProperties.keySet()) {
- Object value = operationProperties.get(propName);
- jmsMsg.setObjectProperty(propName, value);
- }
- }
-
- if (jmsBinding.getOperationJMSTimeToLive(operationName) != null) {
- context.setTimeToLive(jmsBinding.getOperationJMSTimeToLive(operationName) * 2);
- } else {
- context.setTimeToLive(JMSBindingConstants.DEFAULT_TIME_TO_LIVE);
- }
-
- return tuscanyMsg;
- } catch (JMSException e) {
- throw new JMSBindingException(e);
- }
- }
-
-
- protected String getCallbackDestinationName(RuntimeComponentReference reference) {
- RuntimeComponentService s = (RuntimeComponentService)reference.getCallbackService();
- JMSBinding b = s.getBinding(JMSBinding.class);
- if (b != null) {
- JMSBindingServiceBindingProvider bp = (JMSBindingServiceBindingProvider)s.getBindingProvider(b);
- return bp.getDestinationName();
- }
- return null;
- }
-
-
- public Invoker getNext() {
- return next;
- }
-
- public void setNext(Invoker next) {
- this.next = next;
- }
-
-
-}
diff --git a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/operationselector/jmsdefault/runtime/OperationSelectorJMSDefaultProviderFactory.java b/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/operationselector/jmsdefault/runtime/OperationSelectorJMSDefaultProviderFactory.java
deleted file mode 100644
index 64d01b2863..0000000000
--- a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/operationselector/jmsdefault/runtime/OperationSelectorJMSDefaultProviderFactory.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.binding.jms.operationselector.jmsdefault.runtime;
-
-import org.apache.tuscany.sca.assembly.Binding;
-import org.apache.tuscany.sca.binding.jms.impl.JMSBinding;
-import org.apache.tuscany.sca.binding.jms.operationselector.jmsdefault.OperationSelectorJMSDefault;
-import org.apache.tuscany.sca.binding.jms.provider.JMSResourceFactory;
-import org.apache.tuscany.sca.binding.jms.provider.JMSResourceFactoryExtensionPoint;
-import org.apache.tuscany.sca.core.ExtensionPointRegistry;
-import org.apache.tuscany.sca.provider.OperationSelectorProvider;
-import org.apache.tuscany.sca.provider.OperationSelectorProviderFactory;
-import org.apache.tuscany.sca.runtime.RuntimeComponent;
-import org.apache.tuscany.sca.runtime.RuntimeComponentReference;
-import org.apache.tuscany.sca.runtime.RuntimeComponentService;
-
-/**
- * @version $Rev$ $Date$
- */
-public class OperationSelectorJMSDefaultProviderFactory implements OperationSelectorProviderFactory<OperationSelectorJMSDefault> {
- private ExtensionPointRegistry registry;
-
- public OperationSelectorJMSDefaultProviderFactory(ExtensionPointRegistry registry) {
- super();
- this.registry = registry;
- }
-
- /**
- */
- public OperationSelectorProvider createReferenceOperationSelectorProvider(RuntimeComponent component,
- RuntimeComponentReference reference,
- Binding binding) {
- return null;
- }
-
- /**
- */
- public OperationSelectorProvider createServiceOperationSelectorProvider(RuntimeComponent component,
- RuntimeComponentService service,
- Binding binding) {
- return new OperationSelectorJMSDefaultServiceProvider(component, service, binding);
- }
-
- /**
- * @see org.apache.tuscany.sca.provider.ProviderFactory#getModelType()
- */
- public Class getModelType() {
- // TODO Auto-generated method stub
- return null;
- }
-
-}
diff --git a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/operationselector/jmsdefault/runtime/OperationSelectorJMSDefaultServiceInterceptor.java b/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/operationselector/jmsdefault/runtime/OperationSelectorJMSDefaultServiceInterceptor.java
deleted file mode 100644
index 66f875621c..0000000000
--- a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/operationselector/jmsdefault/runtime/OperationSelectorJMSDefaultServiceInterceptor.java
+++ /dev/null
@@ -1,196 +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.binding.jms.operationselector.jmsdefault.runtime;
-
-import java.io.ByteArrayInputStream;
-import java.io.StringReader;
-import java.util.List;
-
-import javax.jms.BytesMessage;
-import javax.jms.Destination;
-import javax.jms.JMSException;
-import javax.jms.Queue;
-import javax.jms.TextMessage;
-import javax.jms.Topic;
-import javax.xml.stream.XMLInputFactory;
-import javax.xml.stream.XMLStreamException;
-import javax.xml.stream.XMLStreamReader;
-
-import org.apache.axiom.om.OMElement;
-import org.apache.axiom.om.impl.builder.StAXOMBuilder;
-import org.apache.tuscany.sca.binding.jms.context.JMSBindingContext;
-import org.apache.tuscany.sca.binding.jms.impl.JMSBinding;
-import org.apache.tuscany.sca.binding.jms.impl.JMSBindingConstants;
-import org.apache.tuscany.sca.binding.jms.impl.JMSBindingException;
-import org.apache.tuscany.sca.binding.jms.provider.JMSMessageProcessor;
-import org.apache.tuscany.sca.binding.jms.provider.JMSMessageProcessorUtil;
-import org.apache.tuscany.sca.binding.jms.provider.JMSResourceFactory;
-import org.apache.tuscany.sca.binding.jms.wireformat.jmsdefault.WireFormatJMSDefault;
-import org.apache.tuscany.sca.binding.jms.wireformat.jmstextxml.WireFormatJMSTextXML;
-import org.apache.tuscany.sca.core.assembly.EndpointReferenceImpl;
-import org.apache.tuscany.sca.interfacedef.Operation;
-import org.apache.tuscany.sca.invocation.Interceptor;
-import org.apache.tuscany.sca.invocation.Invoker;
-import org.apache.tuscany.sca.invocation.Message;
-import org.apache.tuscany.sca.runtime.ReferenceParameters;
-import org.apache.tuscany.sca.runtime.RuntimeComponentService;
-import org.apache.tuscany.sca.runtime.RuntimeWire;
-
-/**
- * Policy handler to handle PolicySet related to Logging with the QName
- * {http://tuscany.apache.org/xmlns/sca/1.0/impl/java}LoggingPolicy
- *
- * @version $Rev$ $Date$
- */
-public class OperationSelectorJMSDefaultServiceInterceptor implements Interceptor {
-
- private static final String ON_MESSAGE_METHOD_NAME = "onMessage";
-
- private Invoker next;
- private RuntimeWire runtimeWire;
- private JMSResourceFactory jmsResourceFactory;
- private JMSBinding jmsBinding;
- private JMSMessageProcessor requestMessageProcessor;
- private JMSMessageProcessor responseMessageProcessor;
- private RuntimeComponentService service;
- private List<Operation> serviceOperations;
-
-
- public OperationSelectorJMSDefaultServiceInterceptor(JMSBinding jmsBinding, JMSResourceFactory jmsResourceFactory,
- RuntimeWire runtimeWire) {
- super();
- this.jmsBinding = jmsBinding;
- this.runtimeWire = runtimeWire;
- this.jmsResourceFactory = jmsResourceFactory;
- this.requestMessageProcessor = JMSMessageProcessorUtil.getRequestMessageProcessor(jmsBinding);
- this.responseMessageProcessor = JMSMessageProcessorUtil.getResponseMessageProcessor(jmsBinding);
- this.service = (RuntimeComponentService)runtimeWire.getTarget().getContract();
- this.serviceOperations = service.getInterfaceContract().getInterface().getOperations();
- }
-
- public Message invoke(Message msg) {
- return next.invoke(invokeRequest(msg));
- }
-
- public Message invokeRequest(Message msg) {
- // get the jms context
- JMSBindingContext context = msg.getBindingContext();
- javax.jms.Message jmsMsg = context.getJmsMsg();
-
- String operationName = requestMessageProcessor.getOperationName(jmsMsg);
- Operation operation = getTargetOperation(operationName, jmsMsg);
- msg.setOperation(operation);
-
- return msg;
- }
-
- protected Operation getTargetOperation(String operationName, javax.jms.Message jmsMsg) {
- Operation operation = null;
-
- if (serviceOperations.size() == 1) {
-
- // SCA JMS Binding Specification - Rule 1.5.1 line 203
- operation = serviceOperations.get(0);
-
- } else if (operationName != null) {
-
- // SCA JMS Binding Specification - Rule 1.5.1 line 205
- for (Operation op : serviceOperations) {
- if (op.getName().equals(operationName)) {
- operation = op;
- break;
- }
- }
- } else if (jmsBinding.getRequestWireFormat() instanceof WireFormatJMSDefault
- || jmsBinding.getRequestWireFormat() instanceof WireFormatJMSTextXML) {
-
- OMElement rootElement;
- String operationFromPayload;
-
- try {
- if (jmsMsg instanceof TextMessage) {
- String xmlPayload = ((TextMessage) jmsMsg).getText();
-
- if (xmlPayload != null) {
- XMLStreamReader reader = XMLInputFactory.newInstance().createXMLStreamReader(new StringReader(xmlPayload));
- StAXOMBuilder builder = new StAXOMBuilder(reader);
- rootElement = builder.getDocumentElement();
- operationFromPayload = rootElement.getLocalName();
- for (Operation op : serviceOperations) {
- if (op.getName().equals(operationFromPayload)) {
- operation = op;
- break;
- }
- }
- }
- } else if (jmsMsg instanceof BytesMessage) {
- long noOfBytes = ((BytesMessage) jmsMsg).getBodyLength();
- byte[] bytes = new byte[(int) noOfBytes];
- ((BytesMessage) jmsMsg).readBytes(bytes);
- ((BytesMessage) jmsMsg).reset();
-
- if (bytes != null) {
- XMLStreamReader reader = XMLInputFactory.newInstance().createXMLStreamReader(new ByteArrayInputStream(bytes));
- StAXOMBuilder builder = new StAXOMBuilder(reader);
- rootElement = builder.getDocumentElement();
- operationFromPayload = rootElement.getLocalName();
- for (Operation op : serviceOperations) {
- if (op.getName().equals(operationFromPayload)) {
- operation = op;
- break;
- }
- }
- }
- }
-
- } catch (XMLStreamException e) {
- //let's ignore this in case the client doesn't want to use a wrapped xml message
- } catch (JMSException e) {
- throw new JMSBindingException(e);
- }
-
- // If operation is still null we attempt the last rule
- if (operation == null) {
-
- // SCA JMS Binding Specification - Rule 1.5.1 line 207
- for (Operation op : serviceOperations) {
- if (op.getName().equals(ON_MESSAGE_METHOD_NAME)) {
- operation = op;
- break;
- }
- }
- }
- }
-
- if (operation == null) {
- throw new JMSBindingException("Can't find operation " + (operationName != null ? operationName : ON_MESSAGE_METHOD_NAME));
- }
-
- return operation;
- }
-
- public Invoker getNext() {
- return next;
- }
-
- public void setNext(Invoker next) {
- this.next = next;
- }
-
-}
diff --git a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/operationselector/jmsdefault/runtime/OperationSelectorJMSDefaultServiceProvider.java b/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/operationselector/jmsdefault/runtime/OperationSelectorJMSDefaultServiceProvider.java
deleted file mode 100644
index 1cceb4e382..0000000000
--- a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/operationselector/jmsdefault/runtime/OperationSelectorJMSDefaultServiceProvider.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.binding.jms.operationselector.jmsdefault.runtime;
-
-import org.apache.tuscany.sca.assembly.Binding;
-import org.apache.tuscany.sca.binding.jms.impl.JMSBinding;
-import org.apache.tuscany.sca.invocation.Interceptor;
-import org.apache.tuscany.sca.invocation.Phase;
-import org.apache.tuscany.sca.provider.OperationSelectorProvider;
-import org.apache.tuscany.sca.runtime.RuntimeComponent;
-import org.apache.tuscany.sca.runtime.RuntimeComponentService;
-
-/**
- * @version $Rev$ $Date$
- */
-public class OperationSelectorJMSDefaultServiceProvider implements OperationSelectorProvider {
- private RuntimeComponent component;
- private RuntimeComponentService service;
- private Binding binding;
-
- public OperationSelectorJMSDefaultServiceProvider(RuntimeComponent component, RuntimeComponentService service, Binding binding) {
- super();
- this.component = component;
- this.service = service;
- this.binding = binding;
- }
-
- /**
- */
- public Interceptor createInterceptor() {
- return new OperationSelectorJMSDefaultServiceInterceptor((JMSBinding)binding,
- null,
- service.getRuntimeWire(binding));
- }
-
- /**
- */
- public String getPhase() {
- return Phase.SERVICE_BINDING_OPERATION_SELECTOR;
- }
-
-}
diff --git a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/operationselector/jmsuserprop/runtime/OperationSelectorJMSUserPropProviderFactory.java b/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/operationselector/jmsuserprop/runtime/OperationSelectorJMSUserPropProviderFactory.java
deleted file mode 100644
index 49ad6add50..0000000000
--- a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/operationselector/jmsuserprop/runtime/OperationSelectorJMSUserPropProviderFactory.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.binding.jms.operationselector.jmsuserprop.runtime;
-
-import org.apache.tuscany.sca.assembly.Binding;
-import org.apache.tuscany.sca.binding.jms.operationselector.jmsuserprop.OperationSelectorJMSUserProp;
-import org.apache.tuscany.sca.core.ExtensionPointRegistry;
-import org.apache.tuscany.sca.provider.OperationSelectorProvider;
-import org.apache.tuscany.sca.provider.OperationSelectorProviderFactory;
-import org.apache.tuscany.sca.runtime.RuntimeComponent;
-import org.apache.tuscany.sca.runtime.RuntimeComponentReference;
-import org.apache.tuscany.sca.runtime.RuntimeComponentService;
-
-public class OperationSelectorJMSUserPropProviderFactory implements OperationSelectorProviderFactory<OperationSelectorJMSUserProp> {
- private ExtensionPointRegistry registry;
-
- public OperationSelectorJMSUserPropProviderFactory(ExtensionPointRegistry registry) {
- super();
- this.registry = registry;
- }
-
- /**
- */
- public OperationSelectorProvider createReferenceOperationSelectorProvider(RuntimeComponent component,
- RuntimeComponentReference reference,
- Binding binding) {
- return null;
- }
-
- /**
- */
- public OperationSelectorProvider createServiceOperationSelectorProvider(RuntimeComponent component,
- RuntimeComponentService service,
- Binding binding) {
- return new OperationSelectorJMSUserPropServiceProvider(component, service, binding);
- }
-
- /**
- * @see org.apache.tuscany.sca.provider.ProviderFactory#getModelType()
- */
- public Class getModelType() {
- return null;
- }
-
-}
diff --git a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/operationselector/jmsuserprop/runtime/OperationSelectorJMSUserPropServiceInterceptor.java b/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/operationselector/jmsuserprop/runtime/OperationSelectorJMSUserPropServiceInterceptor.java
deleted file mode 100644
index 272a0a3c21..0000000000
--- a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/operationselector/jmsuserprop/runtime/OperationSelectorJMSUserPropServiceInterceptor.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.binding.jms.operationselector.jmsuserprop.runtime;
-
-import java.util.List;
-
-import javax.jms.JMSException;
-
-import org.apache.tuscany.sca.binding.jms.context.JMSBindingContext;
-import org.apache.tuscany.sca.binding.jms.impl.JMSBinding;
-import org.apache.tuscany.sca.binding.jms.impl.JMSBindingException;
-import org.apache.tuscany.sca.binding.jms.operationselector.jmsuserprop.OperationSelectorJMSUserProp;
-import org.apache.tuscany.sca.interfacedef.Operation;
-import org.apache.tuscany.sca.invocation.Interceptor;
-import org.apache.tuscany.sca.invocation.Invoker;
-import org.apache.tuscany.sca.invocation.Message;
-import org.apache.tuscany.sca.runtime.RuntimeComponentService;
-import org.apache.tuscany.sca.runtime.RuntimeWire;
-
-/**
- * Interceptor for user property based operation selection
- *
- * <operationSelector.jmsUser propertName="MyHeaderProperty"/>
- *
- */
-public class OperationSelectorJMSUserPropServiceInterceptor implements Interceptor {
-
- private Invoker next;
- private RuntimeWire runtimeWire;
- private JMSBinding jmsBinding;
- private OperationSelectorJMSUserProp operationSelector;
- private RuntimeComponentService service;
- private List<Operation> serviceOperations;
-
- public OperationSelectorJMSUserPropServiceInterceptor(JMSBinding jmsBinding, RuntimeWire runtimeWire) {
- super();
- this.jmsBinding = jmsBinding;
- this.operationSelector = (OperationSelectorJMSUserProp)jmsBinding.getOperationSelector();
- this.runtimeWire = runtimeWire;
- this.service = (RuntimeComponentService) runtimeWire.getTarget().getContract();
- this.serviceOperations = service.getInterfaceContract().getInterface().getOperations();
- }
-
- public Message invoke(Message msg) {
- return next.invoke(invokeRequest(msg));
- }
-
- public Message invokeRequest(Message msg) {
- // get the jms context
- JMSBindingContext context = msg.getBindingContext();
- javax.jms.Message jmsMsg = context.getJmsMsg();
-
- Operation operation = getTargetOperation(jmsMsg);
- msg.setOperation(operation);
-
- return msg;
- }
-
- protected Operation getTargetOperation(javax.jms.Message jmsMsg) {
- String operationName = null;
- String opSelectorPropertyName = operationSelector.getPropertyName();
-
- try {
- operationName = jmsMsg.getStringProperty(opSelectorPropertyName);
- } catch(JMSException e) {
- throw new JMSBindingException(e);
- }
-
- if (operationName == null){
- throw new JMSBindingException("Property " + opSelectorPropertyName + " not found in message header");
- }
-
- for (Operation op : serviceOperations) {
- if (op.getName().equals(operationName)) {
- return op;
- }
- }
-
- throw new JMSBindingException("Can't find operation " + operationName);
- }
-
-
- public Invoker getNext() {
- return next;
- }
-
- public void setNext(Invoker next) {
- this.next = next;
- }
-
-}
diff --git a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/operationselector/jmsuserprop/runtime/OperationSelectorJMSUserPropServiceProvider.java b/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/operationselector/jmsuserprop/runtime/OperationSelectorJMSUserPropServiceProvider.java
deleted file mode 100644
index ece54f5974..0000000000
--- a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/operationselector/jmsuserprop/runtime/OperationSelectorJMSUserPropServiceProvider.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.binding.jms.operationselector.jmsuserprop.runtime;
-
-import org.apache.tuscany.sca.assembly.Binding;
-import org.apache.tuscany.sca.binding.jms.impl.JMSBinding;
-import org.apache.tuscany.sca.invocation.Interceptor;
-import org.apache.tuscany.sca.invocation.Phase;
-import org.apache.tuscany.sca.provider.OperationSelectorProvider;
-import org.apache.tuscany.sca.runtime.RuntimeComponent;
-import org.apache.tuscany.sca.runtime.RuntimeComponentService;
-
-public class OperationSelectorJMSUserPropServiceProvider implements OperationSelectorProvider {
- private RuntimeComponent component;
- private RuntimeComponentService service;
- private Binding binding;
-
- public OperationSelectorJMSUserPropServiceProvider(RuntimeComponent component, RuntimeComponentService service, Binding binding) {
- super();
- this.component = component;
- this.service = service;
- this.binding = binding;
- }
-
- /**
- */
- public Interceptor createInterceptor() {
- return new OperationSelectorJMSUserPropServiceInterceptor((JMSBinding)binding, service.getRuntimeWire(binding));
- }
-
- /**
- */
- public String getPhase() {
- return Phase.SERVICE_BINDING_OPERATION_SELECTOR;
- }
-
-}
diff --git a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/provider/AbstractMessageProcessor.java b/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/provider/AbstractMessageProcessor.java
deleted file mode 100644
index e2fc49834e..0000000000
--- a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/provider/AbstractMessageProcessor.java
+++ /dev/null
@@ -1,136 +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.binding.jms.provider;
-
-import java.lang.reflect.InvocationTargetException;
-import java.util.logging.Logger;
-
-import javax.jms.JMSException;
-import javax.jms.Message;
-import javax.jms.ObjectMessage;
-import javax.jms.Session;
-
-import org.apache.tuscany.sca.binding.jms.impl.JMSBinding;
-import org.apache.tuscany.sca.binding.jms.impl.JMSBindingConstants;
-import org.apache.tuscany.sca.binding.jms.impl.JMSBindingException;
-import org.osoa.sca.ServiceRuntimeException;
-
-/**
- * Base MessageProcessor for the JMSBinding.
- *
- * @version $Rev$ $Date$
- */
-public abstract class AbstractMessageProcessor implements JMSMessageProcessor {
- private static final Logger logger = Logger.getLogger(AbstractMessageProcessor.class.getName());
-
- protected String operationPropertyName;
- protected boolean xmlFormat = true;
-
- public AbstractMessageProcessor(JMSBinding jmsBinding) {
- this.operationPropertyName = jmsBinding.getOperationSelectorPropertyName();
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.apache.tuscany.binding.jms.OperationAndDataBinding#getOperationName(javax.jms.Message)
- */
- public String getOperationName(Message message) {
- try {
-
- return message.getStringProperty(operationPropertyName);
-
- } catch (JMSException e) {
- throw new JMSBindingException("Exception retreiving operation name from message", e);
- }
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.apache.tuscany.binding.jms.OperationAndDataBinding#setOperationName(javax.jms.Message, java.lang.String)
- */
- public void setOperationName(String operationName, Message message) {
- try {
-
- message.setStringProperty(operationPropertyName, operationName);
-
- } catch (JMSException e) {
- throw new JMSBindingException("Exception setting the operation name on message", e);
- }
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.apache.tuscany.binding.jms.OperationAndDataBinding#extractPayload(javax.jms.Session, java.lang.Object)
- */
- public Message insertPayloadIntoJMSMessage(Session session, Object o) {
- return createJMSMessage(session, o);
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.apache.tuscany.binding.jms.OperationAndDataBinding#extractPayload(javax.jms.Message)
- */
- public Object extractPayloadFromJMSMessage(Message msg) {
- try {
- if (msg.getBooleanProperty(JMSBindingConstants.FAULT_PROPERTY)) {
- Object exc = ((ObjectMessage)msg).getObject();
- if (exc instanceof RuntimeException) {
- throw new ServiceRuntimeException("remote service exception, see nested exception", (Throwable)exc);
- } else {
- return new InvocationTargetException((Throwable) exc);
- }
- }
- } catch (JMSException e) {
- throw new JMSBindingException(e);
- }
- return extractPayload(msg);
- }
-
- public Message createFaultMessage(Session session, Throwable o) {
- if (session == null) {
- logger.fine("no response session to create fault message: " + String.valueOf(o));
- return null;
- }
- try {
-
- ObjectMessage message = session.createObjectMessage();
- String causeMsg;
- if (o instanceof RuntimeException) {
- message.setObject(new RuntimeException(o.getMessage()));
- } else {
- // for a checked exception return the checked exception
- message.setObject(o);
- }
- message.setBooleanProperty(JMSBindingConstants.FAULT_PROPERTY, true);
- return message;
-
- } catch (JMSException e) {
- throw new JMSBindingException(e);
- }
- }
-
- protected abstract Object extractPayload(Message msg);
-
- protected abstract Message createJMSMessage(Session session, Object o);
-
-}
diff --git a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/provider/BytesMessageProcessor.java b/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/provider/BytesMessageProcessor.java
deleted file mode 100644
index 5d1990eb90..0000000000
--- a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/provider/BytesMessageProcessor.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.binding.jms.provider;
-
-import java.lang.reflect.InvocationTargetException;
-import java.util.logging.Logger;
-
-import javax.jms.BytesMessage;
-import javax.jms.JMSException;
-import javax.jms.Message;
-import javax.jms.ObjectMessage;
-import javax.jms.Session;
-import javax.jms.TextMessage;
-
-import org.apache.tuscany.sca.binding.jms.impl.JMSBinding;
-import org.apache.tuscany.sca.binding.jms.impl.JMSBindingConstants;
-import org.apache.tuscany.sca.binding.jms.impl.JMSBindingException;
-import org.osoa.sca.ServiceRuntimeException;
-
-/**
- * MessageProcessor for sending/receiving javax.jms.BytesMessage with the JMSBinding.
- *
- * @version $Rev$ $Date$
- */
-public class BytesMessageProcessor extends AbstractMessageProcessor {
- private static final Logger logger = Logger.getLogger(AbstractMessageProcessor.class.getName());
-
- public BytesMessageProcessor(JMSBinding jmsBinding) {
- super(jmsBinding);
- }
-
-/* TUSCANY-2967 - disable this change while we decide what to do and
- * return faults as JMSObject messages to be consistent
- * again with other wire formats
- @Override
- public Object extractPayloadFromJMSMessage(Message msg) {
- byte [] bytes = (byte [])extractPayload(msg);
-
- try {
- if (msg.getBooleanProperty(JMSBindingConstants.FAULT_PROPERTY)) {
- return new InvocationTargetException(new ServiceRuntimeException(new String(bytes)));
- } else {
- return bytes;
- }
- } catch (JMSException e) {
- throw new JMSBindingException(e);
- }
- }
-*/
-
- @Override
- protected Object extractPayload(Message msg) {
- try {
-
- if (!(msg instanceof BytesMessage)) {
- throw new IllegalStateException("expecting JMS BytesMessage: " + msg);
- }
-
- long noOfBytes = ((BytesMessage)msg).getBodyLength();
- byte [] bytes = new byte[(int)noOfBytes];
- ((BytesMessage)msg).readBytes(bytes);
- ((BytesMessage)msg).reset();
- return bytes;
-
- } catch (JMSException e) {
- throw new JMSBindingException(e);
- }
- }
-
-/* TUSCANY-2967 - disable this change while we decide what to do and
- * return faults as JMSObject messages to be consistent
- * again with other wire formats
- @Override
- public Message createFaultMessage(Session session, Throwable o) {
- try {
- Message message = createJMSMessage(session, o.toString().getBytes());
- message.setBooleanProperty(JMSBindingConstants.FAULT_PROPERTY, true);
- return message;
- } catch (JMSException e) {
- throw new JMSBindingException(e);
- }
- }
-*/
-
- @Override
- protected Message createJMSMessage(Session session, Object o) {
- if (session == null) {
- logger.fine("no response session to create message: " + String.valueOf(o));
- return null;
- }
- try {
-
- // TODO - an experiment. How to enforce a single
- // byte array parameter
- BytesMessage message = session.createBytesMessage();
-
- if (o != null){
- message.writeBytes((byte[])o);
- }
-
- return message;
-
- } catch (JMSException e) {
- throw new JMSBindingException(e);
- }
- }
-
-}
diff --git a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/provider/DefaultJMSResourceFactoryExtensionPoint.java b/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/provider/DefaultJMSResourceFactoryExtensionPoint.java
deleted file mode 100644
index 1de85ea773..0000000000
--- a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/provider/DefaultJMSResourceFactoryExtensionPoint.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.binding.jms.provider;
-
-import org.apache.tuscany.sca.binding.jms.impl.JMSBinding;
-
-public class DefaultJMSResourceFactoryExtensionPoint implements JMSResourceFactoryExtensionPoint {
-
- public JMSResourceFactory createJMSResourceFactory(JMSBinding binding) {
- return new JMSResourceFactoryImpl(binding.getConnectionFactoryName(), binding.getResponseConnectionFactoryName(), binding.getInitialContextFactoryName(), binding.getJndiURL());
- }
-
-}
diff --git a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/provider/DefaultMessageProcessor.java b/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/provider/DefaultMessageProcessor.java
deleted file mode 100644
index 05f264db78..0000000000
--- a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/provider/DefaultMessageProcessor.java
+++ /dev/null
@@ -1,287 +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.binding.jms.provider;
-
-import java.io.ByteArrayInputStream;
-import java.io.StringReader;
-import java.util.logging.Logger;
-
-import javax.jms.BytesMessage;
-import javax.jms.JMSException;
-import javax.jms.Message;
-import javax.jms.Session;
-import javax.jms.TextMessage;
-import javax.xml.stream.XMLInputFactory;
-import javax.xml.stream.XMLStreamException;
-import javax.xml.stream.XMLStreamReader;
-
-import org.apache.axiom.om.OMElement;
-import org.apache.axiom.om.OMNode;
-import org.apache.axiom.om.impl.builder.StAXOMBuilder;
-import org.apache.tuscany.sca.binding.jms.impl.JMSBinding;
-import org.apache.tuscany.sca.binding.jms.impl.JMSBindingConstants;
-import org.apache.tuscany.sca.binding.jms.impl.JMSBindingException;
-import org.apache.tuscany.sca.interfacedef.util.FaultException;
-
-/**
- * MessageProcessor for sending/receiving XML over javax.jms.TextMessage or javax.jms.BytesMessage
- * with the JMSBinding.
- * This is very specific to the default wire format and is not tied into the usual hierarchy
- * of message processors
- *
- * @version $Rev$ $Date$
- */
-public class DefaultMessageProcessor extends AbstractMessageProcessor {
- private static final Logger logger = Logger.getLogger(DefaultMessageProcessor.class.getName());
-
- public DefaultMessageProcessor(JMSBinding jmsBinding) {
- super(jmsBinding);
- }
-
- // inherited methods that don't do anything useful
- @Override
- protected Message createJMSMessage(Session session, Object o) {
- // should not be used
- return null;
- }
-
- @Override
- protected Object extractPayload(Message msg) {
- // if it's not a text/bytes message or a fault then we don;t know what to do with it
- return null;
- }
-
- // TODO - This makes the assumption that whatever the text/bytes configuration of the
- // jms binding, unchecked faults will be sent as bytes.
- @Override
- public Message createFaultMessage(Session session, Throwable o) {
- return createFaultJMSBytesMessage(session, o);
- }
-
- // handle text messages
-
- public Object extractPayloadFromJMSTextMessage(Message msg, OMElement wrapper) {
- if (msg instanceof TextMessage) {
- try {
- String xml = ((TextMessage) msg).getText();
- Object os;
- if (xml != null) {
- XMLStreamReader reader = XMLInputFactory.newInstance().createXMLStreamReader(new StringReader(xml));
- StAXOMBuilder builder = new StAXOMBuilder(reader);
- os = builder.getDocumentElement();
- } else {
- os = null;
- }
-
- if (wrapper != null){
- //don't modify the original wrapper since it will be reused
- //clone the wrapper
- OMElement newWrapper = wrapper.cloneOMElement();
- if (os != null){
- newWrapper.addChild((OMNode)os);
- }
- return newWrapper;
- }
-
- return os;
-
- } catch (XMLStreamException e) {
- throw new JMSBindingException(e);
- } catch (JMSException e) {
- throw new JMSBindingException(e);
- }
- } else {
- // handle the non-text fault case
- return super.extractPayloadFromJMSMessage(msg);
- }
- }
-
- public Message insertPayloadIntoJMSTextMessage(Session session, Object o, boolean unwrap) {
-
- try {
-
- TextMessage message = session.createTextMessage();
-
- if (o instanceof OMElement) {
-
- if (unwrap){
- OMElement firstElement = ((OMElement)o).getFirstElement();
- if (firstElement == null ) {
- message.setText(null);
- } else {
- message.setText(firstElement.toString());
- }
- }else {
- message.setText(o.toString());
- }
- } else if ((o instanceof Object[]) && ((Object[]) o)[0] instanceof OMElement) {
- if (unwrap){
- OMElement firstElement = ((OMElement)((Object[]) o)[0]).getFirstElement();
- if (firstElement == null ) {
- message.setText(null);
- } else {
- message.setText(firstElement.toString());
- }
- }else {
- message.setText(((Object[]) o)[0].toString());
- }
- } else if (o != null) {
- throw new IllegalStateException("expecting OMElement payload: " + o);
- }
-
- return message;
-
- } catch (JMSException e) {
- throw new JMSBindingException(e);
- }
- }
-
- public Message createFaultJMSTextMessage(Session session, Throwable o) {
-
- if (session == null) {
- logger.fine("no response session to create fault message: " + String.valueOf(o));
- return null;
- }
- if (o instanceof FaultException) {
- try {
-
- TextMessage message = session.createTextMessage();
- message.setText(String.valueOf(((FaultException) o).getFaultInfo()));
- message.setBooleanProperty(JMSBindingConstants.FAULT_PROPERTY, true);
- return message;
-
- } catch (JMSException e) {
- throw new JMSBindingException(e);
- }
- } else {
- // handle the non XML fault case
- return super.createFaultMessage(session, o);
- }
- }
-
- // handle bytes messages
-
- public Object extractPayloadFromJMSBytesMessage(Message msg, OMElement wrapper) {
-
- if (msg instanceof BytesMessage) {
- try {
- Object os;
-
- long noOfBytes = ((BytesMessage) msg).getBodyLength();
- byte[] bytes = new byte[(int) noOfBytes];
- ((BytesMessage) msg).readBytes(bytes);
- ((BytesMessage)msg).reset();
-
- if ((bytes != null) && (bytes.length > 0)) {
- XMLStreamReader reader = XMLInputFactory.newInstance().createXMLStreamReader(new ByteArrayInputStream(bytes));
- StAXOMBuilder builder = new StAXOMBuilder(reader);
- os = builder.getDocumentElement();
- } else {
- os = null;
- }
-
- if (wrapper != null){
- //don't modify the original wrapper since it will be reused
- //clone the wrapper
- OMElement newWrapper = wrapper.cloneOMElement();
- if (os != null){
- newWrapper.addChild((OMNode)os);
- }
- return newWrapper;
- }
-
- return os;
-
- } catch (XMLStreamException e) {
- throw new JMSBindingException(e);
- } catch (JMSException e) {
- throw new JMSBindingException(e);
- }
- } else {
- // trap the non-bytes fault case
- return super.extractPayloadFromJMSMessage(msg);
- }
- }
-
- public Message insertPayloadIntoJMSBytesMessage(Session session, Object o, boolean unwrap) {
-
- try {
-
- BytesMessage message = session.createBytesMessage();
-
-
- if (o instanceof OMElement) {
- if (unwrap) {
- OMElement firstElement = ((OMElement)o).getFirstElement();
- if (firstElement == null ) {
- //do nothing, the message will just be set with a byte[0]
- } else {
- message.writeBytes(firstElement.toString().getBytes());
- }
-
- } else {
- message.writeBytes(o.toString().getBytes());
- }
-
- } else if ((o instanceof Object[]) && ((Object[]) o)[0] instanceof OMElement) {
- if (unwrap){
- OMElement firstElement = ((OMElement)((Object[]) o)[0]).getFirstElement();
- if (firstElement == null ) {
- //do nothing, the message will just be set with a byte[0]
- } else {
- message.writeBytes(firstElement.toString().getBytes());
- }
-
- }else {
- message.writeBytes(((Object[]) o)[0].toString().getBytes());
- }
- } else if (o != null) {
- throw new IllegalStateException("expecting OMElement payload: " + o);
- }
-
- return message;
-
- } catch (JMSException e) {
- throw new JMSBindingException(e);
- }
- }
-
- public Message createFaultJMSBytesMessage(Session session, Throwable o) {
-
- if (session == null) {
- logger.fine("no response session to create fault message: " + String.valueOf(o));
- return null;
- }
-
- if (o instanceof FaultException) {
- try {
-
- BytesMessage message = session.createBytesMessage();
- message.writeBytes(String.valueOf(((FaultException) o).getFaultInfo()).getBytes());
- message.setBooleanProperty(JMSBindingConstants.FAULT_PROPERTY, true);
- return message;
-
- } catch (JMSException e) {
- throw new JMSBindingException(e);
- }
- } else {
- return super.createFaultMessage(session, o);
- }
- }
-}
diff --git a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/provider/JMSBindingProviderFactory.java b/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/provider/JMSBindingProviderFactory.java
deleted file mode 100644
index c9a11dc41e..0000000000
--- a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/provider/JMSBindingProviderFactory.java
+++ /dev/null
@@ -1,70 +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.binding.jms.provider;
-
-import org.apache.tuscany.sca.binding.jms.impl.JMSBinding;
-import org.apache.tuscany.sca.core.ExtensionPointRegistry;
-import org.apache.tuscany.sca.host.jms.JMSHostExtensionPoint;
-import org.apache.tuscany.sca.host.jms.JMSServiceListenerFactory;
-import org.apache.tuscany.sca.provider.BindingProviderFactory;
-import org.apache.tuscany.sca.provider.ReferenceBindingProvider;
-import org.apache.tuscany.sca.provider.ServiceBindingProvider;
-import org.apache.tuscany.sca.runtime.RuntimeComponent;
-import org.apache.tuscany.sca.runtime.RuntimeComponentReference;
-import org.apache.tuscany.sca.runtime.RuntimeComponentService;
-
-/**
- * A factory from creating the JMS binding provider.
- *
- * @version $Rev$ $Date$
- */
-public class JMSBindingProviderFactory implements BindingProviderFactory<JMSBinding> {
-
- private ExtensionPointRegistry extensionPoints;
- private JMSResourceFactoryExtensionPoint jmsRFEP;
- private JMSServiceListenerFactory serviceListenerFactory;
-
- public JMSBindingProviderFactory(ExtensionPointRegistry extensionPoints) {
- this.extensionPoints = extensionPoints;
-
- jmsRFEP = (JMSResourceFactoryExtensionPoint)extensionPoints.getExtensionPoint(JMSResourceFactoryExtensionPoint.class);
- if (jmsRFEP == null) {
- jmsRFEP = new DefaultJMSResourceFactoryExtensionPoint();
- extensionPoints.addExtensionPoint(jmsRFEP);
- }
-
- JMSHostExtensionPoint jmsHostExtensionPoint = (JMSHostExtensionPoint)extensionPoints.getExtensionPoint(JMSHostExtensionPoint.class);
- serviceListenerFactory = jmsHostExtensionPoint.getJMSServiceListenerFactory();
- }
-
- public ReferenceBindingProvider createReferenceBindingProvider(RuntimeComponent component, RuntimeComponentReference reference, JMSBinding binding) {
- JMSResourceFactory jmsRF = jmsRFEP.createJMSResourceFactory(binding);
- return new JMSBindingReferenceBindingProvider(component, reference, binding, extensionPoints, jmsRF);
- }
-
- public ServiceBindingProvider createServiceBindingProvider(RuntimeComponent component, RuntimeComponentService service, JMSBinding binding) {
- JMSResourceFactory jmsRF = jmsRFEP.createJMSResourceFactory(binding);
- return new JMSBindingServiceBindingProvider(component, service, binding, binding, serviceListenerFactory, extensionPoints, jmsRF);
- }
-
- public Class<JMSBinding> getModelType() {
- return JMSBinding.class;
- }
-}
diff --git a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/provider/JMSBindingReferenceBindingProvider.java b/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/provider/JMSBindingReferenceBindingProvider.java
deleted file mode 100644
index 0e44b84ea0..0000000000
--- a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/provider/JMSBindingReferenceBindingProvider.java
+++ /dev/null
@@ -1,170 +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.binding.jms.provider;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import javax.jms.JMSException;
-
-import org.apache.tuscany.sca.binding.jms.headers.HeaderReferenceInterceptor;
-import org.apache.tuscany.sca.binding.jms.impl.JMSBinding;
-import org.apache.tuscany.sca.binding.jms.impl.JMSBindingConstants;
-import org.apache.tuscany.sca.binding.jms.impl.JMSBindingException;
-import org.apache.tuscany.sca.binding.jms.transport.TransportReferenceInterceptor;
-import org.apache.tuscany.sca.core.ExtensionPointRegistry;
-import org.apache.tuscany.sca.interfacedef.InterfaceContract;
-import org.apache.tuscany.sca.interfacedef.Operation;
-import org.apache.tuscany.sca.invocation.InvocationChain;
-import org.apache.tuscany.sca.invocation.Invoker;
-import org.apache.tuscany.sca.invocation.Phase;
-import org.apache.tuscany.sca.provider.ProviderFactoryExtensionPoint;
-import org.apache.tuscany.sca.provider.ReferenceBindingProviderRRB;
-import org.apache.tuscany.sca.provider.WireFormatProvider;
-import org.apache.tuscany.sca.provider.WireFormatProviderFactory;
-import org.apache.tuscany.sca.runtime.RuntimeComponent;
-import org.apache.tuscany.sca.runtime.RuntimeComponentReference;
-import org.apache.tuscany.sca.runtime.RuntimeWire;
-
-/**
- * Implementation of the JMS reference binding provider.
- *
- * @version $Rev$ $Date$
- */
-public class JMSBindingReferenceBindingProvider implements ReferenceBindingProviderRRB {
-
- private RuntimeComponentReference reference;
- private JMSBinding jmsBinding;
- private JMSResourceFactory jmsResourceFactory;
- private RuntimeComponent component;
- private InterfaceContract interfaceContract;
- private ExtensionPointRegistry extensions;
-
- private ProviderFactoryExtensionPoint providerFactories;
-
- private WireFormatProviderFactory requestWireFormatProviderFactory;
- private WireFormatProvider requestWireFormatProvider;
-
- private WireFormatProviderFactory responseWireFormatProviderFactory;
- private WireFormatProvider responseWireFormatProvider;
-
- public JMSBindingReferenceBindingProvider(RuntimeComponent component, RuntimeComponentReference reference, JMSBinding binding, ExtensionPointRegistry extensions, JMSResourceFactory jmsResourceFactory) {
- this.reference = reference;
- this.jmsBinding = binding;
- this.extensions = extensions;
- this.component = component;
- this.jmsResourceFactory = jmsResourceFactory;
-
- // Get the factories/providers for operation selection
- this.providerFactories = extensions.getExtensionPoint(ProviderFactoryExtensionPoint.class);
-
- // Get the factories/providers for wire format
- this.requestWireFormatProviderFactory =
- (WireFormatProviderFactory)providerFactories.getProviderFactory(jmsBinding.getRequestWireFormat().getClass());
- if (this.requestWireFormatProviderFactory != null){
- this.requestWireFormatProvider = requestWireFormatProviderFactory.createReferenceWireFormatProvider(component, reference, jmsBinding);
- }
-
- this.responseWireFormatProviderFactory =
- (WireFormatProviderFactory)providerFactories.getProviderFactory(jmsBinding.getResponseWireFormat().getClass());
- if (this.responseWireFormatProviderFactory != null){
- this.responseWireFormatProvider = responseWireFormatProviderFactory.createReferenceWireFormatProvider(component, reference, jmsBinding);
- }
-
- // create an interface contract that reflects both request and response
- // wire formats
- try {
- interfaceContract = (InterfaceContract)reference.getInterfaceContract().clone();
-
- requestWireFormatProvider.configureWireFormatInterfaceContract(interfaceContract);
- responseWireFormatProvider.configureWireFormatInterfaceContract(interfaceContract);
- } catch (CloneNotSupportedException ex){
- interfaceContract = reference.getInterfaceContract();
- }
- }
-
- public Invoker createInvoker(Operation operation) {
-
- if (jmsBinding.getDestinationName() == null) {
- if (!reference.isCallback()) {
- throw new JMSBindingException("No destination specified for reference " + reference.getName());
- }
- }
-
- Invoker invoker = null;
- invoker = new RRBJMSBindingInvoker(jmsBinding, operation, jmsResourceFactory, reference);
-
- return invoker;
- }
-
- public boolean supportsOneWayInvocation() {
- return true;
- }
-
- public InterfaceContract getBindingInterfaceContract() {
- return interfaceContract;
- }
-
- public void start() {
-
- }
-
- public void stop() {
- try {
- jmsResourceFactory.closeConnection();
- jmsResourceFactory.closeResponseConnection();
- } catch (JMSException e) {
- throw new JMSBindingException(e);
- }
- }
-
- /*
- * set up the reference binding wire with the right set of jms reference
- * interceptors
- */
- public void configureBindingChain(RuntimeWire runtimeWire) {
-
- InvocationChain bindingChain = runtimeWire.getBindingInvocationChain();
-
- // add transport interceptor
- bindingChain.addInterceptor(Phase.REFERENCE_BINDING_TRANSPORT,
- new TransportReferenceInterceptor(jmsBinding,
- jmsResourceFactory,
- runtimeWire) );
-
- // add request wire format
- bindingChain.addInterceptor(requestWireFormatProvider.getPhase(),
- requestWireFormatProvider.createInterceptor());
-
- // add response wire format, but only add it if it's different from the request
- if (!jmsBinding.getRequestWireFormat().equals(jmsBinding.getResponseWireFormat())){
- bindingChain.addInterceptor(responseWireFormatProvider.getPhase(),
- responseWireFormatProvider.createInterceptor());
- }
-
- // add the header processor that comes after the wire formatter but before the
- // policy interceptors
- bindingChain.addInterceptor(Phase.REFERENCE_BINDING_WIREFORMAT,
- new HeaderReferenceInterceptor(jmsBinding,
- jmsResourceFactory,
- runtimeWire) );
- }
-
-}
diff --git a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/provider/JMSBindingServiceBindingProvider.java b/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/provider/JMSBindingServiceBindingProvider.java
deleted file mode 100644
index de16edb044..0000000000
--- a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/provider/JMSBindingServiceBindingProvider.java
+++ /dev/null
@@ -1,228 +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.binding.jms.provider;
-
-import java.util.logging.Logger;
-
-import org.apache.tuscany.sca.assembly.Binding;
-import org.apache.tuscany.sca.binding.jms.impl.JMSBinding;
-import org.apache.tuscany.sca.binding.jms.impl.JMSBindingException;
-import org.apache.tuscany.sca.binding.jms.transport.TransportServiceInterceptor;
-import org.apache.tuscany.sca.binding.jms.wire.CallbackDestinationInterceptor;
-import org.apache.tuscany.sca.binding.jms.wire.OperationPropertiesInterceptor;
-import org.apache.tuscany.sca.contribution.ModelFactoryExtensionPoint;
-import org.apache.tuscany.sca.core.ExtensionPointRegistry;
-import org.apache.tuscany.sca.host.jms.JMSServiceListener;
-import org.apache.tuscany.sca.host.jms.JMSServiceListenerDetails;
-import org.apache.tuscany.sca.host.jms.JMSServiceListenerFactory;
-import org.apache.tuscany.sca.interfacedef.InterfaceContract;
-import org.apache.tuscany.sca.invocation.InvocationChain;
-import org.apache.tuscany.sca.invocation.MessageFactory;
-import org.apache.tuscany.sca.invocation.Phase;
-import org.apache.tuscany.sca.provider.OperationSelectorProvider;
-import org.apache.tuscany.sca.provider.OperationSelectorProviderFactory;
-import org.apache.tuscany.sca.provider.ProviderFactoryExtensionPoint;
-import org.apache.tuscany.sca.provider.ServiceBindingProviderRRB;
-import org.apache.tuscany.sca.provider.WireFormatProvider;
-import org.apache.tuscany.sca.provider.WireFormatProviderFactory;
-import org.apache.tuscany.sca.runtime.RuntimeComponent;
-import org.apache.tuscany.sca.runtime.RuntimeComponentService;
-import org.apache.tuscany.sca.runtime.RuntimeWire;
-
-/**
- * Implementation of the JMS service binding provider.
- *
- * @version $Rev$ $Date$
- */
-public class JMSBindingServiceBindingProvider implements ServiceBindingProviderRRB, JMSServiceListenerDetails {
- private static final Logger logger = Logger.getLogger(JMSBindingServiceBindingProvider.class.getName());
-
- private RuntimeComponentService service;
- private Binding targetBinding;
- private JMSBinding jmsBinding;
- private JMSResourceFactory jmsResourceFactory;
- private JMSServiceListenerFactory serviceListenerFactory;
- private JMSServiceListener serviceListener;
-
- private RuntimeComponent component;
- private InterfaceContract interfaceContract;
-
- private ProviderFactoryExtensionPoint providerFactories;
- private ModelFactoryExtensionPoint modelFactories;
-
- private MessageFactory messageFactory;
-
- private OperationSelectorProviderFactory operationSelectorProviderFactory;
- private OperationSelectorProvider operationSelectorProvider;
-
- private WireFormatProviderFactory requestWireFormatProviderFactory;
- private WireFormatProvider requestWireFormatProvider;
-
- private WireFormatProviderFactory responseWireFormatProviderFactory;
- private WireFormatProvider responseWireFormatProvider;
-
- public JMSBindingServiceBindingProvider(RuntimeComponent component, RuntimeComponentService service, Binding targetBinding, JMSBinding binding, JMSServiceListenerFactory serviceListenerFactory, ExtensionPointRegistry extensionPoints, JMSResourceFactory jmsResourceFactory) {
- this.component = component;
- this.service = service;
- this.jmsBinding = binding;
- this.serviceListenerFactory = serviceListenerFactory;
- this.targetBinding = targetBinding;
- this.jmsResourceFactory = jmsResourceFactory;
-
- // Set the default destination when using a connection factory.
- // If an activation spec is being used, do not set the destination
- // because the activation spec provides the destination.
- if (jmsBinding.getDestinationName() == null &&
- (jmsBinding.getActivationSpecName() == null || jmsBinding.getActivationSpecName().equals(""))) {
- if (!service.isCallback()) {
- // use the SCA service name as the default destination name
- jmsBinding.setDestinationName(service.getName());
- }
- }
-
- // Get Message factory
- modelFactories = extensionPoints.getExtensionPoint(ModelFactoryExtensionPoint.class);
- messageFactory = modelFactories.getFactory(MessageFactory.class);
-
- // Get the factories/providers for operation selection
- this.providerFactories = extensionPoints.getExtensionPoint(ProviderFactoryExtensionPoint.class);
- this.operationSelectorProviderFactory =
- (OperationSelectorProviderFactory)providerFactories.getProviderFactory(jmsBinding.getOperationSelector().getClass());
- if (this.operationSelectorProviderFactory != null){
- this.operationSelectorProvider = operationSelectorProviderFactory.createServiceOperationSelectorProvider(component, service, jmsBinding);
- }
-
- // Get the factories/providers for wire format
- this.requestWireFormatProviderFactory =
- (WireFormatProviderFactory)providerFactories.getProviderFactory(jmsBinding.getRequestWireFormat().getClass());
- if (this.requestWireFormatProviderFactory != null){
- this.requestWireFormatProvider = requestWireFormatProviderFactory.createServiceWireFormatProvider(component, service, jmsBinding);
- }
-
- this.responseWireFormatProviderFactory =
- (WireFormatProviderFactory)providerFactories.getProviderFactory(jmsBinding.getResponseWireFormat().getClass());
- if (this.responseWireFormatProviderFactory != null){
- this.responseWireFormatProvider = responseWireFormatProviderFactory.createServiceWireFormatProvider(component, service, jmsBinding);
- }
-
- // create an interface contract that reflects both request and response
- // wire formats
- try {
- interfaceContract = (InterfaceContract)service.getInterfaceContract().clone();
-
- requestWireFormatProvider.configureWireFormatInterfaceContract(interfaceContract);
- responseWireFormatProvider.configureWireFormatInterfaceContract(interfaceContract);
- } catch (CloneNotSupportedException ex){
- interfaceContract = service.getInterfaceContract();
- }
- }
-
- public InterfaceContract getBindingInterfaceContract() {
- return interfaceContract;
- }
-
- public boolean supportsOneWayInvocation() {
- return true;
- }
-
- public void start() {
- try {
-
- this.serviceListener = serviceListenerFactory.createJMSServiceListener(this);
- serviceListener.start();
-
- } catch (Exception e) {
- throw new JMSBindingException("Error starting JMSServiceBinding", e);
- }
- }
-
- public void stop() {
- try {
- serviceListener.stop();
- } catch (Exception e) {
- throw new JMSBindingException("Error stopping JMSServiceBinding", e);
- }
- }
-
- public String getDestinationName() {
- return serviceListener.getDestinationName();
- }
-
- /*
- * Adds JMS specific interceptors to the binding chain
- */
- public void configureBindingChain(RuntimeWire runtimeWire) {
-
- InvocationChain bindingChain = runtimeWire.getBindingInvocationChain();
-
- // add transport interceptor
- bindingChain.addInterceptor(Phase.SERVICE_BINDING_TRANSPORT,
- new TransportServiceInterceptor(jmsBinding,
- jmsResourceFactory,
- runtimeWire) );
-
- // add operation selector interceptor
- bindingChain.addInterceptor(operationSelectorProvider.getPhase(),
- operationSelectorProvider.createInterceptor());
-
- // add operationProperties interceptor after operation selector
- bindingChain.addInterceptor(Phase.SERVICE_BINDING_OPERATION_SELECTOR,
- new OperationPropertiesInterceptor(jmsBinding, runtimeWire));
-
- // add callback destination interceptor after operation selector
- bindingChain.addInterceptor(Phase.SERVICE_BINDING_WIREFORMAT,
- new CallbackDestinationInterceptor(runtimeWire));
-
- // add request wire format
- bindingChain.addInterceptor(requestWireFormatProvider.getPhase(),
- requestWireFormatProvider.createInterceptor());
-
- // add response wire format, but only add it if it's different from the request
- if (!jmsBinding.getRequestWireFormat().equals(jmsBinding.getResponseWireFormat())){
- bindingChain.addInterceptor(responseWireFormatProvider.getPhase(),
- responseWireFormatProvider.createInterceptor());
- }
- }
-
- public RuntimeComponent getComponent() {
- return component;
- }
-
- public RuntimeComponentService getService() {
- return service;
- }
-
- public Binding getTargetBinding() {
- return targetBinding;
- }
-
- public JMSBinding getJmsBinding() {
- return jmsBinding;
- }
-
- public MessageFactory getMessageFactory() {
- return messageFactory;
- }
-
- public JMSResourceFactory getResourceFactory() {
- return jmsResourceFactory;
- }
-
-}
diff --git a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/provider/JMSMessageProcessor.java b/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/provider/JMSMessageProcessor.java
deleted file mode 100644
index 821b9d7873..0000000000
--- a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/provider/JMSMessageProcessor.java
+++ /dev/null
@@ -1,55 +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.binding.jms.provider;
-
-import javax.jms.Message;
-import javax.jms.Session;
-
-/**
- * Interface for a component that does operation selection and message payload processing
- *
- * @version $Rev$ $Date$
- */
-public interface JMSMessageProcessor {
-
- /**
- * Get the operation name from a JMS Message
- */
- String getOperationName(Message message);
-
- /**
- * Set the operation name on a JMS Message
- */
- void setOperationName(String operationName, Message message);
-
- /**
- * Extracts the payload from a JMS Message
- */
- Object extractPayloadFromJMSMessage(Message msg);
-
- /**
- * Create a JMS Message containing the payload
- */
- Message insertPayloadIntoJMSMessage(Session session, Object payload);
-
- /**
- * Create a JMS Message for reporting an exception
- */
- Message createFaultMessage(Session session, Throwable responsePayload);
-}
diff --git a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/provider/JMSMessageProcessorUtil.java b/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/provider/JMSMessageProcessorUtil.java
deleted file mode 100644
index 699b1cb176..0000000000
--- a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/provider/JMSMessageProcessorUtil.java
+++ /dev/null
@@ -1,75 +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.binding.jms.provider;
-
-import java.lang.reflect.Constructor;
-
-import org.apache.tuscany.sca.binding.jms.impl.JMSBinding;
-import org.apache.tuscany.sca.binding.jms.impl.JMSBindingException;
-
-/**
- * Utility methods to load JMS message processors.
- *
- * @version $Rev: $ $Date: $
- */
-public class JMSMessageProcessorUtil {
-
- /**
- * Used to create instances of the JMSResourceFactory and RequestMessageProcessor and ResponseMessageProcessor from
- * string based class name provided in the configuration
- *
- * @param cl ClassLoader
- * @param className the string based class name to load and instantiate
- * @return the new object
- */
- private static Object instantiate(ClassLoader cl, String className, JMSBinding binding) {
- Object instance;
- if (cl == null) {
- cl = binding.getClass().getClassLoader();
- }
-
- try {
- Class<?> clazz;
-
- try {
- clazz = cl.loadClass(className);
- } catch (ClassNotFoundException e) {
- clazz = binding.getClass().getClassLoader().loadClass(className);
- }
-
- Constructor<?> constructor = clazz.getDeclaredConstructor(new Class[] {JMSBinding.class});
- instance = constructor.newInstance(binding);
-
- } catch (Throwable e) {
- throw new JMSBindingException("Exception instantiating OperationAndDataBinding class", e);
- }
-
- return instance;
- }
-
- public static JMSMessageProcessor getRequestMessageProcessor(JMSBinding binding) {
- return (JMSMessageProcessor)instantiate(null, binding.getRequestMessageProcessorName(), binding);
- }
-
- public static JMSMessageProcessor getResponseMessageProcessor(JMSBinding binding) {
- return (JMSMessageProcessor)instantiate(null, binding.getResponseMessageProcessorName(), binding);
- }
-
-}
diff --git a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/provider/JMSResourceFactory.java b/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/provider/JMSResourceFactory.java
deleted file mode 100644
index 348764fe43..0000000000
--- a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/provider/JMSResourceFactory.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.binding.jms.provider;
-
-import javax.jms.Connection;
-import javax.jms.Destination;
-import javax.jms.JMSException;
-import javax.jms.Session;
-import javax.naming.NamingException;
-
-public interface JMSResourceFactory {
-
- /*
- * This is a simple implementation where a connection is created per binding Ideally the resource factory should be
- * able to leverage the host environment to provide connection pooling if it can. E.g. if Tuscany is running inside
- * an AppServer Then we could leverage the JMS resources it provides
- *
- * @see org.apache.tuscany.binding.jms.JMSResourceFactory#getConnection()
- */
- public abstract Connection getConnection() throws NamingException, JMSException;
-
- /*
- * (non-Javadoc)
- *
- * @see org.apache.tuscany.binding.jms.JMSResourceFactory#createSession()
- */
- public abstract Session createSession() throws JMSException, NamingException;
-
- public abstract void closeSession(Session session) throws JMSException;
-
- /*
- * (non-Javadoc)
- *
- * @see org.apache.tuscany.binding.jms.JMSResourceFactory#startConnection()
- */
- public abstract void startConnection() throws JMSException, NamingException;
-
- /*
- * (non-Javadoc)
- *
- * @see org.apache.tuscany.binding.jms.JMSResourceFactory#closeConnection()
- */
- public abstract void closeConnection() throws JMSException;
-
- public abstract Destination lookupDestination(String destName) throws NamingException;
-
- /**
- * You can create a destination in ActiveMQ (and have it appear in JNDI) by putting "dynamicQueues/" in front of the queue name being looked up
- */
- public abstract Destination createDestination(String jndiName) throws NamingException;
-
- /*
- * This is a simple implementation where a connection is created per binding Ideally the resource factory should be
- * able to leverage the host environment to provide connection pooling if it can. E.g. if Tuscany is running inside
- * an AppServer Then we could leverage the JMS resources it provides
- *
- * @see org.apache.tuscany.binding.jms.JMSResourceFactory#getConnection()
- */
- public abstract Connection getResponseConnection() throws NamingException, JMSException;
-
- /*
- * (non-Javadoc)
- *
- * @see org.apache.tuscany.binding.jms.JMSResourceFactory#createSession()
- */
- public abstract Session createResponseSession() throws JMSException, NamingException;
-
- public abstract void closeResponseSession(Session session) throws JMSException;
-
- public abstract void closeResponseConnection() throws JMSException;
-
- /*
- * Indicates whether connections obtained using getConnection() or getResponseConnection()
- * must be closed after each use. This is necessary in environments where connections are
- * shared with other users, or where connections cannot be held across transaction boundaries.
- */
- public abstract boolean isConnectionClosedAfterUse();
-}
diff --git a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/provider/JMSResourceFactoryExtensionPoint.java b/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/provider/JMSResourceFactoryExtensionPoint.java
deleted file mode 100644
index 57fbfb3215..0000000000
--- a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/provider/JMSResourceFactoryExtensionPoint.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.binding.jms.provider;
-
-import org.apache.tuscany.sca.binding.jms.impl.JMSBinding;
-
-public interface JMSResourceFactoryExtensionPoint {
-
- JMSResourceFactory createJMSResourceFactory(JMSBinding binding);
-
-}
diff --git a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/provider/JMSResourceFactoryImpl.java b/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/provider/JMSResourceFactoryImpl.java
deleted file mode 100644
index 1debc61dff..0000000000
--- a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/provider/JMSResourceFactoryImpl.java
+++ /dev/null
@@ -1,282 +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.binding.jms.provider;
-
-import java.util.Properties;
-
-import javax.jms.Connection;
-import javax.jms.ConnectionFactory;
-import javax.jms.Destination;
-import javax.jms.JMSException;
-import javax.jms.Session;
-import javax.naming.Context;
-import javax.naming.InitialContext;
-import javax.naming.NamingException;
-
-import org.apache.tuscany.sca.binding.jms.impl.JMSBindingException;
-
-/**
- * Abstracts away any JMS provide specific feature from the JMS binding
- *
- * @version $Rev$ $Date$
- */
-public class JMSResourceFactoryImpl implements JMSResourceFactory {
-
- protected String initialContextFactoryName;
- protected String connectionFactoryName = "ConnectionFactory";
- protected String jndiURL;
-
- protected Connection connection;
- protected Context context;
- protected boolean isConnectionStarted;
- private Connection responseConnection;
- private String responseConnectionFactoryName;
-
- public JMSResourceFactoryImpl(String connectionFactoryName, String responseConnectionFactoryName, String initialContextFactoryName, String jndiURL) {
- if (connectionFactoryName != null && connectionFactoryName.trim().length() > 0) {
- this.connectionFactoryName = connectionFactoryName.trim();
- }
- if (responseConnectionFactoryName != null && responseConnectionFactoryName.trim().length() > 0) {
- this.responseConnectionFactoryName = responseConnectionFactoryName.trim();
- }
- if (initialContextFactoryName != null && initialContextFactoryName.trim().length() > 0) {
- this.initialContextFactoryName = initialContextFactoryName.trim();
- }
- if (jndiURL != null) {
- this.jndiURL = jndiURL.trim();
- }
- }
-
- /*
- * This is a simple implementation where a connection is created per binding Ideally the resource factory should be
- * able to leverage the host environment to provide connection pooling if it can. E.g. if Tuscany is running inside
- * an AppServer Then we could leverage the JMS resources it provides
- *
- * @see org.apache.tuscany.sca.binding.jms.provider.JMSResourceFactory#getConnection()
- */
- public Connection getConnection() throws NamingException, JMSException {
- if (connection == null) {
- createConnection();
- }
- return connection;
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.apache.tuscany.sca.binding.jms.provider.JMSResourceFactory#createSession()
- */
- public Session createSession() throws JMSException, NamingException {
- return getConnection().createSession(false, Session.AUTO_ACKNOWLEDGE);
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.apache.tuscany.sca.binding.jms.provider.JMSResourceFactory#closeSession(javax.jms.Session)
- */
- public void closeSession(Session session) throws JMSException {
- session.close();
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.apache.tuscany.sca.binding.jms.provider.JMSResourceFactory#startConnection()
- */
- public void startConnection() throws JMSException, NamingException {
- if (!isConnectionStarted) {
- getConnection().start();
- isConnectionStarted = true;
- }
- }
-
- /*
- * (non-Javadoc)
- *
- * @see org.apache.tuscany.sca.binding.jms.provider.JMSResourceFactory#closeConnection()
- */
- public void closeConnection() throws JMSException {
- if (connection != null) {
- try {
- connection.close();
- } catch (JMSException e) {
- // if using an embedded broker then when shutting down Tuscany the broker may get closed
- // before this stop method is called. I can't see how to detect that so for now just
- // ignore the exception if the message is that the transport is already disposed
- if (!e.getMessage().contains("disposed")) {
- throw e;
- }
- }
- }
- }
-
- protected void createConnection() throws NamingException, JMSException {
- ConnectionFactory connectionFactory = (ConnectionFactory)jndiLookUp(connectionFactoryName);
- if (connectionFactory == null) {
- throw new JMSBindingException("connection factory not found: " + connectionFactoryName);
- }
- connection = connectionFactory.createConnection();
- }
-
- protected synchronized Context getInitialContext() throws NamingException {
- if (context == null) {
- Properties props = new Properties();
-
- if (initialContextFactoryName != null) {
- props.setProperty(Context.INITIAL_CONTEXT_FACTORY, initialContextFactoryName);
- }
- if (jndiURL != null) {
- props.setProperty(Context.PROVIDER_URL, jndiURL);
- }
-
- initJREEnvironment(props);
-
- context = new InitialContext(props);
- }
- return context;
- }
-
- /**
- * If using the WAS JMS Client with a non-IBM JRE then an additional
- * environment property needs to be set to initialize the ORB correctly.
- * See: http://www-1.ibm.com/support/docview.wss?uid=swg24012804
- */
- protected void initJREEnvironment(Properties props) {
- if ("com.ibm.websphere.naming.WsnInitialContextFactory".equals(props.get(Context.INITIAL_CONTEXT_FACTORY))) {
- String vendor = System.getProperty("java.vendor");
- if (vendor == null || !vendor.contains("IBM")) {
- props.setProperty("com.ibm.CORBA.ORBInit", "com.ibm.ws.sib.client.ORB");
- }
- }
- }
-
- /* (non-Javadoc)
- * @see org.apache.tuscany.sca.binding.jms.provider.JMSResourceFactory#lookupDestination(java.lang.String)
- */
- public Destination lookupDestination(String destName) throws NamingException {
- if (destName == null) {
- return null;
- }
-
- Destination dest = (Destination)jndiLookUp(destName);
- if (dest == null) {
- dest = lookupPhysical(destName);
- }
- return dest;
- }
-
- protected Destination lookupPhysical(String jndiName) {
-
- // TODO: the SCA JMS spec says a destination name may be a non-jndi plain destination name
-
-// Session session = null;
-// try {
-//
-// Destination dest;
-// session = createSession();
-// dest = session.createQueue(jndiName);
-// return dest;
-//
-// } catch (JMSException e) {
-// throw new JMSBindingException(e);
-// } catch (NamingException e) {
-// throw new JMSBindingException(e);
-// } finally {
-// if (session != null) {
-// try {
-// session.close();
-// } catch (JMSException e) {
-// throw new JMSBindingException(e);
-// }
-// }
-// }
- return null;
- }
-
- /* (non-Javadoc)
- * @see org.apache.tuscany.sca.binding.jms.provider.JMSResourceFactory#createDestination(java.lang.String)
- */
- public Destination createDestination(String jndiName) throws NamingException {
- return lookupDestination("dynamicQueues/" + jndiName);
- }
-
- protected Object jndiLookUp(String name) {
- Object o = null;
- try {
- o = getInitialContext().lookup("java:comp/env/" + name);
- } catch (Exception ex) {
- // ignore
- }
- if (o == null) {
- try {
- o = getInitialContext().lookup(name);
- } catch (NamingException ex) {
- // ignore
- }
- }
- return o;
- }
-
- public Session createResponseSession() throws JMSException, NamingException {
- return getResponseConnection().createSession(false, Session.AUTO_ACKNOWLEDGE);
- }
-
- public void closeResponseSession(Session session) throws JMSException {
- session.close();
- }
-
- public Connection getResponseConnection() throws NamingException, JMSException {
- if (responseConnection == null) {
- if (responseConnectionFactoryName != null) {
- ConnectionFactory connectionFactory = (ConnectionFactory)jndiLookUp(responseConnectionFactoryName);
- if (connectionFactory == null) {
- throw new JMSBindingException("connection factory not found: " + responseConnectionFactoryName);
- }
- responseConnection = connectionFactory.createConnection();
- } else {
- // if no response connection is defined in the SCDL use the request connection
- responseConnection = getConnection();
- }
- }
- return responseConnection;
- }
-
- public void closeResponseConnection() throws JMSException {
- if (responseConnection != null && !responseConnection.equals(connection)) {
- try {
- responseConnection.close();
- } catch (JMSException e) {
- // if using an embedded broker then when shutting down Tuscany the broker may get closed
- // before this stop method is called. I can't see how to detect that so for now just
- // ignore the exception if the message is that the transport is already disposed
- if (!e.getMessage().contains("disposed")) {
- throw e;
- }
- }
- }
- }
-
- public boolean isConnectionClosedAfterUse() {
- // It is assumed this resource factory is used in an environment
- // where the connection can be held for the life of the binding.
- return false;
- }
-
-}
diff --git a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/provider/ObjectMessageProcessor.java b/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/provider/ObjectMessageProcessor.java
deleted file mode 100644
index 331c63f20f..0000000000
--- a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/provider/ObjectMessageProcessor.java
+++ /dev/null
@@ -1,230 +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.binding.jms.provider;
-
-import java.io.Serializable;
-import java.lang.reflect.InvocationTargetException;
-import java.util.logging.Logger;
-
-import javax.jms.JMSException;
-import javax.jms.Message;
-import javax.jms.ObjectMessage;
-import javax.jms.Session;
-
-import org.apache.tuscany.sca.binding.jms.impl.JMSBinding;
-import org.apache.tuscany.sca.binding.jms.impl.JMSBindingException;
-import org.osoa.sca.ServiceRuntimeException;
-
-/**
- * MessageProcessor for sending/receiving Serializable objects with the JMSBinding.
- *
- */
-public class ObjectMessageProcessor extends AbstractMessageProcessor {
- private static final Logger logger = Logger.getLogger(ObjectMessageProcessor.class.getName());
-
- public ObjectMessageProcessor(JMSBinding jmsBinding) {
- super(jmsBinding);
- }
-
- @Override
- protected Message createJMSMessage(Session session, Object o) {
- if (session == null) {
- logger.fine("no response session to create message: " + String.valueOf(o));
- return null;
- }
- try {
-
- ObjectMessage message = session.createObjectMessage();
-
- if (o != null){
- if (!(o instanceof Serializable)) {
- throw new IllegalStateException("JMS ObjectMessage payload not Serializable: " + o);
- }
-
- message.setObject((Serializable)o);
- }
-
- return message;
-
- } catch (JMSException e) {
- throw new JMSBindingException(e);
- }
- }
-
- @Override
- public Object extractPayloadFromJMSMessage(Message msg) {
- try {
- Object o = ((ObjectMessage)msg).getObject();
- if (o instanceof Throwable ) {
- if (o instanceof RuntimeException) {
- throw new ServiceRuntimeException("remote service exception, see nested exception", (RuntimeException)o);
- } else {
- return new InvocationTargetException((Throwable) o);
- }
- }
- } catch (JMSException e) {
- throw new JMSBindingException(e);
- }
- return extractPayload(msg);
- }
-
- @Override
- protected Object extractPayload(Message msg) {
- try {
-
- return ((ObjectMessage)msg).getObject();
-
- } catch (JMSException e) {
- throw new JMSBindingException(e);
- }
- }
-
- // special methods for handling operations with single parameters
-
- public Message createJMSMessageForSingleParamOperation(Session session, Object o, boolean wrapSingleInput) {
- if (session == null) {
- logger.fine("no response session to create message: " + String.valueOf(o));
- return null;
- }
- try {
-
- ObjectMessage message = session.createObjectMessage();
-
- if (o != null) {
- if (!(o instanceof Serializable)) {
- throw new IllegalStateException("JMS ObjectMessage payload not Serializable: " + o);
- }
-
- // If the user has specifically requests that single parameters
- // be wrapped then leave is as is as it will have already been
- // wrapped by Tuscany. Otherwise unwrap it.
- if (wrapSingleInput) {
- message.setObject((Serializable) o);
- } else { // unwrap from array
- message.setObject((Serializable) ((Object[]) o)[0]);
- }
-
- }
-
- return message;
-
- } catch (JMSException e) {
- throw new JMSBindingException(e);
- }
- }
-
- public Object extractPayloadFromJMSMessageForSingleParamOperation(Message msg, Class<?> argType, boolean wrapSingle) {
- // We always have a one arg operation if this method is called so we need to
- // decide if the data on the wire is wrapped or not. This is the algorithm.
- //
- // If the payload is null then create an empty array and pass it on
- // If the payload is not an array then it must represent an unwrapped
- // single arg. Wrap it up and pass it on
- // If the payload is an array then determine if it's a wrapped single arg or not
- // If the service interface arg type matches the type of the array and not it's contents
- // then it's an unwrapped argument so wrap it and pass it on
- // If the service interface arg type matches the type of the contents and not the type
- // of the array then the parameter is already wrapped so pass it on as is
- // If the service interface arg type matches both the type of the
- // array and the type of its contents then assume that the whole array is the
- // parameter and decide whether to unwrap it or pass it on as is based on the
- // setting of the wrapSingle attribute
- //
-
- try {
- Object payload = ((ObjectMessage) msg).getObject();
-
- if (payload instanceof Throwable) {
- if (payload instanceof RuntimeException) {
- throw new ServiceRuntimeException("remote service exception, see nested exception", (RuntimeException) payload);
- } else {
- return new InvocationTargetException((Throwable) payload);
- }
- }
-
- if (payload == null) {
- // methodA(null) was not wrapped on wire so wrap it here in order
- // that it passes through the rest of the Tuscany wire successfully
- return new Object[] { payload };
- }
-
- boolean payloadIsArray = payload.getClass().isArray();
-
- // Non-array payload is single arg
- if (!payloadIsArray) {
- // methodB(arg) wasn't wrapped on wire so wrap it here in order
- // that it passes through the rest of the Tuscany wire successfully
- return new Object[] { payload };
- } else {
- int size = ((Object[]) payload).length;
-
- // An initial quick check to determine whether the payload is not
- // wrapped. If the array has anything other than a single entry
- // then it's not the result of reference side wrapping so wrap it
- // here and pass it on
- if (size != 1) {
- return new Object[] { payload };
- }
-
- // we know the array has only one entry now so get it
- Object arrayContents = ((Object[]) payload)[0];
-
- // Is the operation argument the same type as the array itself?
- if (argType.isAssignableFrom(payload.getClass())) {
-
- // So we believe that the whole array is the argument but need
- // to check what is in the array to be sure
- if (arrayContents == null) {
- // There is nothing in the array so it could be an accident that
- // the array type matches the argument type, e.g. op(Object)
- // so rely on the wrapSingle setting to choose
- if (wrapSingle) {
- return payload;
- } else {
- return new Object[] { payload };
- }
- } else if (argType.isAssignableFrom(arrayContents.getClass())) {
- // We can't tell as the argument type matches both the array type and
- // the array contents type so use the wrapSingle setting to choose
- if (wrapSingle) {
- return payload;
- } else {
- return new Object[] { payload };
- }
- } else {
- // So by now we know the whole array is intended to be the
- // parameter to wrap it and send it on
- return new Object[] { payload };
- }
-
- } else {
- // The array type doesn't match the argument type so assume that the
- // array contents will match the argument type and that hence the
- // parameter is already wrapped so just send it as is. If the contents
- // type doesn't match the argument type a exception will be thrown further
- // along the wire
- return payload;
- }
- }
- } catch (JMSException e) {
- throw new JMSBindingException(e);
- }
- }
-
-}
diff --git a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/provider/RRBJMSBindingInvoker.java b/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/provider/RRBJMSBindingInvoker.java
deleted file mode 100644
index ee9501bf89..0000000000
--- a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/provider/RRBJMSBindingInvoker.java
+++ /dev/null
@@ -1,270 +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.binding.jms.provider;
-
-import java.lang.reflect.InvocationTargetException;
-
-import javax.jms.Destination;
-import javax.jms.JMSException;
-import javax.jms.Session;
-import javax.naming.NamingException;
-
-import org.apache.tuscany.sca.binding.jms.context.JMSBindingContext;
-import org.apache.tuscany.sca.binding.jms.impl.JMSBinding;
-import org.apache.tuscany.sca.binding.jms.impl.JMSBindingConstants;
-import org.apache.tuscany.sca.binding.jms.impl.JMSBindingException;
-import org.apache.tuscany.sca.interfacedef.Operation;
-import org.apache.tuscany.sca.interfacedef.util.FaultException;
-import org.apache.tuscany.sca.invocation.DataExchangeSemantics;
-import org.apache.tuscany.sca.invocation.Invoker;
-import org.apache.tuscany.sca.runtime.RuntimeComponentReference;
-import org.apache.tuscany.sca.runtime.RuntimeWire;
-import org.osoa.sca.ServiceRuntimeException;
-
-/**
- * Invoker for the JMS binding.
- *
- * @version $Rev$ $Date$
- */
-public class RRBJMSBindingInvoker implements Invoker, DataExchangeSemantics {
-
- protected Operation operation;
- protected String operationName;
-
- protected JMSBinding jmsBinding;
- protected JMSResourceFactory jmsResourceFactory;
- protected Destination bindingRequestDest;
- protected Destination bindingReplyDest;
- protected RuntimeComponentReference reference;
- protected RuntimeWire runtimeWire;
-
- public RRBJMSBindingInvoker(JMSBinding jmsBinding, Operation operation, JMSResourceFactory jmsResourceFactory, RuntimeComponentReference reference) {
-
- this.operation = operation;
- operationName = operation.getName();
-
- this.jmsBinding = jmsBinding;
- this.jmsResourceFactory = jmsResourceFactory;
- this.reference = reference;
- this.runtimeWire = reference.getRuntimeWire(jmsBinding);
-
- try {
- // If this is a callback reference, the destination is determined dynamically based on
- // properties of the inbound service request. We should not look for or require a
- // statically-configured destination unless a message is received that does not have
- // the necessary properties.
- if (!reference.isCallback()) {
- bindingRequestDest = lookupDestination();
- }
- bindingReplyDest = lookupResponseDestination();
- } catch (NamingException e) {
- throw new JMSBindingException(e);
- }
- }
-
- /**
- * Looks up the Destination Queue for the JMS Binding
- *
- * @return The Destination Queue
- * @throws NamingException Failed to lookup Destination Queue
- * @throws JMSBindingException Failed to lookup Destination Queue
- * @see #lookupDestinationQueue(boolean)
- */
- protected Destination lookupDestination() throws NamingException, JMSBindingException {
- return lookupDestinationQueue(false);
- }
-
- /**
- * Looks up the Destination Response Queue for the JMS Binding
- *
- * @return The Destination Response Queue
- * @throws NamingException Failed to lookup Destination Response Queue
- * @throws JMSBindingException Failed to lookup Destination Response Queue
- * @see #lookupDestinationQueue(boolean)
- */
- protected Destination lookupResponseDestination() throws NamingException, JMSBindingException {
- return lookupDestinationQueue(true);
- }
-
- /**
- * Looks up the Destination Queue for the JMS Binding.
- * <p>
- * What happens in the look up will depend on the create mode specified for the JMS Binding:
- * <ul>
- * <li>always - the JMS queue is always created. It is an error if the queue already exists
- * <li>ifnotexist - the JMS queue is created if it does not exist. It is not an error if the queue already exists
- * <li>never - the JMS queue is never created. It is an error if the queue does not exist
- * </ul>
- * See the SCA JMS Binding specification for more information.
- * <p>
- *
- * @param isReponseQueue <code>true</code> if we are creating a response queue.
- * <code>false</code> if we are creating a request queue
- * @return The Destination queue.
- * @throws NamingException Failed to lookup JMS queue
- * @throws JMSBindingException Failed to lookup JMS Queue. Probable cause is that
- * the JMS queue's current existence/non-existence is not compatible with
- * the create mode specified on the binding
- */
- protected Destination lookupDestinationQueue(boolean isReponseQueue) throws NamingException, JMSBindingException {
- String queueName;
- String queueType;
- String qCreateMode;
-
- if (isReponseQueue) {
- queueName = jmsBinding.getResponseDestinationName();
- queueType = "JMS Response Destination ";
- qCreateMode = jmsBinding.getResponseDestinationCreate();
- if (queueName == null) {
- return null;
- }
- } else {
- queueName = jmsBinding.getDestinationName();
- queueType = "JMS Destination ";
- qCreateMode = jmsBinding.getDestinationCreate();
- }
-
- Destination dest = jmsResourceFactory.lookupDestination(queueName);
-
- if (qCreateMode.equals(JMSBindingConstants.CREATE_ALWAYS)) {
- // In this mode, the queue must not already exist as we are creating it
- if (dest != null) {
- throw new JMSBindingException(queueType + queueName
- + " already exists but has create mode of \""
- + qCreateMode
- + "\" while registering binding "
- + jmsBinding.getName()
- + " invoker");
- }
- // Create the queue
- dest = jmsResourceFactory.createDestination(queueName);
-
- } else if (qCreateMode.equals(JMSBindingConstants.CREATE_IF_NOT_EXIST)) {
- // In this mode, the queue may nor may not exist. It will be created if it does not exist
- if (dest == null) {
- dest = jmsResourceFactory.createDestination(queueName);
- }
-
- } else if (qCreateMode.equals(JMSBindingConstants.CREATE_NEVER)) {
- // In this mode, the queue must have already been created.
- if (dest == null) {
- throw new JMSBindingException(queueType + queueName
- + " not found but create mode of \""
- + qCreateMode
- + "\" while registering binding "
- + jmsBinding.getName()
- + " invoker");
- }
- }
-
- // Make sure we ended up with a queue
- if (dest == null) {
- throw new JMSBindingException(queueType + queueName
- + " not found with create mode of \""
- + qCreateMode
- + "\" while registering binding "
- + jmsBinding.getName()
- + " invoker");
- }
-
- return dest;
- }
-
- public org.apache.tuscany.sca.invocation.Message invoke(org.apache.tuscany.sca.invocation.Message tuscanyMsg) {
- try {
- // populate the message context with JMS binding information
- JMSBindingContext context = new JMSBindingContext();
- context.setJmsResourceFactory(jmsResourceFactory);
- tuscanyMsg.setBindingContext(context);
-
- // get a jms session to cover the creation and sending of the message
- Session session = context.getJmsSession();
-
- context.setRequestDestination(getRequestDestination(tuscanyMsg, session));
- context.setReplyToDestination(getReplyToDestination(session));
-
- try {
- tuscanyMsg = runtimeWire.getBindingInvocationChain().getHeadInvoker().invoke(tuscanyMsg);
- } catch (ServiceRuntimeException e) {
- if (e.getCause() instanceof InvocationTargetException) {
- if ((e.getCause().getCause() instanceof RuntimeException)) {
- tuscanyMsg.setFaultBody(e.getCause());
- } else {
- tuscanyMsg.setFaultBody(((InvocationTargetException)e.getCause()).getTargetException());
- }
- } else if (e.getCause() instanceof FaultException) {
- tuscanyMsg.setFaultBody(e.getCause());
- } else {
- tuscanyMsg.setFaultBody(e);
- }
- } catch (IllegalStateException e) {
- tuscanyMsg.setFaultBody(e);
- } catch (Throwable e) {
- tuscanyMsg.setFaultBody(e);
- } finally {
- context.closeJmsSession();
- if (jmsResourceFactory.isConnectionClosedAfterUse()) {
- jmsResourceFactory.closeConnection();
- }
- }
-
- return tuscanyMsg;
- } catch (Exception e) {
- throw new JMSBindingException(e);
- }
- }
-
- protected Destination getRequestDestination(org.apache.tuscany.sca.invocation.Message tuscanyMsg, Session session) throws JMSBindingException, NamingException, JMSException {
- Destination requestDestination;
- if (reference.isCallback()) {
- String toURI = tuscanyMsg.getTo().getURI();
- if (toURI != null && toURI.startsWith("jms:")) {
- // the msg to uri contains the callback destination name
- // this is an jms physical name not a jndi name so need to use session.createQueue
- requestDestination = session.createQueue(toURI.substring(4));
- } else {
- requestDestination = lookupDestination();
- }
- } else {
- requestDestination = bindingRequestDest;
- }
-
- return requestDestination;
- }
-
- protected Destination getReplyToDestination(Session session) throws JMSException, JMSBindingException, NamingException {
- Destination replyToDest;
- if (operation.isNonBlocking()) {
- replyToDest = null;
- } else {
- if (bindingReplyDest != null) {
- replyToDest = bindingReplyDest;
- } else {
- replyToDest = session.createTemporaryQueue();
- }
- }
- return replyToDest;
- }
-
- public boolean allowsPassByReference() {
- // JMS always pass by value
- return true;
- }
-
-}
diff --git a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/provider/TextMessageProcessor.java b/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/provider/TextMessageProcessor.java
deleted file mode 100644
index c1b5e6562d..0000000000
--- a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/provider/TextMessageProcessor.java
+++ /dev/null
@@ -1,79 +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.binding.jms.provider;
-
-import java.util.logging.Logger;
-
-import javax.jms.JMSException;
-import javax.jms.Message;
-import javax.jms.Session;
-import javax.jms.TextMessage;
-
-import org.apache.tuscany.sca.binding.jms.impl.JMSBinding;
-import org.apache.tuscany.sca.binding.jms.impl.JMSBindingException;
-
-/**
- * MessageProcessor for sending/receiving javax.jms.TextMessage with the JMSBinding.
- *
- * @version $Rev$ $Date$
- */
-public class TextMessageProcessor extends AbstractMessageProcessor {
- private static final Logger logger = Logger.getLogger(TextMessageProcessor.class.getName());
-
- public TextMessageProcessor(JMSBinding jmsBinding) {
- super(jmsBinding);
- }
-
- @Override
- protected Object extractPayload(Message msg) {
- try {
-
- if (!(msg instanceof TextMessage)) {
- throw new IllegalStateException("expecting JMS TextMessage: " + msg);
- }
-
- return ((TextMessage)msg).getText();
-
- } catch (JMSException e) {
- throw new JMSBindingException(e);
- }
- }
-
- @Override
- protected Message createJMSMessage(Session session, Object o) {
- if (session == null) {
- logger.fine("no response session to create message: " + String.valueOf(o));
- return null;
- }
- try {
-
- TextMessage message = session.createTextMessage();
-
- if (o != null){
- message.setText(String.valueOf(o));
- }
-
- return message;
-
- } catch (JMSException e) {
- throw new JMSBindingException(e);
- }
- }
-
-}
diff --git a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/provider/XMLBytesMessageProcessor.java b/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/provider/XMLBytesMessageProcessor.java
deleted file mode 100644
index 5a9e82b7da..0000000000
--- a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/provider/XMLBytesMessageProcessor.java
+++ /dev/null
@@ -1,134 +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.binding.jms.provider;
-
-import java.io.ByteArrayInputStream;
-import java.util.logging.Logger;
-
-import javax.jms.BytesMessage;
-import javax.jms.JMSException;
-import javax.jms.Message;
-import javax.jms.Session;
-import javax.xml.stream.XMLInputFactory;
-import javax.xml.stream.XMLStreamException;
-import javax.xml.stream.XMLStreamReader;
-
-import org.apache.axiom.om.OMElement;
-import org.apache.axiom.om.impl.builder.StAXOMBuilder;
-import org.apache.tuscany.sca.binding.jms.impl.JMSBinding;
-import org.apache.tuscany.sca.binding.jms.impl.JMSBindingConstants;
-import org.apache.tuscany.sca.binding.jms.impl.JMSBindingException;
-import org.apache.tuscany.sca.interfacedef.util.FaultException;
-
-/**
- * MessageProcessor for sending/receiving XML javax.jms.BytesMessage with the JMSBinding.
- */
-public class XMLBytesMessageProcessor extends AbstractMessageProcessor {
- private static final Logger logger = Logger.getLogger(XMLBytesMessageProcessor.class.getName());
-
- public XMLBytesMessageProcessor(JMSBinding jmsBinding) {
- super(jmsBinding);
- }
-
- @Override
- protected Object extractPayload(Message msg) {
- try {
-
- if (!(msg instanceof BytesMessage)) {
- throw new IllegalStateException("expecting JMS BytesMessage: " + msg);
- }
-
- long noOfBytes = ((BytesMessage)msg).getBodyLength();
- byte [] bytes = new byte[(int)noOfBytes];
- ((BytesMessage)msg).readBytes(bytes);
- ((BytesMessage)msg).reset();
-
- Object os;
- if (noOfBytes > 0) {
- XMLStreamReader reader = XMLInputFactory.newInstance().createXMLStreamReader(new ByteArrayInputStream(bytes));
- StAXOMBuilder builder = new StAXOMBuilder(reader);
- os = builder.getDocumentElement();
- } else {
- os = null;
- }
- return os;
- } catch (XMLStreamException e) {
- throw new JMSBindingException(e);
- } catch (JMSException e) {
- throw new JMSBindingException(e);
- }
- }
-
- @Override
- public Object extractPayloadFromJMSMessage(Message msg) {
- if (msg instanceof BytesMessage) {
- return extractPayload(msg);
- } else {
- return super.extractPayloadFromJMSMessage(msg);
- }
- }
-
- @Override
- protected Message createJMSMessage(Session session, Object o) {
- if (session == null) {
- logger.fine("no response session to create message: " + String.valueOf(o));
- return null;
- }
- try {
- BytesMessage message = session.createBytesMessage();
-
- if (o instanceof OMElement) {
- message.writeBytes(o.toString().getBytes());
- } else if ((o instanceof Object[]) && ((Object[])o)[0] instanceof OMElement) {
- message.writeBytes(((Object[])o)[0].toString().getBytes());
- } else if (o != null) {
- throw new IllegalStateException("expecting OMElement payload: " + o);
- }
-
- return message;
-
- } catch (JMSException e) {
- throw new JMSBindingException(e);
- }
- }
-
- @Override
- public Message createFaultMessage(Session session, Throwable o) {
-
- if (session == null) {
- logger.fine("no response session to create fault message: " + String.valueOf(o));
- return null;
- }
- if (o instanceof FaultException) {
- try {
-
- BytesMessage message = session.createBytesMessage();
- message.writeBytes(String.valueOf(((FaultException) o).getFaultInfo()).getBytes());
- message.setBooleanProperty(JMSBindingConstants.FAULT_PROPERTY, true);
- return message;
-
- } catch (JMSException e) {
- throw new JMSBindingException(e);
- }
- } else {
- return super.createFaultMessage(session, o);
- }
- }
-
-}
diff --git a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/provider/XMLTextMessageProcessor.java b/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/provider/XMLTextMessageProcessor.java
deleted file mode 100644
index 8794f80126..0000000000
--- a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/provider/XMLTextMessageProcessor.java
+++ /dev/null
@@ -1,129 +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.binding.jms.provider;
-
-import java.io.StringReader;
-import java.util.logging.Logger;
-
-import javax.jms.JMSException;
-import javax.jms.Message;
-import javax.jms.Session;
-import javax.jms.TextMessage;
-import javax.xml.stream.XMLInputFactory;
-import javax.xml.stream.XMLStreamException;
-import javax.xml.stream.XMLStreamReader;
-
-import org.apache.axiom.om.OMElement;
-import org.apache.axiom.om.impl.builder.StAXOMBuilder;
-import org.apache.tuscany.sca.binding.jms.impl.JMSBinding;
-import org.apache.tuscany.sca.binding.jms.impl.JMSBindingConstants;
-import org.apache.tuscany.sca.binding.jms.impl.JMSBindingException;
-import org.apache.tuscany.sca.interfacedef.util.FaultException;
-
-/**
- * MessageProcessor for sending/receiving XML javax.jms.TextMessage with the JMSBinding.
- *
- * @version $Rev$ $Date$
- */
-public class XMLTextMessageProcessor extends AbstractMessageProcessor {
- private static final Logger logger = Logger.getLogger(XMLTextMessageProcessor.class.getName());
-
- public XMLTextMessageProcessor(JMSBinding jmsBinding) {
- super(jmsBinding);
- }
-
- @Override
- protected Object extractPayload(Message msg) {
- try {
-
- String xml = ((TextMessage)msg).getText();
- Object os;
- if (xml != null) {
- XMLStreamReader reader = XMLInputFactory.newInstance().createXMLStreamReader(new StringReader(xml));
- StAXOMBuilder builder = new StAXOMBuilder(reader);
- os = builder.getDocumentElement();
- } else {
- os = null;
- }
- return os;
-
- } catch (XMLStreamException e) {
- throw new JMSBindingException(e);
- } catch (JMSException e) {
- throw new JMSBindingException(e);
- }
- }
-
- @Override
- public Object extractPayloadFromJMSMessage(Message msg) {
- if (msg instanceof TextMessage) {
- return extractPayload(msg);
- } else {
- return super.extractPayloadFromJMSMessage(msg);
- }
- }
-
- @Override
- protected Message createJMSMessage(Session session, Object o) {
- if (session == null) {
- logger.fine("no response session to create message: " + String.valueOf(o));
- return null;
- }
- try {
-
- TextMessage message = session.createTextMessage();
-
- if (o instanceof OMElement) {
- message.setText(o.toString());
- } else if ((o instanceof Object[]) && ((Object[])o)[0] instanceof OMElement) {
- message.setText(((Object[])o)[0].toString());
- } else if (o != null) {
- throw new IllegalStateException("expecting OMElement payload: " + o);
- }
-
- return message;
-
- } catch (JMSException e) {
- throw new JMSBindingException(e);
- }
- }
-
- @Override
- public Message createFaultMessage(Session session, Throwable o) {
- if (session == null) {
- logger.fine("no response session to create fault message: " + String.valueOf(o));
- return null;
- }
- if (o instanceof FaultException) {
- try {
-
- TextMessage message = session.createTextMessage();
- message.setText(String.valueOf(((FaultException)o).getFaultInfo()));
- message.setBooleanProperty(JMSBindingConstants.FAULT_PROPERTY, true);
- return message;
-
- } catch (JMSException e) {
- throw new JMSBindingException(e);
- }
- } else {
- return super.createFaultMessage(session, o);
- }
- }
-
-}
diff --git a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/transport/TransportReferenceInterceptor.java b/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/transport/TransportReferenceInterceptor.java
deleted file mode 100644
index 0628cfbb32..0000000000
--- a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/transport/TransportReferenceInterceptor.java
+++ /dev/null
@@ -1,163 +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.binding.jms.transport;
-
-import javax.jms.JMSException;
-import javax.jms.MessageConsumer;
-import javax.jms.MessageProducer;
-import javax.jms.Session;
-import javax.naming.NamingException;
-
-import org.apache.tuscany.sca.binding.jms.context.JMSBindingContext;
-import org.apache.tuscany.sca.binding.jms.impl.JMSBinding;
-import org.apache.tuscany.sca.binding.jms.impl.JMSBindingConstants;
-import org.apache.tuscany.sca.binding.jms.impl.JMSBindingException;
-import org.apache.tuscany.sca.binding.jms.provider.JMSMessageProcessor;
-import org.apache.tuscany.sca.binding.jms.provider.JMSMessageProcessorUtil;
-import org.apache.tuscany.sca.binding.jms.provider.JMSResourceFactory;
-import org.apache.tuscany.sca.invocation.Interceptor;
-import org.apache.tuscany.sca.invocation.Invoker;
-import org.apache.tuscany.sca.invocation.Message;
-import org.apache.tuscany.sca.runtime.RuntimeComponentReference;
-import org.apache.tuscany.sca.runtime.RuntimeWire;
-
-/**
- * Policy handler to handle PolicySet related to Logging with the QName
- * {http://tuscany.apache.org/xmlns/sca/1.0/impl/java}LoggingPolicy
- *
- * @version $Rev$ $Date$
- */
-public class TransportReferenceInterceptor implements Interceptor {
-
- private Invoker next;
- private RuntimeWire runtimeWire;
- private JMSResourceFactory jmsResourceFactory;
- private JMSBinding jmsBinding;
- private RuntimeComponentReference reference;
-
- public TransportReferenceInterceptor(JMSBinding jmsBinding, JMSResourceFactory jmsResourceFactory, RuntimeWire runtimeWire) {
- super();
- this.jmsBinding = jmsBinding;
- this.runtimeWire = runtimeWire;
- this.jmsResourceFactory = jmsResourceFactory;
- this.reference = (RuntimeComponentReference)runtimeWire.getSource().getContract();
- }
-
- public Message invoke(Message msg) {
- Message responseMsg = invokeRequest(msg);
-
- // get the jms context
- JMSBindingContext context = msg.getBindingContext();
-
- if (context.getReplyToDestination() == null) {
- responseMsg.setBody(null);
- } else {
- responseMsg = invokeResponse(msg);
- }
-
- return responseMsg;
- }
-
- public Message invokeRequest(Message msg) {
- try {
- // get the jms context
- JMSBindingContext context = msg.getBindingContext();
- Session session = context.getJmsSession();
-
- MessageProducer producer = session.createProducer(context.getRequestDestination());
-
- // Set JMS header attributes in producer, not message.
- String opName = msg.getOperation().getName();
- if (jmsBinding.getOperationJMSTimeToLive(msg.getOperation().getName()) != null) {
- producer.setTimeToLive(jmsBinding.getOperationJMSTimeToLive(msg.getOperation().getName()));
- }
- Integer priority = jmsBinding.getOperationJMSPriority( opName );
- if (priority != null) {
- producer.setPriority(priority.intValue());
- }
- Boolean deliveryModePersistent = jmsBinding.getOperationJMSDeliveryMode(opName);
- if (deliveryModePersistent != null) {
- if (deliveryModePersistent.booleanValue())
- producer.setDeliveryMode(javax.jms.DeliveryMode.PERSISTENT);
- else
- producer.setDeliveryMode(javax.jms.DeliveryMode.NON_PERSISTENT);
- }
-
- try {
- producer.send((javax.jms.Message)msg.getBody());
- } finally {
- producer.close();
- }
- return msg;
- } catch (JMSException e) {
- throw new JMSBindingException(e);
- }
- }
-
- public Message invokeResponse(Message msg) {
- JMSBindingContext context = msg.getBindingContext();
- try {
- Session session = context.getJmsResponseSession();
-
- javax.jms.Message requestMessage = (javax.jms.Message)msg.getBody();
-
- String msgSelector = "JMSCorrelationID = '" +
- requestMessage.getJMSMessageID() +
- "'";
- MessageConsumer consumer = session.createConsumer(context.getReplyToDestination(), msgSelector);
-
- javax.jms.Message replyMsg;
- try {
- context.getJmsResourceFactory().startConnection();
- //jmsResourceFactory.startConnection();
- replyMsg = consumer.receive(context.getTimeToLive());
- } finally {
- consumer.close();
- }
- if (replyMsg == null) {
- throw new JMSBindingException("No reply message received on " +
- context.getReplyToDestination() +
- " for message id " +
- requestMessage.getJMSMessageID());
- }
-
- msg.setBody(replyMsg);
- return msg;
- } catch (JMSException e) {
- throw new JMSBindingException(e);
- } catch (NamingException e) {
- throw new JMSBindingException(e);
- } finally {
- try {
- context.closeJmsResponseSession();
- if (jmsResourceFactory.isConnectionClosedAfterUse())
- jmsResourceFactory.closeResponseConnection();
- } catch (JMSException e) {
- }
- }
- }
-
- public Invoker getNext() {
- return next;
- }
-
- public void setNext(Invoker next) {
- this.next = next;
- }
-}
diff --git a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/transport/TransportServiceInterceptor.java b/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/transport/TransportServiceInterceptor.java
deleted file mode 100644
index 626e44f34f..0000000000
--- a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/transport/TransportServiceInterceptor.java
+++ /dev/null
@@ -1,188 +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.binding.jms.transport;
-
-import java.util.logging.Level;
-import java.util.logging.Logger;
-
-import javax.jms.Destination;
-import javax.jms.JMSException;
-import javax.jms.MessageProducer;
-import javax.jms.Session;
-import javax.naming.NamingException;
-
-import org.apache.tuscany.sca.binding.jms.context.JMSBindingContext;
-import org.apache.tuscany.sca.binding.jms.impl.JMSBinding;
-import org.apache.tuscany.sca.binding.jms.impl.JMSBindingConstants;
-import org.apache.tuscany.sca.binding.jms.impl.JMSBindingException;
-import org.apache.tuscany.sca.binding.jms.provider.JMSMessageProcessor;
-import org.apache.tuscany.sca.binding.jms.provider.JMSMessageProcessorUtil;
-import org.apache.tuscany.sca.binding.jms.provider.JMSResourceFactory;
-import org.apache.tuscany.sca.core.assembly.EndpointReferenceImpl;
-import org.apache.tuscany.sca.interfacedef.Operation;
-import org.apache.tuscany.sca.invocation.Interceptor;
-import org.apache.tuscany.sca.invocation.Invoker;
-import org.apache.tuscany.sca.invocation.Message;
-import org.apache.tuscany.sca.runtime.EndpointReference;
-import org.apache.tuscany.sca.runtime.ReferenceParameters;
-import org.apache.tuscany.sca.runtime.RuntimeComponentService;
-import org.apache.tuscany.sca.runtime.RuntimeWire;
-
-/**
- *
- * @version $Rev$ $Date$
- */
-public class TransportServiceInterceptor implements Interceptor {
- private static final Logger logger = Logger.getLogger(TransportServiceInterceptor.class.getName());
-
- private Invoker next;
- private RuntimeWire runtimeWire;
- private JMSResourceFactory jmsResourceFactory;
- private JMSBinding jmsBinding;
- private JMSMessageProcessor requestMessageProcessor;
- private JMSMessageProcessor responseMessageProcessor;
- private RuntimeComponentService service;
- private String correlationScheme;
-
-
- public TransportServiceInterceptor(JMSBinding jmsBinding, JMSResourceFactory jmsResourceFactory, RuntimeWire runtimeWire) {
- super();
- this.jmsBinding = jmsBinding;
- this.runtimeWire = runtimeWire;
- this.jmsResourceFactory = jmsResourceFactory;
- this.requestMessageProcessor = JMSMessageProcessorUtil.getRequestMessageProcessor(jmsBinding);
- this.responseMessageProcessor = JMSMessageProcessorUtil.getResponseMessageProcessor(jmsBinding);
- this.service = (RuntimeComponentService)runtimeWire.getTarget().getContract();
- this.correlationScheme = jmsBinding.getCorrelationScheme();
- }
-
- public Message invoke(Message msg) {
- try {
- return invokeResponse(next.invoke(invokeRequest(msg)));
- } catch (Throwable e) {
- logger.log(Level.SEVERE, "Exception invoking service '" + service.getName(), e);
- JMSBindingContext context = msg.getBindingContext();
- javax.jms.Message replyJMSMsg = responseMessageProcessor.createFaultMessage(context.getJmsResponseSession(),
- (Throwable)e);
- msg.setBody(replyJMSMsg);
- invokeResponse(msg);
- return msg;
- } finally {
- try {
- ((JMSBindingContext)msg.getBindingContext()).closeJmsResponseSession();
- if (jmsResourceFactory.isConnectionClosedAfterUse())
- jmsResourceFactory.closeResponseConnection();
- } catch (JMSException e) {
- }
- }
- }
-
- public Message invokeRequest(Message msg) {
- try {
- JMSBindingContext context = msg.getBindingContext();
- javax.jms.Message requestJMSMsg = context.getJmsMsg();
-
- EndpointReference from = new EndpointReferenceImpl(null);
- msg.setFrom(from);
- from.setCallbackEndpoint(new EndpointReferenceImpl("/")); // TODO: whats this for?
- ReferenceParameters parameters = from.getReferenceParameters();
-
- String conversationID = requestJMSMsg.getStringProperty(JMSBindingConstants.CONVERSATION_ID_PROPERTY);
- if (conversationID != null) {
- parameters.setConversationID(conversationID);
- }
-
- return msg;
- } catch (JMSException e) {
- throw new JMSBindingException(e);
- }
- }
-
- public Message invokeResponse(Message msg) {
- try {
-
- //if operation is oneway, return back.
- Operation operation = msg.getOperation();
- if (operation != null && operation.isNonBlocking()) {
- return msg;
- }
-
- JMSBindingContext context = msg.getBindingContext();
- Session session = context.getJmsResponseSession();
- javax.jms.Message requestJMSMsg = context.getJmsMsg();
- javax.jms.Message responseJMSMsg = msg.getBody();
-
- Destination replyDest = requestJMSMsg.getJMSReplyTo();
- if (replyDest == null) {
- if (jmsBinding.getResponseDestinationName() != null) {
- try {
- replyDest = jmsResourceFactory.lookupDestination(jmsBinding.getResponseDestinationName());
- } catch (NamingException e) {
- throw new JMSBindingException("Exception lookingup response destination", e);
- }
- }
- }
-
- if (replyDest == null) {
- // assume no reply is expected
- if (msg.getBody() != null) {
- logger.log(Level.FINE, "JMS service '" + service.getName() + "' dropped response as request has no replyTo");
- }
- return msg;
- }
-
- responseJMSMsg.setJMSDeliveryMode(requestJMSMsg.getJMSDeliveryMode());
- responseJMSMsg.setJMSPriority(requestJMSMsg.getJMSPriority());
-
- if (correlationScheme == null ||
- JMSBindingConstants.CORRELATE_MSG_ID.equalsIgnoreCase(correlationScheme)) {
- responseJMSMsg.setJMSCorrelationID(requestJMSMsg.getJMSMessageID());
- } else if (JMSBindingConstants.CORRELATE_CORRELATION_ID.equalsIgnoreCase(correlationScheme)) {
- responseJMSMsg.setJMSCorrelationID(requestJMSMsg.getJMSCorrelationID());
- }
-
- MessageProducer producer = session.createProducer(replyDest);
-
- // Set jms header attributes in producer, not message.
- int deliveryMode = requestJMSMsg.getJMSDeliveryMode();
- producer.setDeliveryMode(deliveryMode);
- int deliveryPriority = requestJMSMsg.getJMSPriority();
- producer.setPriority(deliveryPriority);
-
- producer.send((javax.jms.Message)msg.getBody());
-
- producer.close();
- context.closeJmsResponseSession();
-
- return msg;
-
- } catch (JMSException e) {
- throw new JMSBindingException(e);
- }
- }
-
- public Invoker getNext() {
- return next;
- }
-
- public void setNext(Invoker next) {
- this.next = next;
- }
-
-}
diff --git a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wire/CallbackDestinationInterceptor.java b/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wire/CallbackDestinationInterceptor.java
deleted file mode 100644
index 64badf9002..0000000000
--- a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wire/CallbackDestinationInterceptor.java
+++ /dev/null
@@ -1,96 +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.binding.jms.wire;
-
-import javax.jms.Destination;
-import javax.jms.JMSException;
-import javax.jms.Queue;
-import javax.jms.Topic;
-
-import org.apache.tuscany.sca.binding.jms.context.JMSBindingContext;
-import org.apache.tuscany.sca.binding.jms.impl.JMSBindingConstants;
-import org.apache.tuscany.sca.binding.jms.impl.JMSBindingException;
-import org.apache.tuscany.sca.core.assembly.EndpointReferenceImpl;
-import org.apache.tuscany.sca.invocation.Interceptor;
-import org.apache.tuscany.sca.invocation.Invoker;
-import org.apache.tuscany.sca.invocation.Message;
-import org.apache.tuscany.sca.runtime.ReferenceParameters;
-import org.apache.tuscany.sca.runtime.RuntimeComponentService;
-import org.apache.tuscany.sca.runtime.RuntimeWire;
-
-public class CallbackDestinationInterceptor implements Interceptor {
- private Invoker next;
- private RuntimeComponentService service;
-
- public CallbackDestinationInterceptor(RuntimeWire runtimeWire) {
- super();
- this.service = (RuntimeComponentService) runtimeWire.getTarget().getContract();
- }
-
- public Invoker getNext() {
- return next;
- }
-
- public void setNext(Invoker next) {
- this.next = next;
- }
-
- public Message invoke(Message msg) {
- return next.invoke(invokeRequest(msg));
- }
-
- public Message invokeRequest(Message msg) {
- try {
- // get the jms context
- JMSBindingContext context = msg.getBindingContext();
- javax.jms.Message jmsMsg = context.getJmsMsg();
-
- ReferenceParameters parameters = msg.getFrom().getReferenceParameters();
-
- if (service.getInterfaceContract().getCallbackInterface() != null) {
-
- String callbackdestName = jmsMsg.getStringProperty(JMSBindingConstants.CALLBACK_Q_PROPERTY);
- if (callbackdestName == null && msg.getOperation().isNonBlocking()) {
- // if the request has a replyTo but this service operation is oneway but the service uses callbacks
- // then use the replyTo as the callback destination
- Destination replyTo = jmsMsg.getJMSReplyTo();
- if (replyTo != null) {
- callbackdestName = (replyTo instanceof Queue) ? ((Queue) replyTo).getQueueName() : ((Topic) replyTo).getTopicName();
- }
- }
-
- if (callbackdestName != null) {
- // append "jms:" to make it an absolute uri so the invoker can determine it came in on the request
- // as otherwise the invoker should use the uri from the service callback binding
- parameters.setCallbackReference(new EndpointReferenceImpl("jms:" + callbackdestName));
- }
-
- String callbackID = jmsMsg.getStringProperty(JMSBindingConstants.CALLBACK_ID_PROPERTY);
- if (callbackID != null) {
- parameters.setCallbackID(callbackID);
- }
- }
-
- } catch (JMSException e) {
- throw new JMSBindingException(e);
- }
-
- return msg;
- }
-} \ No newline at end of file
diff --git a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wire/OperationPropertiesInterceptor.java b/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wire/OperationPropertiesInterceptor.java
deleted file mode 100644
index 2ba2429dfa..0000000000
--- a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wire/OperationPropertiesInterceptor.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.binding.jms.wire;
-
-import java.util.List;
-
-import javax.jms.Destination;
-import javax.jms.Queue;
-import javax.jms.Topic;
-
-import org.apache.tuscany.sca.binding.jms.context.JMSBindingContext;
-import org.apache.tuscany.sca.binding.jms.impl.JMSBinding;
-import org.apache.tuscany.sca.binding.jms.impl.JMSBindingConstants;
-import org.apache.tuscany.sca.binding.jms.impl.JMSBindingException;
-import org.apache.tuscany.sca.core.assembly.EndpointReferenceImpl;
-import org.apache.tuscany.sca.interfacedef.Operation;
-import org.apache.tuscany.sca.invocation.Interceptor;
-import org.apache.tuscany.sca.invocation.Invoker;
-import org.apache.tuscany.sca.invocation.Message;
-import org.apache.tuscany.sca.runtime.ReferenceParameters;
-import org.apache.tuscany.sca.runtime.RuntimeComponentService;
-import org.apache.tuscany.sca.runtime.RuntimeWire;
-
-public class OperationPropertiesInterceptor implements Interceptor {
- private Invoker next;
- private JMSBinding jmsBinding;
- private RuntimeComponentService service;
- private List<Operation> serviceOperations;
-
- public OperationPropertiesInterceptor(JMSBinding jmsBinding, RuntimeWire runtimeWire) {
- super();
- this.jmsBinding = jmsBinding;
- this.service = (RuntimeComponentService) runtimeWire.getTarget().getContract();
- this.serviceOperations = service.getInterfaceContract().getInterface().getOperations();
- }
-
- public Invoker getNext() {
- return next;
- }
-
- public void setNext(Invoker next) {
- this.next = next;
- }
-
- public Message invoke(Message msg) {
- return next.invoke(invokeRequest(msg));
- }
-
- public Message invokeRequest(Message msg) {
- // TODO - could probably optimize this better
- String operationName = msg.getOperation().getName();
- String operationNameOverride = jmsBinding.getNativeOperationName(operationName);
- for (Operation op : serviceOperations) {
- if (op.getName().equals(operationNameOverride)) {
- msg.setOperation(op);
- break;
- }
- }
- return msg;
- }
-
-}
diff --git a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmsbytes/runtime/WireFormatJMSBytesProviderFactory.java b/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmsbytes/runtime/WireFormatJMSBytesProviderFactory.java
deleted file mode 100644
index aa5df2b8bb..0000000000
--- a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmsbytes/runtime/WireFormatJMSBytesProviderFactory.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.binding.jms.wireformat.jmsbytes.runtime;
-
-import org.apache.tuscany.sca.assembly.Binding;
-import org.apache.tuscany.sca.binding.jms.wireformat.jmsbytes.WireFormatJMSBytes;
-import org.apache.tuscany.sca.core.ExtensionPointRegistry;
-import org.apache.tuscany.sca.provider.WireFormatProvider;
-import org.apache.tuscany.sca.provider.WireFormatProviderFactory;
-import org.apache.tuscany.sca.runtime.RuntimeComponent;
-import org.apache.tuscany.sca.runtime.RuntimeComponentReference;
-import org.apache.tuscany.sca.runtime.RuntimeComponentService;
-
-/**
- * @version $Rev$ $Date$
- */
-public class WireFormatJMSBytesProviderFactory implements WireFormatProviderFactory<WireFormatJMSBytes> {
- private ExtensionPointRegistry registry;
-
- public WireFormatJMSBytesProviderFactory(ExtensionPointRegistry registry) {
- super();
- this.registry = registry;
- }
-
- /**
- */
- public WireFormatProvider createReferenceWireFormatProvider(RuntimeComponent component,
- RuntimeComponentReference reference,
- Binding binding) {
- return new WireFormatJMSBytesReferenceProvider(registry, component, reference, binding);
- }
-
- /**
- */
- public WireFormatProvider createServiceWireFormatProvider(RuntimeComponent component,
- RuntimeComponentService service,
- Binding binding) {
- return new WireFormatJMSBytesServiceProvider(registry, component, service, binding);
- }
-
- /**
- * @see org.apache.tuscany.sca.provider.ProviderFactory#getModelType()
- */
- public Class getModelType() {
- // TODO Auto-generated method stub
- return null;
- }
-
-}
diff --git a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmsbytes/runtime/WireFormatJMSBytesReferenceInterceptor.java b/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmsbytes/runtime/WireFormatJMSBytesReferenceInterceptor.java
deleted file mode 100644
index d08707a1ba..0000000000
--- a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmsbytes/runtime/WireFormatJMSBytesReferenceInterceptor.java
+++ /dev/null
@@ -1,123 +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.binding.jms.wireformat.jmsbytes.runtime;
-
-
-import java.lang.reflect.InvocationTargetException;
-import javax.jms.JMSException;
-import javax.jms.Session;
-
-import org.apache.tuscany.sca.assembly.WireFormat;
-import org.apache.tuscany.sca.binding.jms.context.JMSBindingContext;
-import org.apache.tuscany.sca.binding.jms.impl.JMSBinding;
-import org.apache.tuscany.sca.binding.jms.impl.JMSBindingConstants;
-import org.apache.tuscany.sca.binding.jms.impl.JMSBindingException;
-import org.apache.tuscany.sca.binding.jms.provider.JMSMessageProcessor;
-import org.apache.tuscany.sca.binding.jms.provider.JMSMessageProcessorUtil;
-import org.apache.tuscany.sca.binding.jms.provider.JMSResourceFactory;
-import org.apache.tuscany.sca.binding.jms.wireformat.jmsbytes.WireFormatJMSBytes;
-import org.apache.tuscany.sca.invocation.Interceptor;
-import org.apache.tuscany.sca.invocation.Invoker;
-import org.apache.tuscany.sca.invocation.Message;
-import org.apache.tuscany.sca.runtime.RuntimeWire;
-
-/**
- *
- * @version $Rev$ $Date$
- */
-public class WireFormatJMSBytesReferenceInterceptor implements Interceptor {
-
- private Invoker next;
- private RuntimeWire runtimeWire;
- private JMSResourceFactory jmsResourceFactory;
- private JMSBinding jmsBinding;
- private JMSMessageProcessor requestMessageProcessor;
- private JMSMessageProcessor responseMessageProcessor;
-
- public WireFormatJMSBytesReferenceInterceptor(JMSBinding jmsBinding, JMSResourceFactory jmsResourceFactory, RuntimeWire runtimeWire) {
- super();
- this.jmsBinding = jmsBinding;
- this.runtimeWire = runtimeWire;
- this.jmsResourceFactory = jmsResourceFactory;
- this.requestMessageProcessor = JMSMessageProcessorUtil.getRequestMessageProcessor(jmsBinding);
- this.responseMessageProcessor = JMSMessageProcessorUtil.getResponseMessageProcessor(jmsBinding);
- }
-
- public Message invoke(Message msg) {
- if (jmsBinding.getRequestWireFormat() instanceof WireFormatJMSBytes){
- msg = invokeRequest(msg);
- }
-
- msg = getNext().invoke(msg);
-
- if (jmsBinding.getResponseWireFormat() instanceof WireFormatJMSBytes){
- msg = invokeResponse(msg);
- }
-
- return msg;
- }
-
- public Message invokeRequest(Message msg) {
- try {
- // get the jms context
- JMSBindingContext context = msg.getBindingContext();
- Session session = context.getJmsSession();
-
- Object[] requestParams = msg.getBody();
- javax.jms.Message requestMsg = null;
- if (requestParams != null && requestParams.length > 0 ){
- requestMsg = requestMessageProcessor.insertPayloadIntoJMSMessage(session, requestParams[0]);
- } else {
- requestMsg = requestMessageProcessor.insertPayloadIntoJMSMessage(session, null);
- }
- msg.setBody(requestMsg);
-
- requestMsg.setJMSReplyTo(context.getReplyToDestination());
-
- return msg;
- } catch (JMSException e) {
- throw new JMSBindingException(e);
- }
- }
-
- public Message invokeResponse(Message msg) {
- if (msg.getBody() != null){
- Object response = responseMessageProcessor.extractPayloadFromJMSMessage((javax.jms.Message)msg.getBody());
- if (response instanceof InvocationTargetException) {
- msg.setFaultBody(((InvocationTargetException) response).getCause());
- } else {
- if (response != null){
- msg.setBody(response);
- } else {
- msg.setBody(null);
- }
- }
- }
-
- return msg;
- }
-
- public Invoker getNext() {
- return next;
- }
-
- public void setNext(Invoker next) {
- this.next = next;
- }
-}
diff --git a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmsbytes/runtime/WireFormatJMSBytesReferenceProvider.java b/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmsbytes/runtime/WireFormatJMSBytesReferenceProvider.java
deleted file mode 100644
index 610c9901ec..0000000000
--- a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmsbytes/runtime/WireFormatJMSBytesReferenceProvider.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.binding.jms.wireformat.jmsbytes.runtime;
-
-import org.apache.tuscany.sca.assembly.Binding;
-import org.apache.tuscany.sca.binding.jms.impl.JMSBinding;
-import org.apache.tuscany.sca.binding.jms.impl.JMSBindingConstants;
-import org.apache.tuscany.sca.binding.jms.wireformat.jmsbytes.WireFormatJMSBytes;
-import org.apache.tuscany.sca.core.ExtensionPointRegistry;
-import org.apache.tuscany.sca.interfacedef.InterfaceContract;
-import org.apache.tuscany.sca.invocation.Interceptor;
-import org.apache.tuscany.sca.invocation.Phase;
-import org.apache.tuscany.sca.provider.WireFormatProvider;
-import org.apache.tuscany.sca.runtime.RuntimeComponent;
-import org.apache.tuscany.sca.runtime.RuntimeComponentReference;
-
-/**
- * @version $Rev$ $Date$
- */
-public class WireFormatJMSBytesReferenceProvider implements WireFormatProvider {
- private ExtensionPointRegistry registry;
- private RuntimeComponent component;
- private RuntimeComponentReference reference;
- private JMSBinding binding;
- private InterfaceContract interfaceContract;
-
- public WireFormatJMSBytesReferenceProvider(ExtensionPointRegistry registry,
- RuntimeComponent component,
- RuntimeComponentReference reference,
- Binding binding) {
- super();
- this.registry = registry;
- this.component = component;
- this.reference = reference;
- this.binding = (JMSBinding)binding;
-
- // configure the reference based on this wire format
-
- // currently maintaining the message processor structure which
- // contains the details of jms message processing however overried
- // any message processors specied in the SCDL in this case
- if (this.binding.getRequestWireFormat() instanceof WireFormatJMSBytes){
- this.binding.setRequestMessageProcessorName(JMSBindingConstants.BYTES_MP_CLASSNAME);
- }
- if (this.binding.getResponseWireFormat() instanceof WireFormatJMSBytes){
- this.binding.setResponseMessageProcessorName(JMSBindingConstants.BYTES_MP_CLASSNAME);
- }
-
- // just point to the reference interface contract so no
- // databinding transformation takes place
- interfaceContract = reference.getReference().getInterfaceContract();
- }
-
- public InterfaceContract configureWireFormatInterfaceContract(InterfaceContract interfaceContract){
-
- if (this.interfaceContract != null ) {
- if (this.binding.getRequestWireFormat() instanceof WireFormatJMSBytes){
- // set the request data transformation
- interfaceContract.getInterface().resetInterfaceInputTypes(this.interfaceContract.getInterface());
- }
- if (this.binding.getResponseWireFormat() instanceof WireFormatJMSBytes){
- // set the response data transformation
- interfaceContract.getInterface().resetInterfaceOutputTypes(this.interfaceContract.getInterface());
- }
- }
-
- return interfaceContract;
- }
-
- public Interceptor createInterceptor() {
- return new WireFormatJMSBytesReferenceInterceptor(binding,
- null,
- reference.getRuntimeWire(binding));
- }
-
- public String getPhase() {
- return Phase.REFERENCE_BINDING_WIREFORMAT;
- }
-
-}
diff --git a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmsbytes/runtime/WireFormatJMSBytesServiceInterceptor.java b/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmsbytes/runtime/WireFormatJMSBytesServiceInterceptor.java
deleted file mode 100644
index 5128309233..0000000000
--- a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmsbytes/runtime/WireFormatJMSBytesServiceInterceptor.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.binding.jms.wireformat.jmsbytes.runtime;
-
-import javax.jms.Session;
-
-import org.apache.tuscany.sca.binding.jms.context.JMSBindingContext;
-import org.apache.tuscany.sca.binding.jms.impl.JMSBinding;
-import org.apache.tuscany.sca.binding.jms.provider.JMSMessageProcessor;
-import org.apache.tuscany.sca.binding.jms.provider.JMSMessageProcessorUtil;
-import org.apache.tuscany.sca.binding.jms.provider.JMSResourceFactory;
-import org.apache.tuscany.sca.binding.jms.wireformat.jmsbytes.WireFormatJMSBytes;
-import org.apache.tuscany.sca.interfacedef.Operation;
-import org.apache.tuscany.sca.invocation.Interceptor;
-import org.apache.tuscany.sca.invocation.Invoker;
-import org.apache.tuscany.sca.invocation.Message;
-import org.apache.tuscany.sca.runtime.RuntimeWire;
-
-/**
- * Policy handler to handle PolicySet related to Logging with the QName
- * {http://tuscany.apache.org/xmlns/sca/1.0/impl/java}LoggingPolicy
- *
- * @version $Rev$ $Date$
- */
-public class WireFormatJMSBytesServiceInterceptor implements Interceptor {
- private Invoker next;
- private RuntimeWire runtimeWire;
- private JMSResourceFactory jmsResourceFactory;
- private JMSBinding jmsBinding;
- private JMSMessageProcessor requestMessageProcessor;
- private JMSMessageProcessor responseMessageProcessor;
-
- public WireFormatJMSBytesServiceInterceptor(JMSBinding jmsBinding, JMSResourceFactory jmsResourceFactory, RuntimeWire runtimeWire) {
- super();
- this.jmsBinding = jmsBinding;
- this.runtimeWire = runtimeWire;
- this.jmsResourceFactory = jmsResourceFactory;
- this.requestMessageProcessor = JMSMessageProcessorUtil.getRequestMessageProcessor(jmsBinding);
- this.responseMessageProcessor = JMSMessageProcessorUtil.getResponseMessageProcessor(jmsBinding);
- }
-
- public Message invoke(Message msg) {
- if (jmsBinding.getRequestWireFormat() instanceof WireFormatJMSBytes){
- msg = invokeRequest(msg);
- }
-
- msg = getNext().invoke(msg);
-
- //if it's oneway return back
- Operation operation = msg.getOperation();
- if (operation != null && operation.isNonBlocking()) {
- return msg;
- }
-
- if (jmsBinding.getResponseWireFormat() instanceof WireFormatJMSBytes){
- msg = invokeResponse(msg);
- }
-
- return msg;
- }
-
- public Message invokeRequest(Message msg) {
- // get the jms context
- JMSBindingContext context = msg.getBindingContext();
- javax.jms.Message jmsMsg = context.getJmsMsg();
-
- Object requestPayload = requestMessageProcessor.extractPayloadFromJMSMessage(jmsMsg);
- msg.setBody(new Object[]{requestPayload});
-
- return msg;
- }
-
- public Message invokeResponse(Message msg) {
- // get the jms context
- JMSBindingContext context = msg.getBindingContext();
- Session session = context.getJmsResponseSession();
-
- javax.jms.Message responseJMSMsg;
- if (msg.isFault()) {
- responseJMSMsg = responseMessageProcessor.createFaultMessage(session, (Throwable)msg.getBody());
- } else {
- Object response = msg.getBody();
- responseJMSMsg = responseMessageProcessor.insertPayloadIntoJMSMessage(session, response);
- }
-
- msg.setBody(responseJMSMsg);
-
- return msg;
- }
-
- public Invoker getNext() {
- return next;
- }
-
- public void setNext(Invoker next) {
- this.next = next;
- }
-}
diff --git a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmsbytes/runtime/WireFormatJMSBytesServiceProvider.java b/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmsbytes/runtime/WireFormatJMSBytesServiceProvider.java
deleted file mode 100644
index 426bca28c6..0000000000
--- a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmsbytes/runtime/WireFormatJMSBytesServiceProvider.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.binding.jms.wireformat.jmsbytes.runtime;
-
-import org.apache.tuscany.sca.assembly.Binding;
-import org.apache.tuscany.sca.binding.jms.impl.JMSBinding;
-import org.apache.tuscany.sca.binding.jms.impl.JMSBindingConstants;
-import org.apache.tuscany.sca.binding.jms.wireformat.jmsbytes.WireFormatJMSBytes;
-import org.apache.tuscany.sca.core.ExtensionPointRegistry;
-import org.apache.tuscany.sca.interfacedef.InterfaceContract;
-import org.apache.tuscany.sca.invocation.Interceptor;
-import org.apache.tuscany.sca.invocation.Phase;
-import org.apache.tuscany.sca.provider.WireFormatProvider;
-import org.apache.tuscany.sca.runtime.RuntimeComponent;
-import org.apache.tuscany.sca.runtime.RuntimeComponentService;
-
-/**
- * @version $Rev$ $Date$
- */
-public class WireFormatJMSBytesServiceProvider implements WireFormatProvider {
- private ExtensionPointRegistry registry;
- private RuntimeComponent component;
- private RuntimeComponentService service;
- private JMSBinding binding;
- private InterfaceContract interfaceContract;
-
- public WireFormatJMSBytesServiceProvider(ExtensionPointRegistry registry,
- RuntimeComponent component,
- RuntimeComponentService service,
- Binding binding) {
- super();
- this.registry = registry;
- this.component = component;
- this.service = service;
- this.binding = (JMSBinding)binding;
-
- // configure the service based on this wire format
-
- // currently maintaining the message processor structure which
- // contains the details of jms message processing however override
- // any message processors specified in the SCDL in this case
- if (this.binding.getRequestWireFormat() instanceof WireFormatJMSBytes){
- this.binding.setRequestMessageProcessorName(JMSBindingConstants.BYTES_MP_CLASSNAME);
- }
- if (this.binding.getResponseWireFormat() instanceof WireFormatJMSBytes){
- this.binding.setResponseMessageProcessorName(JMSBindingConstants.BYTES_MP_CLASSNAME);
- }
-
- // just point to the reference interface contract so no
- // databinding transformation takes place
- interfaceContract = service.getService().getInterfaceContract();
- }
-
- public InterfaceContract configureWireFormatInterfaceContract(InterfaceContract interfaceContract){
-
- if (this.interfaceContract != null ) {
- if (this.binding.getRequestWireFormat() instanceof WireFormatJMSBytes){
- // set the request data transformation
- interfaceContract.getInterface().resetInterfaceInputTypes(this.interfaceContract.getInterface());
- }
- if (this.binding.getResponseWireFormat() instanceof WireFormatJMSBytes){
- // set the response data transformation
- interfaceContract.getInterface().resetInterfaceOutputTypes(this.interfaceContract.getInterface());
- }
- }
-
- return interfaceContract;
- }
-
- /**
- */
- public Interceptor createInterceptor() {
- return new WireFormatJMSBytesServiceInterceptor((JMSBinding)binding,
- null,
- service.getRuntimeWire(binding));
- }
-
- /**
- */
- public String getPhase() {
- return Phase.SERVICE_BINDING_WIREFORMAT;
- }
-
-}
diff --git a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmsbytesxml/runtime/WireFormatJMSBytesXMLProviderFactory.java b/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmsbytesxml/runtime/WireFormatJMSBytesXMLProviderFactory.java
deleted file mode 100644
index 782f226fe6..0000000000
--- a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmsbytesxml/runtime/WireFormatJMSBytesXMLProviderFactory.java
+++ /dev/null
@@ -1,70 +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.binding.jms.wireformat.jmsbytesxml.runtime;
-
-import org.apache.tuscany.sca.assembly.Binding;
-import org.apache.tuscany.sca.binding.jms.impl.JMSBinding;
-import org.apache.tuscany.sca.binding.jms.provider.JMSResourceFactory;
-import org.apache.tuscany.sca.binding.jms.provider.JMSResourceFactoryExtensionPoint;
-import org.apache.tuscany.sca.binding.jms.wireformat.jmsbytes.WireFormatJMSBytes;
-import org.apache.tuscany.sca.core.ExtensionPointRegistry;
-import org.apache.tuscany.sca.provider.WireFormatProvider;
-import org.apache.tuscany.sca.provider.WireFormatProviderFactory;
-import org.apache.tuscany.sca.runtime.RuntimeComponent;
-import org.apache.tuscany.sca.runtime.RuntimeComponentReference;
-import org.apache.tuscany.sca.runtime.RuntimeComponentService;
-
-
-public class WireFormatJMSBytesXMLProviderFactory implements WireFormatProviderFactory<WireFormatJMSBytes> {
- private ExtensionPointRegistry registry;
- private JMSResourceFactoryExtensionPoint jmsRFEP;
-
- public WireFormatJMSBytesXMLProviderFactory(ExtensionPointRegistry registry) {
- super();
- this.registry = registry;
- jmsRFEP = (JMSResourceFactoryExtensionPoint)registry.getExtensionPoint(JMSResourceFactoryExtensionPoint.class);
- }
-
- /**
- */
- public WireFormatProvider createReferenceWireFormatProvider(RuntimeComponent component,
- RuntimeComponentReference reference,
- Binding binding) {
- return new WireFormatJMSBytesXMLReferenceProvider(registry, component, reference, binding);
- }
-
- /**
- */
- public WireFormatProvider createServiceWireFormatProvider(RuntimeComponent component,
- RuntimeComponentService service,
- Binding binding) {
- JMSResourceFactory jmsRF = jmsRFEP.createJMSResourceFactory((JMSBinding)binding);
- return new WireFormatJMSBytesXMLServiceProvider(registry, component, service, binding, jmsRF);
- }
-
- /**
- * @see org.apache.tuscany.sca.provider.ProviderFactory#getModelType()
- */
- public Class getModelType() {
- // TODO Auto-generated method stub
- return null;
- }
-
-}
diff --git a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmsbytesxml/runtime/WireFormatJMSBytesXMLReferenceInterceptor.java b/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmsbytesxml/runtime/WireFormatJMSBytesXMLReferenceInterceptor.java
deleted file mode 100644
index cbcd848c85..0000000000
--- a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmsbytesxml/runtime/WireFormatJMSBytesXMLReferenceInterceptor.java
+++ /dev/null
@@ -1,122 +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.binding.jms.wireformat.jmsbytesxml.runtime;
-
-import javax.jms.JMSException;
-import javax.jms.Session;
-import javax.xml.namespace.QName;
-
-import org.apache.axiom.om.OMElement;
-import org.apache.tuscany.sca.binding.jms.context.JMSBindingContext;
-import org.apache.tuscany.sca.binding.jms.impl.JMSBinding;
-import org.apache.tuscany.sca.binding.jms.impl.JMSBindingConstants;
-import org.apache.tuscany.sca.binding.jms.impl.JMSBindingException;
-import org.apache.tuscany.sca.binding.jms.provider.JMSMessageProcessor;
-import org.apache.tuscany.sca.binding.jms.provider.JMSMessageProcessorUtil;
-import org.apache.tuscany.sca.binding.jms.provider.JMSResourceFactory;
-import org.apache.tuscany.sca.binding.jms.wireformat.jmsbytesxml.WireFormatJMSBytesXML;
-import org.apache.tuscany.sca.interfacedef.util.FaultException;
-import org.apache.tuscany.sca.invocation.Interceptor;
-import org.apache.tuscany.sca.invocation.Invoker;
-import org.apache.tuscany.sca.invocation.Message;
-import org.apache.tuscany.sca.runtime.RuntimeWire;
-
-
-public class WireFormatJMSBytesXMLReferenceInterceptor implements Interceptor {
-
- private Invoker next;
- private RuntimeWire runtimeWire;
- private JMSResourceFactory jmsResourceFactory;
- private JMSBinding jmsBinding;
- private JMSMessageProcessor requestMessageProcessor;
- private JMSMessageProcessor responseMessageProcessor;
-
- public WireFormatJMSBytesXMLReferenceInterceptor(JMSBinding jmsBinding, JMSResourceFactory jmsResourceFactory, RuntimeWire runtimeWire) {
- super();
- this.jmsBinding = jmsBinding;
- this.runtimeWire = runtimeWire;
- this.jmsResourceFactory = jmsResourceFactory;
- this.requestMessageProcessor = JMSMessageProcessorUtil.getRequestMessageProcessor(jmsBinding);
- this.responseMessageProcessor = JMSMessageProcessorUtil.getResponseMessageProcessor(jmsBinding);
- }
-
- public Message invoke(Message msg) {
- if (jmsBinding.getRequestWireFormat() instanceof WireFormatJMSBytesXML){
- msg = invokeRequest(msg);
- }
-
- msg = getNext().invoke(msg);
-
- if (jmsBinding.getResponseWireFormat() instanceof WireFormatJMSBytesXML){
- msg = invokeResponse(msg);
- }
-
- return msg;
- }
-
- public Message invokeRequest(Message msg) {
- try {
- // get the jms context
- JMSBindingContext context = msg.getBindingContext();
- Session session = context.getJmsSession();
-
- javax.jms.Message requestMsg = requestMessageProcessor.insertPayloadIntoJMSMessage(session, msg.getBody());
-
- msg.setBody(requestMsg);
-
- requestMsg.setJMSReplyTo(context.getReplyToDestination());
-
- return msg;
- } catch (JMSException e) {
- throw new JMSBindingException(e);
- }
- }
-
- public Message invokeResponse(Message msg) {
- if (msg.getBody() != null){
- javax.jms.Message jmsMsg = (javax.jms.Message)msg.getBody();
- Object response = responseMessageProcessor.extractPayloadFromJMSMessage(jmsMsg);
- if (response != null ){
- msg.setBody(response);
- try {
- if (jmsMsg.getBooleanProperty(JMSBindingConstants.FAULT_PROPERTY)) {
- FaultException e = new FaultException("remote exception", response);
- OMElement om = (OMElement) response;
- e.setFaultName(new QName(om.getNamespace().getNamespaceURI(), om.getLocalName()));
- msg.setFaultBody(e);
- }
- } catch (JMSException e) {
- throw new JMSBindingException(e);
- }
- } else {
- msg.setBody(null);
- }
- }
-
- return msg;
- }
-
- public Invoker getNext() {
- return next;
- }
-
- public void setNext(Invoker next) {
- this.next = next;
- }
-}
diff --git a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmsbytesxml/runtime/WireFormatJMSBytesXMLReferenceProvider.java b/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmsbytesxml/runtime/WireFormatJMSBytesXMLReferenceProvider.java
deleted file mode 100644
index bd04d4b24f..0000000000
--- a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmsbytesxml/runtime/WireFormatJMSBytesXMLReferenceProvider.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.binding.jms.wireformat.jmsbytesxml.runtime;
-
-import org.apache.axiom.om.OMElement;
-import org.apache.tuscany.sca.assembly.Binding;
-import org.apache.tuscany.sca.binding.jms.impl.JMSBinding;
-import org.apache.tuscany.sca.binding.jms.impl.JMSBindingConstants;
-import org.apache.tuscany.sca.binding.jms.wireformat.jmsbytesxml.WireFormatJMSBytesXML;
-import org.apache.tuscany.sca.binding.ws.WebServiceBinding;
-import org.apache.tuscany.sca.binding.ws.WebServiceBindingFactory;
-import org.apache.tuscany.sca.binding.ws.wsdlgen.BindingWSDLGenerator;
-import org.apache.tuscany.sca.core.ExtensionPointRegistry;
-import org.apache.tuscany.sca.interfacedef.InterfaceContract;
-import org.apache.tuscany.sca.invocation.Interceptor;
-import org.apache.tuscany.sca.invocation.Phase;
-import org.apache.tuscany.sca.provider.WireFormatProvider;
-import org.apache.tuscany.sca.runtime.RuntimeComponent;
-import org.apache.tuscany.sca.runtime.RuntimeComponentReference;
-
-public class WireFormatJMSBytesXMLReferenceProvider implements WireFormatProvider {
- private ExtensionPointRegistry registry;
- private RuntimeComponent component;
- private RuntimeComponentReference reference;
- private JMSBinding binding;
- private InterfaceContract interfaceContract;
-
- public WireFormatJMSBytesXMLReferenceProvider(ExtensionPointRegistry registry,
- RuntimeComponent component,
- RuntimeComponentReference reference,
- Binding binding) {
- super();
- this.registry = registry;
- this.component = component;
- this.reference = reference;
- this.binding = (JMSBinding)binding;
-
- // configure the reference based on this wire format
-
- // currently maintaining the message processor structure which
- // contains the details of jms message processing however overried
- // any message processors specied in the SCDL in this case
- if (this.binding.getRequestWireFormat() instanceof WireFormatJMSBytesXML){
- this.binding.setRequestMessageProcessorName(JMSBindingConstants.XML_BYTES_MP_CLASSNAME);
- }
- if (this.binding.getResponseWireFormat() instanceof WireFormatJMSBytesXML){
- this.binding.setResponseMessageProcessorName(JMSBindingConstants.XML_BYTES_MP_CLASSNAME);
- }
-
- // create a local interface contract that is configured specifically to
- // deal with the data format that this wire format is expecting to sent to
- // and receive from the databinding interceptor. The request/response parts of
- // this interface contract will be copied into the binding interface contract
- // as required
- WebServiceBindingFactory wsFactory = registry.getExtensionPoint(WebServiceBindingFactory.class);
- WebServiceBinding wsBinding = wsFactory.createWebServiceBinding();
- BindingWSDLGenerator.generateWSDL(component, reference, wsBinding, registry, null);
- interfaceContract = wsBinding.getBindingInterfaceContract();
- interfaceContract.getInterface().resetDataBinding(OMElement.class.getName());
- }
-
- public InterfaceContract configureWireFormatInterfaceContract(InterfaceContract interfaceContract){
-
- if (this.interfaceContract != null ) {
- if (this.binding.getRequestWireFormat() instanceof WireFormatJMSBytesXML){
- // set the request data transformation
- interfaceContract.getInterface().resetInterfaceInputTypes(this.interfaceContract.getInterface());
- }
- if (this.binding.getResponseWireFormat() instanceof WireFormatJMSBytesXML){
- // set the response data transformation
- interfaceContract.getInterface().resetInterfaceOutputTypes(this.interfaceContract.getInterface());
- }
- }
-
- return interfaceContract;
- }
-
- public Interceptor createInterceptor() {
- return new WireFormatJMSBytesXMLReferenceInterceptor(binding,
- null,
- reference.getRuntimeWire(binding));
- }
-
- public String getPhase() {
- return Phase.REFERENCE_BINDING_WIREFORMAT;
- }
-
-}
diff --git a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmsbytesxml/runtime/WireFormatJMSBytesXMLServiceInterceptor.java b/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmsbytesxml/runtime/WireFormatJMSBytesXMLServiceInterceptor.java
deleted file mode 100644
index e3d22fa814..0000000000
--- a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmsbytesxml/runtime/WireFormatJMSBytesXMLServiceInterceptor.java
+++ /dev/null
@@ -1,109 +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.binding.jms.wireformat.jmsbytesxml.runtime;
-
-import javax.jms.Session;
-
-import org.apache.tuscany.sca.binding.jms.context.JMSBindingContext;
-import org.apache.tuscany.sca.binding.jms.impl.JMSBinding;
-import org.apache.tuscany.sca.binding.jms.provider.JMSMessageProcessor;
-import org.apache.tuscany.sca.binding.jms.provider.JMSMessageProcessorUtil;
-import org.apache.tuscany.sca.binding.jms.provider.JMSResourceFactory;
-import org.apache.tuscany.sca.binding.jms.wireformat.jmsbytes.WireFormatJMSBytes;
-import org.apache.tuscany.sca.binding.jms.wireformat.jmsbytesxml.WireFormatJMSBytesXML;
-import org.apache.tuscany.sca.interfacedef.Operation;
-import org.apache.tuscany.sca.invocation.Interceptor;
-import org.apache.tuscany.sca.invocation.Invoker;
-import org.apache.tuscany.sca.invocation.Message;
-import org.apache.tuscany.sca.runtime.RuntimeWire;
-
-public class WireFormatJMSBytesXMLServiceInterceptor implements Interceptor {
- private Invoker next;
- private RuntimeWire runtimeWire;
- private JMSResourceFactory jmsResourceFactory;
- private JMSBinding jmsBinding;
- private JMSMessageProcessor requestMessageProcessor;
- private JMSMessageProcessor responseMessageProcessor;
-
- public WireFormatJMSBytesXMLServiceInterceptor(JMSBinding jmsBinding, JMSResourceFactory jmsResourceFactory, RuntimeWire runtimeWire) {
- super();
- this.jmsBinding = jmsBinding;
- this.runtimeWire = runtimeWire;
- this.jmsResourceFactory = jmsResourceFactory;
- this.requestMessageProcessor = JMSMessageProcessorUtil.getRequestMessageProcessor(jmsBinding);
- this.responseMessageProcessor = JMSMessageProcessorUtil.getResponseMessageProcessor(jmsBinding);
- }
-
- public Message invoke(Message msg) {
- if (jmsBinding.getRequestWireFormat() instanceof WireFormatJMSBytesXML){
- msg = invokeRequest(msg);
- }
-
- msg = getNext().invoke(msg);
-
- //if it's oneway return back
- Operation operation = msg.getOperation();
- if (operation != null && operation.isNonBlocking()) {
- return msg;
- }
-
- if (jmsBinding.getResponseWireFormat() instanceof WireFormatJMSBytesXML){
- msg = invokeResponse(msg);
- }
-
- return msg;
- }
-
- public Message invokeRequest(Message msg) {
- // get the jms context
- JMSBindingContext context = msg.getBindingContext();
- javax.jms.Message jmsMsg = context.getJmsMsg();
-
- Object requestPayload = requestMessageProcessor.extractPayloadFromJMSMessage(jmsMsg);
- msg.setBody(new Object[]{requestPayload});
-
- return msg;
- }
-
- public Message invokeResponse(Message msg) {
- // get the jms context
- JMSBindingContext context = msg.getBindingContext();
- Session session = context.getJmsResponseSession();
-
- javax.jms.Message responseJMSMsg;
- if (msg.isFault()) {
- responseJMSMsg = responseMessageProcessor.createFaultMessage(session, (Throwable)msg.getBody());
- } else {
- Object response = msg.getBody();
- responseJMSMsg = responseMessageProcessor.insertPayloadIntoJMSMessage(session, response);
- }
-
- msg.setBody(responseJMSMsg);
-
- return msg;
- }
-
- public Invoker getNext() {
- return next;
- }
-
- public void setNext(Invoker next) {
- this.next = next;
- }
-}
diff --git a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmsbytesxml/runtime/WireFormatJMSBytesXMLServiceProvider.java b/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmsbytesxml/runtime/WireFormatJMSBytesXMLServiceProvider.java
deleted file mode 100644
index c2d81600e1..0000000000
--- a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmsbytesxml/runtime/WireFormatJMSBytesXMLServiceProvider.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.binding.jms.wireformat.jmsbytesxml.runtime;
-
-import org.apache.axiom.om.OMElement;
-import org.apache.tuscany.sca.assembly.Binding;
-import org.apache.tuscany.sca.binding.jms.impl.JMSBinding;
-import org.apache.tuscany.sca.binding.jms.impl.JMSBindingConstants;
-import org.apache.tuscany.sca.binding.jms.provider.JMSResourceFactory;
-import org.apache.tuscany.sca.binding.jms.wireformat.jmsbytes.WireFormatJMSBytes;
-import org.apache.tuscany.sca.binding.jms.wireformat.jmsbytesxml.WireFormatJMSBytesXML;
-import org.apache.tuscany.sca.binding.ws.WebServiceBinding;
-import org.apache.tuscany.sca.binding.ws.WebServiceBindingFactory;
-import org.apache.tuscany.sca.binding.ws.wsdlgen.BindingWSDLGenerator;
-import org.apache.tuscany.sca.core.ExtensionPointRegistry;
-import org.apache.tuscany.sca.interfacedef.InterfaceContract;
-import org.apache.tuscany.sca.invocation.Interceptor;
-import org.apache.tuscany.sca.invocation.Phase;
-import org.apache.tuscany.sca.provider.WireFormatProvider;
-import org.apache.tuscany.sca.runtime.RuntimeComponent;
-import org.apache.tuscany.sca.runtime.RuntimeComponentService;
-
-public class WireFormatJMSBytesXMLServiceProvider implements WireFormatProvider {
- private ExtensionPointRegistry registry;
- private RuntimeComponent component;
- private RuntimeComponentService service;
- private JMSBinding binding;
- private JMSResourceFactory jmsResourceFactory;
- private InterfaceContract interfaceContract;
-
- public WireFormatJMSBytesXMLServiceProvider(ExtensionPointRegistry registry,
- RuntimeComponent component,
- RuntimeComponentService service,
- Binding binding,
- JMSResourceFactory jmsResourceFactory) {
- super();
- this.registry = registry;
- this.component = component;
- this.service = service;
- this.binding = (JMSBinding)binding;
- this.jmsResourceFactory = jmsResourceFactory;
-
- // configure the service based on this wire format
-
- // currently maintaining the message processor structure which
- // contains the details of jms message processing however override
- // any message processors specified in the SCDL in this case
- if (this.binding.getRequestWireFormat() instanceof WireFormatJMSBytesXML){
- this.binding.setRequestMessageProcessorName(JMSBindingConstants.XML_BYTES_MP_CLASSNAME);
- }
- if (this.binding.getResponseWireFormat() instanceof WireFormatJMSBytesXML){
- this.binding.setResponseMessageProcessorName(JMSBindingConstants.XML_BYTES_MP_CLASSNAME);
- }
-
- // create a local interface contract that is configured specifically to
- // deal with the data format that this wire format is expecting to sent to
- // and receive from the databinding interceptor. The request/response parts of
- // this interface contract will be copied into the binding interface contract
- // as required
- WebServiceBindingFactory wsFactory = registry.getExtensionPoint(WebServiceBindingFactory.class);
- WebServiceBinding wsBinding = wsFactory.createWebServiceBinding();
- BindingWSDLGenerator.generateWSDL(component, service, wsBinding, registry, null);
- interfaceContract = wsBinding.getBindingInterfaceContract();
- interfaceContract.getInterface().resetDataBinding(OMElement.class.getName());
- }
-
- public InterfaceContract configureWireFormatInterfaceContract(InterfaceContract interfaceContract){
-
- if (this.interfaceContract != null ) {
- if (this.binding.getRequestWireFormat() instanceof WireFormatJMSBytesXML){
- // set the request data transformation
- interfaceContract.getInterface().resetInterfaceInputTypes(this.interfaceContract.getInterface());
- }
- if (this.binding.getResponseWireFormat() instanceof WireFormatJMSBytesXML){
- // set the response data transformation
- interfaceContract.getInterface().resetInterfaceOutputTypes(this.interfaceContract.getInterface());
- }
- }
-
- return interfaceContract;
- }
-
- /**
- */
- public Interceptor createInterceptor() {
- return new WireFormatJMSBytesXMLServiceInterceptor((JMSBinding)binding,
- jmsResourceFactory,
- service.getRuntimeWire(binding));
- }
-
- /**
- */
- public String getPhase() {
- return Phase.SERVICE_BINDING_WIREFORMAT;
- }
-
-}
diff --git a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmsdefault/runtime/WireFormatJMSDefaultProviderFactory.java b/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmsdefault/runtime/WireFormatJMSDefaultProviderFactory.java
deleted file mode 100644
index cde7dfd6aa..0000000000
--- a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmsdefault/runtime/WireFormatJMSDefaultProviderFactory.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.binding.jms.wireformat.jmsdefault.runtime;
-
-import org.apache.tuscany.sca.assembly.Binding;
-import org.apache.tuscany.sca.binding.jms.impl.JMSBinding;
-import org.apache.tuscany.sca.binding.jms.provider.JMSResourceFactory;
-import org.apache.tuscany.sca.binding.jms.provider.JMSResourceFactoryExtensionPoint;
-import org.apache.tuscany.sca.binding.jms.wireformat.jmsdefault.WireFormatJMSDefault;
-import org.apache.tuscany.sca.core.ExtensionPointRegistry;
-import org.apache.tuscany.sca.provider.WireFormatProvider;
-import org.apache.tuscany.sca.provider.WireFormatProviderFactory;
-import org.apache.tuscany.sca.runtime.RuntimeComponent;
-import org.apache.tuscany.sca.runtime.RuntimeComponentReference;
-import org.apache.tuscany.sca.runtime.RuntimeComponentService;
-
-/**
- * @version $Rev$ $Date$
- */
-public class WireFormatJMSDefaultProviderFactory implements WireFormatProviderFactory<WireFormatJMSDefault> {
- private ExtensionPointRegistry registry;
- private JMSResourceFactoryExtensionPoint jmsRFEP;
-
- public WireFormatJMSDefaultProviderFactory(ExtensionPointRegistry registry) {
- super();
- this.registry = registry;
- jmsRFEP = (JMSResourceFactoryExtensionPoint) registry.getExtensionPoint(JMSResourceFactoryExtensionPoint.class);
- }
-
- /**
- */
- public WireFormatProvider createReferenceWireFormatProvider(RuntimeComponent component, RuntimeComponentReference reference,
- Binding binding) {
- return new WireFormatJMSDefaultReferenceProvider(registry, component, reference, binding);
- }
-
- /**
- */
- public WireFormatProvider createServiceWireFormatProvider(RuntimeComponent component, RuntimeComponentService service, Binding binding) {
- JMSResourceFactory jmsRF = jmsRFEP.createJMSResourceFactory((JMSBinding) binding);
- return new WireFormatJMSDefaultServiceProvider(registry, component, service, binding, jmsRF);
- }
-
- /**
- * @see org.apache.tuscany.sca.provider.ProviderFactory#getModelType()
- */
- public Class getModelType() {
- // TODO Auto-generated method stub
- return null;
- }
-
-}
diff --git a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmsdefault/runtime/WireFormatJMSDefaultReferenceInterceptor.java b/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmsdefault/runtime/WireFormatJMSDefaultReferenceInterceptor.java
deleted file mode 100644
index f132940b22..0000000000
--- a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmsdefault/runtime/WireFormatJMSDefaultReferenceInterceptor.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.binding.jms.wireformat.jmsdefault.runtime;
-
-import java.util.HashMap;
-import java.util.List;
-import javax.jms.BytesMessage;
-import javax.jms.JMSException;
-import javax.jms.Session;
-import javax.xml.namespace.QName;
-
-import org.apache.axiom.om.OMElement;
-import org.apache.tuscany.sca.binding.jms.context.JMSBindingContext;
-import org.apache.tuscany.sca.binding.jms.impl.JMSBinding;
-import org.apache.tuscany.sca.binding.jms.impl.JMSBindingConstants;
-import org.apache.tuscany.sca.binding.jms.impl.JMSBindingException;
-import org.apache.tuscany.sca.binding.jms.provider.JMSMessageProcessor;
-import org.apache.tuscany.sca.binding.jms.provider.JMSMessageProcessorUtil;
-import org.apache.tuscany.sca.binding.jms.provider.JMSResourceFactory;
-import org.apache.tuscany.sca.binding.jms.provider.DefaultMessageProcessor;
-import org.apache.tuscany.sca.binding.jms.wireformat.jmsdefault.WireFormatJMSDefault;
-import org.apache.tuscany.sca.interfacedef.DataType;
-import org.apache.tuscany.sca.interfacedef.Operation;
-import org.apache.tuscany.sca.interfacedef.util.FaultException;
-import org.apache.tuscany.sca.invocation.Interceptor;
-import org.apache.tuscany.sca.invocation.Invoker;
-import org.apache.tuscany.sca.invocation.Message;
-import org.apache.tuscany.sca.runtime.RuntimeWire;
-
-/**
- *
- * @version $Rev$ $Date$
- */
-public class WireFormatJMSDefaultReferenceInterceptor implements Interceptor {
-
- private Invoker next;
- private RuntimeWire runtimeWire;
- private JMSResourceFactory jmsResourceFactory;
- private JMSBinding jmsBinding;
- private DefaultMessageProcessor requestMessageProcessor;
- private DefaultMessageProcessor responseMessageProcessor;
- private HashMap<String, Boolean> inputWrapperMap;
- private HashMap<String, OMElement> outputWrapperMap;
-
- public WireFormatJMSDefaultReferenceInterceptor(JMSBinding jmsBinding, JMSResourceFactory jmsResourceFactory, RuntimeWire runtimeWire, HashMap<String, Boolean> inputWrapperMap,
- HashMap<String, OMElement> outputWrapperMap) {
- super();
- this.jmsBinding = jmsBinding;
- this.runtimeWire = runtimeWire;
- this.jmsResourceFactory = jmsResourceFactory;
- // Note the default processor doesn't follow the normal processor pattern
- // as it has to handle both text and bytes messages
- this.requestMessageProcessor = new DefaultMessageProcessor(jmsBinding);
- this.responseMessageProcessor = new DefaultMessageProcessor(jmsBinding);
- this.inputWrapperMap = inputWrapperMap;
- this.outputWrapperMap = outputWrapperMap;
- }
-
- public Message invoke(Message msg) {
-
- if (jmsBinding.getRequestWireFormat() instanceof WireFormatJMSDefault) {
- msg = invokeRequest(msg);
- }
-
- msg = getNext().invoke(msg);
-
- if (jmsBinding.getResponseWireFormat() instanceof WireFormatJMSDefault) {
- msg = invokeResponse(msg);
- }
-
- return msg;
- }
-
- public Message invokeRequest(Message msg) {
- try {
- // get the jms context
- JMSBindingContext context = msg.getBindingContext();
- Session session = context.getJmsSession();
-
- javax.jms.Message requestMsg;
-
- if (((WireFormatJMSDefault) jmsBinding.getRequestWireFormat()).isUseBytesMessage()) {
- requestMsg = requestMessageProcessor.insertPayloadIntoJMSBytesMessage(session, msg.getBody(), this.inputWrapperMap.get(msg.getOperation().getName()));
- } else {
- requestMsg = requestMessageProcessor.insertPayloadIntoJMSTextMessage(session, msg.getBody(), this.inputWrapperMap.get(msg.getOperation().getName()));
- }
-
- msg.setBody(requestMsg);
-
- requestMsg.setJMSReplyTo(context.getReplyToDestination());
-
- return msg;
- } catch (JMSException e) {
- throw new JMSBindingException(e);
- }
- }
-
- public Message invokeResponse(Message msg) {
- if (msg.getBody() != null) {
- javax.jms.Message jmsMsg = (javax.jms.Message) msg.getBody();
-
- Operation op = msg.getOperation();
- DataType outputDataType = op.getOutputType();
-
- Class<?> outputType = null;
- if (outputDataType != null) {
- outputType = outputDataType.getPhysical();
- }
-
- if (outputType != null && javax.jms.Message.class.isAssignableFrom(outputType)) {
- msg.setBody(jmsMsg);
- } else {
-
- OMElement wrapper = null;
- // if we have a fault no need to wrap the response
- try {
- if (!jmsMsg.getBooleanProperty(JMSBindingConstants.FAULT_PROPERTY)) {
- // If there is only one arg we must add a wrapper if the operation is wrapper style
- wrapper = this.outputWrapperMap.get(msg.getOperation().getName());
- }
- } catch (JMSException e) {
- throw new JMSBindingException(e);
- }
-
- Object response;
- if (jmsMsg instanceof BytesMessage) {
- response = responseMessageProcessor.extractPayloadFromJMSBytesMessage(jmsMsg, wrapper);
- } else {
- response = responseMessageProcessor.extractPayloadFromJMSTextMessage(jmsMsg, wrapper);
- }
-
- if (response != null) {
- msg.setBody(response);
- try {
- if (jmsMsg.getBooleanProperty(JMSBindingConstants.FAULT_PROPERTY)) {
- FaultException e = new FaultException("remote exception", response);
- OMElement om = (OMElement) response;
- e.setFaultName(new QName(om.getNamespace().getNamespaceURI(), om.getLocalName()));
- msg.setFaultBody(e);
- }
- } catch (JMSException e) {
- throw new JMSBindingException(e);
- }
- } else {
- msg.setBody(null);
- }
- }
- }
-
- return msg;
- }
-
- public Invoker getNext() {
- return next;
- }
-
- public void setNext(Invoker next) {
- this.next = next;
- }
-}
diff --git a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmsdefault/runtime/WireFormatJMSDefaultReferenceProvider.java b/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmsdefault/runtime/WireFormatJMSDefaultReferenceProvider.java
deleted file mode 100644
index f15d7317f8..0000000000
--- a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmsdefault/runtime/WireFormatJMSDefaultReferenceProvider.java
+++ /dev/null
@@ -1,199 +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.binding.jms.wireformat.jmsdefault.runtime;
-
-import java.util.HashMap;
-import java.util.List;
-
-import org.apache.axiom.om.OMAbstractFactory;
-import org.apache.axiom.om.OMElement;
-import org.apache.axiom.om.OMFactory;
-import org.apache.axiom.om.OMNamespace;
-import org.apache.tuscany.sca.assembly.Binding;
-import org.apache.tuscany.sca.binding.jms.impl.JMSBinding;
-import org.apache.tuscany.sca.binding.jms.impl.JMSBindingConstants;
-import org.apache.tuscany.sca.binding.jms.wireformat.jmsdefault.WireFormatJMSDefault;
-import org.apache.tuscany.sca.binding.ws.WebServiceBinding;
-import org.apache.tuscany.sca.binding.ws.WebServiceBindingFactory;
-import org.apache.tuscany.sca.binding.ws.wsdlgen.BindingWSDLGenerator;
-import org.apache.tuscany.sca.core.ExtensionPointRegistry;
-import org.apache.tuscany.sca.interfacedef.DataType;
-import org.apache.tuscany.sca.interfacedef.InterfaceContract;
-import org.apache.tuscany.sca.interfacedef.Operation;
-import org.apache.tuscany.sca.interfacedef.util.ElementInfo;
-import org.apache.tuscany.sca.invocation.Interceptor;
-import org.apache.tuscany.sca.invocation.Phase;
-import org.apache.tuscany.sca.provider.WireFormatProvider;
-import org.apache.tuscany.sca.runtime.RuntimeComponent;
-import org.apache.tuscany.sca.runtime.RuntimeComponentReference;
-
-/**
- * @version $Rev$ $Date$
- */
-public class WireFormatJMSDefaultReferenceProvider implements WireFormatProvider {
- private ExtensionPointRegistry registry;
- private RuntimeComponent component;
- private RuntimeComponentReference reference;
- private JMSBinding binding;
- private InterfaceContract interfaceContract;
- private HashMap<String, Boolean> inputWrapperMap;
- private HashMap<String, OMElement> outputWrapperMap;
-
- public WireFormatJMSDefaultReferenceProvider(ExtensionPointRegistry registry, RuntimeComponent component, RuntimeComponentReference reference, Binding binding) {
- super();
- this.registry = registry;
- this.component = component;
- this.reference = reference;
- this.binding = (JMSBinding) binding;
-
- this.inputWrapperMap = new HashMap<String, Boolean>();
- this.outputWrapperMap = new HashMap<String, OMElement>();
-
- // configure the reference based on this wire format
-
- // currently maintaining the message processor structure which
- // contains the details of jms message processing so set the message
- // type here if not set explicitly in SCDL
- if (this.binding.getRequestWireFormat() instanceof WireFormatJMSDefault){
- this.binding.setRequestMessageProcessorName(JMSBindingConstants.DEFAULT_MP_CLASSNAME);
- }
- if (this.binding.getResponseWireFormat() instanceof WireFormatJMSDefault){
- this.binding.setResponseMessageProcessorName(JMSBindingConstants.DEFAULT_MP_CLASSNAME);
- }
-
- // TODO - can be null if it's a $self$ reference. Need to decide if
- // that's valid
- if (reference.getReference() == null){
- interfaceContract = reference.getInterfaceContract();
- return;
- }
-
- List<Operation> opList = reference.getReference().getInterfaceContract().getInterface().getOperations();
-
- // Go through each operation and add wrapper info
- OMFactory factory = OMAbstractFactory.getOMFactory();
-
- // set the binding interface contract to represent the WSDL for the
- // xml messages that will be sent
- // I think we have to check for asIs because the Java2WSDL will blow up when using javax.jms.Message
- if (reference.getInterfaceContract() != null && !isAsIs()) {
- WebServiceBindingFactory wsFactory = registry.getExtensionPoint(WebServiceBindingFactory.class);
- WebServiceBinding wsBinding = wsFactory.createWebServiceBinding();
- BindingWSDLGenerator.generateWSDL(component, reference, wsBinding, registry, null);
- interfaceContract = wsBinding.getBindingInterfaceContract();
- interfaceContract.getInterface().resetDataBinding(OMElement.class.getName());
-
- List<Operation> wsdlOpList = interfaceContract.getInterface().getOperations();
-
- for (Operation op : opList) {
-
- String name = op.getName();
- Operation matchingWsdlOp = null;
-
- // find the matching wsdlop
- for (Operation wsdlOp : wsdlOpList) {
- if (name.equals(wsdlOp.getName())) {
- matchingWsdlOp = wsdlOp;
-
- break;
- }
- }
-
- // only add operations that need to be wrapped/unwrapped
- // we need to look at the wsdl interface to determine if the op is wrapped or not
-
- // TODO - not sure we really support viewing the input/output as separately wrapped
- // like the separate code paths imply. Not sure how many @OneWay tests we have, this might
- // not be an issue.
-
- if (matchingWsdlOp.isInputWrapperStyle()) {
- if (op.getInputType().getLogical().size() == 1) {
- this.inputWrapperMap.put(name, true);
- } else {
- this.inputWrapperMap.put(name, false);
- }
- } else {
- this.inputWrapperMap.put(name, false);
- }
-
- if (matchingWsdlOp.isOutputWrapperStyle()) {
- // we only need to know what the wrapper is on the deserialization
- // might need to change this when there input/output wrapper style is different
- ElementInfo ei = op.getOutputWrapper().getWrapperElement();
- String namespace = ei.getQName().getNamespaceURI();
- String opName = ei.getQName().getLocalPart();
- OMNamespace ns = factory.createOMNamespace(namespace, "ns2");
- OMElement wrapper = factory.createOMElement(opName, ns);
-
- this.outputWrapperMap.put(name, wrapper);
- }
- }
- } else {
- interfaceContract = reference.getReference().getInterfaceContract();
- }
-
- }
-
- protected boolean isAsIs() {
- InterfaceContract ic = reference.getInterfaceContract();
- if (ic.getInterface().getOperations().size() != 1) {
- return false;
- }
-
- List<DataType> inputDataTypes = ic.getInterface().getOperations().get(0).getInputType().getLogical();
-
- if (inputDataTypes.size() != 1) {
- return false;
- }
-
- Class<?> inputType = inputDataTypes.get(0).getPhysical();
-
- if (javax.jms.Message.class.isAssignableFrom(inputType)) {
- return true;
- }
- return false;
- }
-
- public InterfaceContract configureWireFormatInterfaceContract(InterfaceContract interfaceContract){
-
- if (this.interfaceContract != null &&
- !isAsIs()) {
- if (this.binding.getRequestWireFormat() instanceof WireFormatJMSDefault){
- // set the request data transformation
- interfaceContract.getInterface().resetInterfaceInputTypes(this.interfaceContract.getInterface());
- }
- if (this.binding.getResponseWireFormat() instanceof WireFormatJMSDefault){
- // set the response data transformation
- interfaceContract.getInterface().resetInterfaceOutputTypes(this.interfaceContract.getInterface());
- }
- }
-
- return interfaceContract;
- }
-
- public Interceptor createInterceptor() {
- return new WireFormatJMSDefaultReferenceInterceptor((JMSBinding) binding, null, reference.getRuntimeWire(binding), inputWrapperMap, outputWrapperMap);
- }
-
- public String getPhase() {
- return Phase.REFERENCE_BINDING_WIREFORMAT;
- }
-
-}
diff --git a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmsdefault/runtime/WireFormatJMSDefaultServiceInterceptor.java b/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmsdefault/runtime/WireFormatJMSDefaultServiceInterceptor.java
deleted file mode 100644
index 0753b8e7ef..0000000000
--- a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmsdefault/runtime/WireFormatJMSDefaultServiceInterceptor.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.binding.jms.wireformat.jmsdefault.runtime;
-
-import java.util.HashMap;
-import java.util.List;
-
-import javax.jms.BytesMessage;
-import javax.jms.Session;
-
-import org.apache.axiom.om.OMElement;
-import org.apache.tuscany.sca.binding.jms.context.JMSBindingContext;
-import org.apache.tuscany.sca.binding.jms.impl.JMSBinding;
-import org.apache.tuscany.sca.binding.jms.provider.DefaultMessageProcessor;
-import org.apache.tuscany.sca.binding.jms.provider.JMSMessageProcessor;
-import org.apache.tuscany.sca.binding.jms.provider.JMSMessageProcessorUtil;
-import org.apache.tuscany.sca.binding.jms.provider.JMSResourceFactory;
-import org.apache.tuscany.sca.binding.jms.wireformat.jmsdefault.WireFormatJMSDefault;
-import org.apache.tuscany.sca.interfacedef.DataType;
-import org.apache.tuscany.sca.interfacedef.Operation;
-import org.apache.tuscany.sca.invocation.Interceptor;
-import org.apache.tuscany.sca.invocation.Invoker;
-import org.apache.tuscany.sca.invocation.Message;
-import org.apache.tuscany.sca.runtime.RuntimeWire;
-
-/**
- * Policy handler to handle PolicySet related to Logging with the QName {http://tuscany.apache.org/xmlns/sca/1.0/impl/java}LoggingPolicy
- *
- * @version $Rev$ $Date$
- */
-public class WireFormatJMSDefaultServiceInterceptor implements Interceptor {
- private Invoker next;
- private RuntimeWire runtimeWire;
- private JMSResourceFactory jmsResourceFactory;
- private JMSBinding jmsBinding;
- private DefaultMessageProcessor requestMessageProcessor;
- private DefaultMessageProcessor responseMessageProcessor;
- private HashMap<String,OMElement> inputWrapperMap;
- private HashMap<String, Boolean> outputWrapperMap;
-
- public WireFormatJMSDefaultServiceInterceptor(JMSBinding jmsBinding, JMSResourceFactory jmsResourceFactory, RuntimeWire runtimeWire, HashMap<String, OMElement> inputWrapperMap,
- HashMap<String, Boolean> outputWrapperMap) {
- super();
- this.jmsBinding = jmsBinding;
- this.runtimeWire = runtimeWire;
- this.jmsResourceFactory = jmsResourceFactory;
- // Note the default processor doesn't follow the normal processor pattern
- // as it has to handle both text and bytes messages
- this.requestMessageProcessor = new DefaultMessageProcessor(jmsBinding);
- this.responseMessageProcessor = new DefaultMessageProcessor(jmsBinding);
- this.inputWrapperMap = inputWrapperMap;
- this.outputWrapperMap = outputWrapperMap;
-
- }
-
- public Message invoke(Message msg) {
-
- if (jmsBinding.getRequestWireFormat() instanceof WireFormatJMSDefault) {
- msg = invokeRequest(msg);
- }
-
- msg = getNext().invoke(msg);
-
- // if it's oneway return back
- Operation operation = msg.getOperation();
- if (operation != null && operation.isNonBlocking()) {
- return msg;
- }
-
- if (jmsBinding.getResponseWireFormat() instanceof WireFormatJMSDefault) {
- msg = invokeResponse(msg);
- }
-
- return msg;
- }
-
- public Message invokeRequest(Message msg) {
- // get the jms context
- JMSBindingContext context = msg.getBindingContext();
- javax.jms.Message jmsMsg = context.getJmsMsg();
-
- Operation op = msg.getOperation();
- List<DataType> inputDataTypes = op.getInputType().getLogical();
-
- Class<?> inputType = null;
- if (inputDataTypes.size() == 1) {
- inputType = inputDataTypes.get(0).getPhysical();
- }
- if (inputType != null && javax.jms.Message.class.isAssignableFrom(inputType)) {
- msg.setBody(new Object[] { jmsMsg });
-
- if (jmsMsg instanceof BytesMessage) {
- context.setUseBytesForWFJMSDefaultResponse(true);
- } else {
- context.setUseBytesForWFJMSDefaultResponse(false);
- }
- } else {
-
- // If there is only one arg we must add a wrapper if the operation is wrapper style
- OMElement wrapper = this.inputWrapperMap.get(msg.getOperation().getName());
-
- Object requestPayload;
- if (jmsMsg instanceof BytesMessage) {
- requestPayload = responseMessageProcessor.extractPayloadFromJMSBytesMessage(jmsMsg, wrapper);
- context.setUseBytesForWFJMSDefaultResponse(true);
- } else {
- requestPayload = responseMessageProcessor.extractPayloadFromJMSTextMessage(jmsMsg, wrapper );
- context.setUseBytesForWFJMSDefaultResponse(false);
- }
-
- msg.setBody(new Object[] { requestPayload });
- }
-
- return msg;
-
- }
-
- public Message invokeResponse(Message msg) {
-
- // get the jms context
- JMSBindingContext context = msg.getBindingContext();
- Session session = context.getJmsResponseSession();
-
- javax.jms.Message responseJMSMsg;
-
- boolean respondBytesMessage = context.isUseBytesForWFJMSDefaultResponse();
-
- if (msg.isFault()) {
- if (respondBytesMessage == true) {
- responseJMSMsg = requestMessageProcessor.createFaultJMSBytesMessage(session, (Throwable) msg.getBody());
- } else {
- responseJMSMsg = responseMessageProcessor.createFaultJMSTextMessage(session, (Throwable) msg.getBody());
- }
- } else {
- boolean unwrap = false;
-
- if (this.outputWrapperMap.get(msg.getOperation().getName()) != null){
- unwrap = this.outputWrapperMap.get(msg.getOperation().getName());
- }
-
- if (respondBytesMessage == true) {
- responseJMSMsg = requestMessageProcessor.insertPayloadIntoJMSBytesMessage(session, msg.getBody(), unwrap);
- } else {
- responseJMSMsg = requestMessageProcessor.insertPayloadIntoJMSTextMessage(session, msg.getBody(), unwrap);
- }
- }
-
- msg.setBody(responseJMSMsg);
-
- return msg;
- }
-
- public Invoker getNext() {
- return next;
- }
-
- public void setNext(Invoker next) {
- this.next = next;
- }
-}
diff --git a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmsdefault/runtime/WireFormatJMSDefaultServiceProvider.java b/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmsdefault/runtime/WireFormatJMSDefaultServiceProvider.java
deleted file mode 100644
index 4f63867350..0000000000
--- a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmsdefault/runtime/WireFormatJMSDefaultServiceProvider.java
+++ /dev/null
@@ -1,191 +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.binding.jms.wireformat.jmsdefault.runtime;
-
-import java.util.HashMap;
-import java.util.List;
-
-import org.apache.axiom.om.OMAbstractFactory;
-import org.apache.axiom.om.OMElement;
-import org.apache.axiom.om.OMFactory;
-import org.apache.axiom.om.OMNamespace;
-import org.apache.tuscany.sca.assembly.Binding;
-import org.apache.tuscany.sca.binding.jms.impl.JMSBinding;
-import org.apache.tuscany.sca.binding.jms.impl.JMSBindingConstants;
-import org.apache.tuscany.sca.binding.jms.provider.JMSResourceFactory;
-import org.apache.tuscany.sca.binding.jms.wireformat.jmsdefault.WireFormatJMSDefault;
-import org.apache.tuscany.sca.binding.ws.WebServiceBinding;
-import org.apache.tuscany.sca.binding.ws.WebServiceBindingFactory;
-import org.apache.tuscany.sca.binding.ws.wsdlgen.BindingWSDLGenerator;
-import org.apache.tuscany.sca.core.ExtensionPointRegistry;
-import org.apache.tuscany.sca.interfacedef.DataType;
-import org.apache.tuscany.sca.interfacedef.InterfaceContract;
-import org.apache.tuscany.sca.interfacedef.Operation;
-import org.apache.tuscany.sca.interfacedef.util.ElementInfo;
-import org.apache.tuscany.sca.invocation.Interceptor;
-import org.apache.tuscany.sca.invocation.Phase;
-import org.apache.tuscany.sca.provider.WireFormatProvider;
-import org.apache.tuscany.sca.runtime.RuntimeComponent;
-import org.apache.tuscany.sca.runtime.RuntimeComponentService;
-
-/**
- * @version $Rev$ $Date$
- */
-public class WireFormatJMSDefaultServiceProvider implements WireFormatProvider {
- private ExtensionPointRegistry registry;
- private RuntimeComponent component;
- private RuntimeComponentService service;
- private JMSBinding binding;
- private JMSResourceFactory jmsResourceFactory;
- private InterfaceContract interfaceContract;
- private HashMap<String, OMElement> inputWrapperMap;
- private HashMap<String, Boolean> outputWrapperMap;
-
- public WireFormatJMSDefaultServiceProvider(ExtensionPointRegistry registry, RuntimeComponent component, RuntimeComponentService service, Binding binding, JMSResourceFactory jmsResourceFactory) {
- super();
- this.component = component;
- this.service = service;
- this.binding = (JMSBinding) binding;
- this.jmsResourceFactory = jmsResourceFactory;
-
- this.inputWrapperMap = new HashMap<String, OMElement>();
- this.outputWrapperMap = new HashMap<String, Boolean>();
-
- // configure the service based on this wire format
-
- // currently maintaining the message processor structure which
- // contains the details of jms message processing so set the message
- // type here if not set explicitly in SCDL
- if (this.binding.getRequestWireFormat() instanceof WireFormatJMSDefault){
- this.binding.setRequestMessageProcessorName(JMSBindingConstants.DEFAULT_MP_CLASSNAME);
- }
- if (this.binding.getResponseWireFormat() instanceof WireFormatJMSDefault){
- this.binding.setResponseMessageProcessorName(JMSBindingConstants.DEFAULT_MP_CLASSNAME);
- }
-
- List<Operation> opList = service.getService().getInterfaceContract().getInterface().getOperations();
-
- // Go through each operation and add wrapper info
- OMFactory factory = OMAbstractFactory.getOMFactory();
-
- // set the binding interface contract to represent the WSDL for the
- // xml messages that will be sent
-
- // I think we have to check for asIs because the Java2WSDL will blow up when using javax.jms.Message
- if (service.getInterfaceContract() != null && !isAsIs()) {
- WebServiceBindingFactory wsFactory = registry.getExtensionPoint(WebServiceBindingFactory.class);
- WebServiceBinding wsBinding = wsFactory.createWebServiceBinding();
- BindingWSDLGenerator.generateWSDL(component, service, wsBinding, registry, null);
- interfaceContract = wsBinding.getBindingInterfaceContract();
- interfaceContract.getInterface().resetDataBinding(OMElement.class.getName());
-
- List<Operation> wsdlOpList = interfaceContract.getInterface().getOperations();
-
- for (Operation op : opList) {
- String name = op.getName();
-
- Operation matchingWsdlOp = null;
-
- // find the matching wsdlop
- for (Operation wsdlOp : wsdlOpList) {
- if (name.equals(wsdlOp.getName())) {
- matchingWsdlOp = wsdlOp;
- break;
- }
- }
-
- // only add operations that need to be wrapped/unwrapped
-
- // TODO - not sure we really support viewing the input/output as separately wrapped
- // like the separate code paths imply. Not sure how many @OneWay tests we have, this might
- // not be an issue.
- if (matchingWsdlOp.isInputWrapperStyle()) {
- if (op.getInputType().getLogical().size() == 1) {
- // we only need to know what the wrapper is on the deserialization
- // might need to change this when the input/output wrapper style is different
- ElementInfo ei = op.getInputWrapper().getWrapperElement();
- String namespace = ei.getQName().getNamespaceURI();
- String opName = ei.getQName().getLocalPart();
- OMNamespace ns = factory.createOMNamespace(namespace, "ns1");
- OMElement wrapper = factory.createOMElement(opName, ns);
- this.inputWrapperMap.put(name, wrapper);
- }
- }
-
- if (matchingWsdlOp.isOutputWrapperStyle()) {
- this.outputWrapperMap.put(name, true);
- } else {
- this.outputWrapperMap.put(name, false);
- }
-
- }
-
- } else {
- interfaceContract = service.getService().getInterfaceContract();
- }
- }
-
- protected boolean isAsIs() {
- InterfaceContract ic = service.getInterfaceContract();
- if (ic.getInterface().getOperations().size() != 1) {
- return false;
- }
-
- List<DataType> inputDataTypes = ic.getInterface().getOperations().get(0).getInputType().getLogical();
-
- if (inputDataTypes.size() != 1) {
- return false;
- }
-
- Class<?> inputType = inputDataTypes.get(0).getPhysical();
-
- if (javax.jms.Message.class.isAssignableFrom(inputType)) {
- return true;
- }
- return false;
- }
-
- public InterfaceContract configureWireFormatInterfaceContract(InterfaceContract interfaceContract){
-
- if (this.interfaceContract != null &&
- !isAsIs()) {
- if (this.binding.getRequestWireFormat() instanceof WireFormatJMSDefault){
- // set the request data transformation
- interfaceContract.getInterface().resetInterfaceInputTypes(this.interfaceContract.getInterface());
- }
- if (this.binding.getResponseWireFormat() instanceof WireFormatJMSDefault){
- // set the response data transformation
- interfaceContract.getInterface().resetInterfaceOutputTypes(this.interfaceContract.getInterface());
- }
- }
-
- return interfaceContract;
- }
-
-
- public Interceptor createInterceptor() {
- return new WireFormatJMSDefaultServiceInterceptor(binding, jmsResourceFactory, service.getRuntimeWire(binding), this.inputWrapperMap, this.outputWrapperMap);
- }
-
- public String getPhase() {
- return Phase.SERVICE_BINDING_WIREFORMAT;
- }
-
-}
diff --git a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmsobject/runtime/WireFormatJMSObjectProviderFactory.java b/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmsobject/runtime/WireFormatJMSObjectProviderFactory.java
deleted file mode 100644
index 9e92bf40bf..0000000000
--- a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmsobject/runtime/WireFormatJMSObjectProviderFactory.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.binding.jms.wireformat.jmsobject.runtime;
-
-import org.apache.tuscany.sca.assembly.Binding;
-import org.apache.tuscany.sca.binding.jms.wireformat.jmsobject.WireFormatJMSObject;
-import org.apache.tuscany.sca.core.ExtensionPointRegistry;
-import org.apache.tuscany.sca.provider.WireFormatProvider;
-import org.apache.tuscany.sca.provider.WireFormatProviderFactory;
-import org.apache.tuscany.sca.runtime.RuntimeComponent;
-import org.apache.tuscany.sca.runtime.RuntimeComponentReference;
-import org.apache.tuscany.sca.runtime.RuntimeComponentService;
-
-/**
- * @version $Rev$ $Date$
- */
-public class WireFormatJMSObjectProviderFactory implements WireFormatProviderFactory<WireFormatJMSObject> {
- private ExtensionPointRegistry registry;
-
- public WireFormatJMSObjectProviderFactory(ExtensionPointRegistry registry) {
- super();
- this.registry = registry;
- }
-
- /**
- */
- public WireFormatProvider createReferenceWireFormatProvider(RuntimeComponent component,
- RuntimeComponentReference reference,
- Binding binding) {
- return new WireFormatJMSObjectReferenceProvider(registry, component, reference, binding);
- }
-
- /**
- */
- public WireFormatProvider createServiceWireFormatProvider(RuntimeComponent component,
- RuntimeComponentService service,
- Binding binding) {
- return new WireFormatJMSObjectServiceProvider(registry, component, service, binding);
- }
-
- /**
- * @see org.apache.tuscany.sca.provider.ProviderFactory#getModelType()
- */
- public Class getModelType() {
- // TODO Auto-generated method stub
- return null;
- }
-
-}
diff --git a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmsobject/runtime/WireFormatJMSObjectReferenceInterceptor.java b/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmsobject/runtime/WireFormatJMSObjectReferenceInterceptor.java
deleted file mode 100644
index 22c66b0b78..0000000000
--- a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmsobject/runtime/WireFormatJMSObjectReferenceInterceptor.java
+++ /dev/null
@@ -1,143 +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.binding.jms.wireformat.jmsobject.runtime;
-
-
-import java.lang.reflect.InvocationTargetException;
-import java.util.HashMap;
-
-import javax.jms.JMSException;
-import javax.jms.Session;
-
-import org.apache.tuscany.sca.assembly.WireFormat;
-import org.apache.tuscany.sca.binding.jms.context.JMSBindingContext;
-import org.apache.tuscany.sca.binding.jms.impl.JMSBinding;
-import org.apache.tuscany.sca.binding.jms.impl.JMSBindingConstants;
-import org.apache.tuscany.sca.binding.jms.impl.JMSBindingException;
-import org.apache.tuscany.sca.binding.jms.provider.JMSMessageProcessor;
-import org.apache.tuscany.sca.binding.jms.provider.JMSMessageProcessorUtil;
-import org.apache.tuscany.sca.binding.jms.provider.JMSResourceFactory;
-import org.apache.tuscany.sca.binding.jms.provider.ObjectMessageProcessor;
-import org.apache.tuscany.sca.binding.jms.wireformat.jmsobject.WireFormatJMSObject;
-import org.apache.tuscany.sca.invocation.Interceptor;
-import org.apache.tuscany.sca.invocation.Invoker;
-import org.apache.tuscany.sca.invocation.Message;
-import org.apache.tuscany.sca.runtime.RuntimeWire;
-
-/**
- *
- * @version $Rev$ $Date$
- */
-public class WireFormatJMSObjectReferenceInterceptor implements Interceptor {
-
- private Invoker next;
- private RuntimeWire runtimeWire;
- private JMSResourceFactory jmsResourceFactory;
- private JMSBinding jmsBinding;
- private JMSMessageProcessor requestMessageProcessor;
- private JMSMessageProcessor responseMessageProcessor;
-
- private HashMap<String, String> singleArgMap;
-
- public WireFormatJMSObjectReferenceInterceptor(JMSBinding jmsBinding, JMSResourceFactory jmsResourceFactory, RuntimeWire runtimeWire, HashMap<String, String> hashMap) {
- super();
- this.jmsBinding = jmsBinding;
- this.runtimeWire = runtimeWire;
- this.jmsResourceFactory = jmsResourceFactory;
- this.requestMessageProcessor = JMSMessageProcessorUtil.getRequestMessageProcessor(jmsBinding);
- this.responseMessageProcessor = JMSMessageProcessorUtil.getResponseMessageProcessor(jmsBinding);
- this.singleArgMap = hashMap;
- }
-
- public Message invoke(Message msg) {
- if (jmsBinding.getRequestWireFormat() instanceof WireFormatJMSObject){
- msg = invokeRequest(msg);
- }
-
- msg = getNext().invoke(msg);
-
- if (jmsBinding.getResponseWireFormat() instanceof WireFormatJMSObject){
- msg = invokeResponse(msg);
- }
-
- return msg;
- }
-
- public Message invokeRequest(Message msg) {
- try {
- // get the jms context
- JMSBindingContext context = msg.getBindingContext();
- Session session = context.getJmsSession();
-
- javax.jms.Message requestMsg;
-
- // Tuscany automatically wraps operation arguments in an array before we
- // get to this point so here we need to decide how they are going to appear
- // on the wire.
- //
- // If the operation has a single parameter and the user has set @wrapSingle=false
- // then
- // send the single parameter out onto the wire unwrapped
- // else
- // send out the message as is
- //
- if (singleArgMap.get(msg.getOperation().getName()) == null) {
- requestMsg = requestMessageProcessor.insertPayloadIntoJMSMessage(session, msg.getBody());
- } else {
- // we know that wrapSinle is set to false here as the provider only
- // populates singleArgMap if it is set false
- requestMsg = ((ObjectMessageProcessor) requestMessageProcessor).createJMSMessageForSingleParamOperation(session, msg.getBody(), false);
- }
-
- msg.setBody(requestMsg);
-
- requestMsg.setJMSReplyTo(context.getReplyToDestination());
-
- return msg;
- } catch (JMSException e) {
- throw new JMSBindingException(e);
- }
- }
-
- public Message invokeResponse(Message msg) {
- if (msg.getBody() != null){
- Object response = responseMessageProcessor.extractPayloadFromJMSMessage((javax.jms.Message)msg.getBody());
-
- if (response instanceof InvocationTargetException) {
- msg.setFaultBody(((InvocationTargetException) response).getCause());
- } else {
- if (response != null){
- msg.setBody(response);
- } else {
- msg.setBody(null);
- }
- }
- }
-
- return msg;
- }
-
- public Invoker getNext() {
- return next;
- }
-
- public void setNext(Invoker next) {
- this.next = next;
- }
-}
diff --git a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmsobject/runtime/WireFormatJMSObjectReferenceProvider.java b/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmsobject/runtime/WireFormatJMSObjectReferenceProvider.java
deleted file mode 100644
index e09c146f48..0000000000
--- a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmsobject/runtime/WireFormatJMSObjectReferenceProvider.java
+++ /dev/null
@@ -1,116 +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.binding.jms.wireformat.jmsobject.runtime;
-
-import java.util.HashMap;
-import java.util.List;
-
-import org.apache.tuscany.sca.assembly.Binding;
-import org.apache.tuscany.sca.binding.jms.impl.JMSBinding;
-import org.apache.tuscany.sca.binding.jms.impl.JMSBindingConstants;
-import org.apache.tuscany.sca.binding.jms.wireformat.jmsobject.WireFormatJMSObject;
-import org.apache.tuscany.sca.core.ExtensionPointRegistry;
-import org.apache.tuscany.sca.interfacedef.InterfaceContract;
-import org.apache.tuscany.sca.interfacedef.Operation;
-import org.apache.tuscany.sca.invocation.Interceptor;
-import org.apache.tuscany.sca.invocation.Phase;
-import org.apache.tuscany.sca.provider.WireFormatProvider;
-import org.apache.tuscany.sca.runtime.RuntimeComponent;
-import org.apache.tuscany.sca.runtime.RuntimeComponentReference;
-
-/**
- * @version $Rev$ $Date$
- */
-public class WireFormatJMSObjectReferenceProvider implements WireFormatProvider {
- private ExtensionPointRegistry registry;
- private RuntimeComponent component;
- private RuntimeComponentReference reference;
- private JMSBinding binding;
- private InterfaceContract interfaceContract;
-
- private HashMap<String,String> singleArgMap; //map of one arg operations, leave empty if wrapSingleInput is true
-
- public WireFormatJMSObjectReferenceProvider(ExtensionPointRegistry registry,
- RuntimeComponent component,
- RuntimeComponentReference reference,
- Binding binding) {
- super();
- this.registry = registry;
- this.component = component;
- this.reference = reference;
- this.binding = (JMSBinding)binding;
-
- this.singleArgMap = new HashMap<String,String>();
-
- // configure the reference based on this wire format
-
- // currently maintaining the message processor structure which
- // contains the details of jms message processing however override
- // any message processors specified in the SCDL in this case
- if (this.binding.getRequestWireFormat() instanceof WireFormatJMSObject){
- this.binding.setRequestMessageProcessorName(JMSBindingConstants.OBJECT_MP_CLASSNAME);
-
- //we don't need to create this map if wrapSingleInput is true
- if (!((WireFormatJMSObject) this.binding.getRequestWireFormat()).isWrappedSingleInput()){
- List<Operation> opList = reference.getReference().getInterfaceContract().getInterface().getOperations();
-
- for (Operation op: opList) {
- if (op.getInputType().getLogical().size() == 1){
- this.singleArgMap.put(op.getName(), "");
- }
- }
- }
- }
- if (this.binding.getResponseWireFormat() instanceof WireFormatJMSObject){
- this.binding.setResponseMessageProcessorName(JMSBindingConstants.OBJECT_MP_CLASSNAME);
- }
-
- // just point to the reference interface contract so no
- // databinding transformation takes place
- interfaceContract = reference.getReference().getInterfaceContract();
- }
-
- public InterfaceContract configureWireFormatInterfaceContract(InterfaceContract interfaceContract){
-
- if (this.interfaceContract != null ) {
- if (this.binding.getRequestWireFormat() instanceof WireFormatJMSObject){
- // set the request data transformation
- interfaceContract.getInterface().resetInterfaceInputTypes(this.interfaceContract.getInterface());
- }
- if (this.binding.getResponseWireFormat() instanceof WireFormatJMSObject){
- // set the response data transformation
- interfaceContract.getInterface().resetInterfaceOutputTypes(this.interfaceContract.getInterface());
- }
- }
-
- return interfaceContract;
- }
-
- public Interceptor createInterceptor() {
- return new WireFormatJMSObjectReferenceInterceptor(binding,
- null,
- reference.getRuntimeWire(binding), this.singleArgMap);
- }
-
- public String getPhase() {
- return Phase.REFERENCE_BINDING_WIREFORMAT;
- }
-
-}
diff --git a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmsobject/runtime/WireFormatJMSObjectServiceInterceptor.java b/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmsobject/runtime/WireFormatJMSObjectServiceInterceptor.java
deleted file mode 100644
index 5979bc9214..0000000000
--- a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmsobject/runtime/WireFormatJMSObjectServiceInterceptor.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.binding.jms.wireformat.jmsobject.runtime;
-
-import java.util.HashMap;
-
-import javax.jms.Session;
-
-import org.apache.tuscany.sca.binding.jms.context.JMSBindingContext;
-import org.apache.tuscany.sca.binding.jms.impl.JMSBinding;
-import org.apache.tuscany.sca.binding.jms.provider.JMSMessageProcessor;
-import org.apache.tuscany.sca.binding.jms.provider.JMSMessageProcessorUtil;
-import org.apache.tuscany.sca.binding.jms.provider.JMSResourceFactory;
-import org.apache.tuscany.sca.binding.jms.provider.ObjectMessageProcessor;
-import org.apache.tuscany.sca.binding.jms.wireformat.jmsobject.WireFormatJMSObject;
-import org.apache.tuscany.sca.interfacedef.Operation;
-import org.apache.tuscany.sca.invocation.Interceptor;
-import org.apache.tuscany.sca.invocation.Invoker;
-import org.apache.tuscany.sca.invocation.Message;
-import org.apache.tuscany.sca.runtime.RuntimeWire;
-
-/**
- * Policy handler to handle PolicySet related to Logging with the QName
- * {http://tuscany.apache.org/xmlns/sca/1.0/impl/java}LoggingPolicy
- *
- * @version $Rev$ $Date$
- */
-public class WireFormatJMSObjectServiceInterceptor implements Interceptor {
- private Invoker next;
- private RuntimeWire runtimeWire;
- private JMSResourceFactory jmsResourceFactory;
- private JMSBinding jmsBinding;
- private JMSMessageProcessor requestMessageProcessor;
- private JMSMessageProcessor responseMessageProcessor;
- private HashMap<String,Class<?>> singleArgMap;
- private boolean wrapSingle;
-
- public WireFormatJMSObjectServiceInterceptor(JMSBinding jmsBinding, JMSResourceFactory jmsResourceFactory,
- RuntimeWire runtimeWire, HashMap<String, Class<?>> singleArgMap, boolean wrapSingle) {
- super();
- this.jmsBinding = jmsBinding;
- this.runtimeWire = runtimeWire;
- this.jmsResourceFactory = jmsResourceFactory;
- this.requestMessageProcessor = JMSMessageProcessorUtil.getRequestMessageProcessor(jmsBinding);
- this.responseMessageProcessor = JMSMessageProcessorUtil.getResponseMessageProcessor(jmsBinding);
- this.singleArgMap = singleArgMap;
- this.wrapSingle = wrapSingle;
- }
-
- public Message invoke(Message msg) {
- if (jmsBinding.getRequestWireFormat() instanceof WireFormatJMSObject){
- msg = invokeRequest(msg);
- }
-
- msg = getNext().invoke(msg);
-
- //if it's oneway return back
- Operation operation = msg.getOperation();
- if (operation != null && operation.isNonBlocking()) {
- return msg;
- }
-
- if (jmsBinding.getResponseWireFormat() instanceof WireFormatJMSObject){
- msg = invokeResponse(msg);
- }
-
- return msg;
- }
-
- public Message invokeRequest(Message msg) {
- // get the jms context
- JMSBindingContext context = msg.getBindingContext();
- javax.jms.Message jmsMsg = context.getJmsMsg();
- Object requestPayload;
-
- // If the service interface has a single argument then we need
- // to check if the object from the wire is expected
- // to be unwrapped or not
- //
- Class<?> argType = this.singleArgMap.get(msg.getOperation().getName());
- if (argType == null) {
- requestPayload = requestMessageProcessor.extractPayloadFromJMSMessage(jmsMsg);
- }else {
- requestPayload = ((ObjectMessageProcessor)requestMessageProcessor).extractPayloadFromJMSMessageForSingleParamOperation(jmsMsg, argType, wrapSingle);
- }
-
- if (requestPayload != null && requestPayload.getClass().isArray()) {
- msg.setBody(requestPayload);
- } else if (requestPayload == null) {
- msg.setBody(new Object[0]);
- } else {
- msg.setBody(new Object[] {requestPayload});
- }
-
- return msg;
- }
-
- public Message invokeResponse(Message msg) {
- // get the jms context
- JMSBindingContext context = msg.getBindingContext();
- Session session = context.getJmsResponseSession();
-
- javax.jms.Message responseJMSMsg = null;
- if (msg.isFault()) {
- responseJMSMsg = responseMessageProcessor.createFaultMessage(session, (Throwable)msg.getBody());
- } else {
- responseJMSMsg = responseMessageProcessor.insertPayloadIntoJMSMessage(session, msg.getBody());
- }
-
- msg.setBody(responseJMSMsg);
-
- return msg;
- }
-
- public Invoker getNext() {
- return next;
- }
-
- public void setNext(Invoker next) {
- this.next = next;
- }
-}
diff --git a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmsobject/runtime/WireFormatJMSObjectServiceProvider.java b/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmsobject/runtime/WireFormatJMSObjectServiceProvider.java
deleted file mode 100644
index f112c0cff9..0000000000
--- a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmsobject/runtime/WireFormatJMSObjectServiceProvider.java
+++ /dev/null
@@ -1,122 +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.binding.jms.wireformat.jmsobject.runtime;
-
-
-import java.util.HashMap;
-import java.util.List;
-
-import org.apache.tuscany.sca.assembly.Binding;
-import org.apache.tuscany.sca.binding.jms.impl.JMSBinding;
-import org.apache.tuscany.sca.binding.jms.impl.JMSBindingConstants;
-import org.apache.tuscany.sca.binding.jms.wireformat.jmsobject.WireFormatJMSObject;
-import org.apache.tuscany.sca.core.ExtensionPointRegistry;
-import org.apache.tuscany.sca.interfacedef.InterfaceContract;
-import org.apache.tuscany.sca.interfacedef.Operation;
-import org.apache.tuscany.sca.invocation.Interceptor;
-import org.apache.tuscany.sca.invocation.Phase;
-import org.apache.tuscany.sca.provider.WireFormatProvider;
-import org.apache.tuscany.sca.runtime.RuntimeComponent;
-import org.apache.tuscany.sca.runtime.RuntimeComponentService;
-
-/**
- * @version $Rev$ $Date$
- */
-public class WireFormatJMSObjectServiceProvider implements WireFormatProvider {
- private ExtensionPointRegistry registry;
- private RuntimeComponent component;
- private RuntimeComponentService service;
- private JMSBinding binding;
- private InterfaceContract interfaceContract;
- private HashMap<String,Class<?>> singleArgMap;
- private boolean wrapSingle = true;
-
- public WireFormatJMSObjectServiceProvider(ExtensionPointRegistry registry,
- RuntimeComponent component,
- RuntimeComponentService service,
- Binding binding) {
- super();
- this.registry = registry;
- this.component = component;
- this.service = service;
- this.binding = (JMSBinding)binding;
- this.singleArgMap = new HashMap<String,Class<?>>();
-
- // configure the service based on this wire format
-
- // currently maintaining the message processor structure which
- // contains the details of jms message processing however override
- // any message processors specified in the SCDL in this case
- if (this.binding.getRequestWireFormat() instanceof WireFormatJMSObject){
- this.binding.setRequestMessageProcessorName(JMSBindingConstants.OBJECT_MP_CLASSNAME);
-
- List<Operation> opList = service.getService().getInterfaceContract().getInterface().getOperations();
-
- for (Operation op: opList) {
- if (op.getInputType().getLogical().size() == 1){
- this.singleArgMap.put(op.getName(), op.getInputType().getLogical().get(0).getPhysical());
- }
- }
-
- wrapSingle = ((WireFormatJMSObject) this.binding.getRequestWireFormat()).isWrappedSingleInput();
-
- }
- if (this.binding.getResponseWireFormat() instanceof WireFormatJMSObject){
- this.binding.setResponseMessageProcessorName(JMSBindingConstants.OBJECT_MP_CLASSNAME);
- }
-
- // just point to the reference interface contract so no
- // databinding transformation takes place
- interfaceContract = service.getService().getInterfaceContract();
-
-
- }
-
- public InterfaceContract configureWireFormatInterfaceContract(InterfaceContract interfaceContract){
-
- if (this.interfaceContract != null ) {
- if (this.binding.getRequestWireFormat() instanceof WireFormatJMSObject){
- // set the request data transformation
- interfaceContract.getInterface().resetInterfaceInputTypes(this.interfaceContract.getInterface());
- }
- if (this.binding.getResponseWireFormat() instanceof WireFormatJMSObject){
- // set the response data transformation
- interfaceContract.getInterface().resetInterfaceOutputTypes(this.interfaceContract.getInterface());
- }
- }
-
- return interfaceContract;
- }
-
- /**
- */
- public Interceptor createInterceptor() {
-
- return new WireFormatJMSObjectServiceInterceptor((JMSBinding)binding, null,service.getRuntimeWire(binding),
- this.singleArgMap, wrapSingle );
- }
-
- /**
- */
- public String getPhase() {
- return Phase.SERVICE_BINDING_WIREFORMAT;
- }
-
-}
diff --git a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmstext/runtime/WireFormatJMSTextProviderFactory.java b/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmstext/runtime/WireFormatJMSTextProviderFactory.java
deleted file mode 100644
index 555dfb47b5..0000000000
--- a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmstext/runtime/WireFormatJMSTextProviderFactory.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.binding.jms.wireformat.jmstext.runtime;
-
-import org.apache.tuscany.sca.assembly.Binding;
-import org.apache.tuscany.sca.binding.jms.wireformat.jmstext.WireFormatJMSText;
-import org.apache.tuscany.sca.core.ExtensionPointRegistry;
-import org.apache.tuscany.sca.provider.WireFormatProvider;
-import org.apache.tuscany.sca.provider.WireFormatProviderFactory;
-import org.apache.tuscany.sca.runtime.RuntimeComponent;
-import org.apache.tuscany.sca.runtime.RuntimeComponentReference;
-import org.apache.tuscany.sca.runtime.RuntimeComponentService;
-
-/**
- * @version $Rev$ $Date$
- */
-public class WireFormatJMSTextProviderFactory implements WireFormatProviderFactory<WireFormatJMSText> {
- private ExtensionPointRegistry registry;
-
- public WireFormatJMSTextProviderFactory(ExtensionPointRegistry registry) {
- super();
- this.registry = registry;
- }
-
- /**
- */
- public WireFormatProvider createReferenceWireFormatProvider(RuntimeComponent component,
- RuntimeComponentReference reference,
- Binding binding) {
- return new WireFormatJMSTextReferenceProvider(registry, component, reference, binding);
- }
-
- /**
- */
- public WireFormatProvider createServiceWireFormatProvider(RuntimeComponent component,
- RuntimeComponentService service,
- Binding binding) {
- return new WireFormatJMSTextServiceProvider(registry, component, service, binding);
- }
-
- /**
- * @see org.apache.tuscany.sca.provider.ProviderFactory#getModelType()
- */
- public Class getModelType() {
- // TODO Auto-generated method stub
- return null;
- }
-
-}
diff --git a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmstext/runtime/WireFormatJMSTextReferenceInterceptor.java b/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmstext/runtime/WireFormatJMSTextReferenceInterceptor.java
deleted file mode 100644
index 49e745ffaa..0000000000
--- a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmstext/runtime/WireFormatJMSTextReferenceInterceptor.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.binding.jms.wireformat.jmstext.runtime;
-
-
-import java.lang.reflect.InvocationTargetException;
-import javax.jms.JMSException;
-import javax.jms.Session;
-
-import org.apache.tuscany.sca.assembly.WireFormat;
-import org.apache.tuscany.sca.binding.jms.context.JMSBindingContext;
-import org.apache.tuscany.sca.binding.jms.impl.JMSBinding;
-import org.apache.tuscany.sca.binding.jms.impl.JMSBindingConstants;
-import org.apache.tuscany.sca.binding.jms.impl.JMSBindingException;
-import org.apache.tuscany.sca.binding.jms.provider.JMSMessageProcessor;
-import org.apache.tuscany.sca.binding.jms.provider.JMSMessageProcessorUtil;
-import org.apache.tuscany.sca.binding.jms.provider.JMSResourceFactory;
-import org.apache.tuscany.sca.binding.jms.wireformat.jmstext.WireFormatJMSText;
-import org.apache.tuscany.sca.binding.jms.wireformat.jmstextxml.WireFormatJMSTextXML;
-import org.apache.tuscany.sca.invocation.Interceptor;
-import org.apache.tuscany.sca.invocation.Invoker;
-import org.apache.tuscany.sca.invocation.Message;
-import org.apache.tuscany.sca.runtime.RuntimeWire;
-
-/**
- *
- * @version $Rev$ $Date$
- */
-public class WireFormatJMSTextReferenceInterceptor implements Interceptor {
-
- private Invoker next;
- private RuntimeWire runtimeWire;
- private JMSResourceFactory jmsResourceFactory;
- private JMSBinding jmsBinding;
- private JMSMessageProcessor requestMessageProcessor;
- private JMSMessageProcessor responseMessageProcessor;
-
- public WireFormatJMSTextReferenceInterceptor(JMSBinding jmsBinding, JMSResourceFactory jmsResourceFactory, RuntimeWire runtimeWire) {
- super();
- this.jmsBinding = jmsBinding;
- this.runtimeWire = runtimeWire;
- this.jmsResourceFactory = jmsResourceFactory;
- this.requestMessageProcessor = JMSMessageProcessorUtil.getRequestMessageProcessor(jmsBinding);
- this.responseMessageProcessor = JMSMessageProcessorUtil.getResponseMessageProcessor(jmsBinding);
- }
-
- public Message invoke(Message msg) {
- if (jmsBinding.getRequestWireFormat() instanceof WireFormatJMSText){
- msg = invokeRequest(msg);
- }
-
- msg = getNext().invoke(msg);
-
- if (jmsBinding.getResponseWireFormat() instanceof WireFormatJMSText){
- msg = invokeResponse(msg);
- }
-
- return msg;
- }
-
- public Message invokeRequest(Message msg) {
- try {
- // get the jms context
- JMSBindingContext context = msg.getBindingContext();
- Session session = context.getJmsSession();
-
- Object[] requestParams = msg.getBody();
- javax.jms.Message requestMsg = null;
- if (requestParams != null && requestParams.length > 0 ){
- requestMsg = requestMessageProcessor.insertPayloadIntoJMSMessage(session, requestParams[0]);
- } else {
- requestMsg = requestMessageProcessor.insertPayloadIntoJMSMessage(session, null);
- }
- msg.setBody(requestMsg);
-
- requestMsg.setJMSReplyTo(context.getReplyToDestination());
-
- return msg;
- } catch (JMSException e) {
- throw new JMSBindingException(e);
- }
- }
-
- public Message invokeResponse(Message msg) {
- if (msg.getBody() != null){
- Object response = responseMessageProcessor.extractPayloadFromJMSMessage((javax.jms.Message)msg.getBody());
-
- if (response instanceof InvocationTargetException) {
- msg.setFaultBody(((InvocationTargetException) response).getCause());
- } else {
- if (response != null){
- msg.setBody(response);
- } else {
- msg.setBody(null);
- }
- }
- }
-
- return msg;
- }
-
- public Invoker getNext() {
- return next;
- }
-
- public void setNext(Invoker next) {
- this.next = next;
- }
-}
diff --git a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmstext/runtime/WireFormatJMSTextReferenceProvider.java b/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmstext/runtime/WireFormatJMSTextReferenceProvider.java
deleted file mode 100644
index 8d96fc7634..0000000000
--- a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmstext/runtime/WireFormatJMSTextReferenceProvider.java
+++ /dev/null
@@ -1,106 +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.binding.jms.wireformat.jmstext.runtime;
-
-
-import org.apache.tuscany.sca.assembly.Binding;
-import org.apache.tuscany.sca.binding.jms.impl.JMSBinding;
-import org.apache.tuscany.sca.binding.jms.impl.JMSBindingConstants;
-import org.apache.tuscany.sca.binding.jms.wireformat.jmstext.WireFormatJMSText;
-import org.apache.tuscany.sca.core.ExtensionPointRegistry;
-import org.apache.tuscany.sca.interfacedef.InterfaceContract;
-import org.apache.tuscany.sca.invocation.Interceptor;
-import org.apache.tuscany.sca.invocation.Phase;
-import org.apache.tuscany.sca.provider.WireFormatProvider;
-import org.apache.tuscany.sca.runtime.RuntimeComponent;
-import org.apache.tuscany.sca.runtime.RuntimeComponentReference;
-
-/**
- * @version $Rev$ $Date$
- */
-public class WireFormatJMSTextReferenceProvider implements WireFormatProvider {
- private ExtensionPointRegistry registry;
- private RuntimeComponent component;
- private RuntimeComponentReference reference;
- private JMSBinding binding;
- private InterfaceContract interfaceContract;
-
- public WireFormatJMSTextReferenceProvider(ExtensionPointRegistry registry,
- RuntimeComponent component,
- RuntimeComponentReference reference,
- Binding binding) {
- super();
- this.registry = registry;
- this.component = component;
- this.reference = reference;
- this.binding = (JMSBinding)binding;
-
- // configure the reference based on this wire format
-
- // currently maintaining the message processor structure which
- // contains the details of jms message processing however override
- // any message processors specified in the SCDL in this case
-
- // this wire format doubles up as the execution logic for user defined
- // message processors so check the processor name is still set to default
- // before overwriting
-
- if ((this.binding.getRequestWireFormat() instanceof WireFormatJMSText) &&
- (this.binding.getRequestMessageProcessorName().equals(JMSBindingConstants.DEFAULT_MP_CLASSNAME))){
- this.binding.setRequestMessageProcessorName(JMSBindingConstants.TEXT_MP_CLASSNAME);
- }
- if ((this.binding.getResponseWireFormat() instanceof WireFormatJMSText) &&
- (this.binding.getResponseMessageProcessorName().equals(JMSBindingConstants.DEFAULT_MP_CLASSNAME))){
- this.binding.setResponseMessageProcessorName(JMSBindingConstants.TEXT_MP_CLASSNAME);
- }
-
-
- // just point to the reference interface contract so no
- // databinding transformation takes place
- interfaceContract = reference.getReference().getInterfaceContract();
- }
-
- public InterfaceContract configureWireFormatInterfaceContract(InterfaceContract interfaceContract){
-
- if (this.interfaceContract != null ) {
- if (this.binding.getRequestWireFormat() instanceof WireFormatJMSText){
- // set the request data transformation
- interfaceContract.getInterface().resetInterfaceInputTypes(this.interfaceContract.getInterface());
- }
- if (this.binding.getResponseWireFormat() instanceof WireFormatJMSText){
- // set the response data transformation
- interfaceContract.getInterface().resetInterfaceOutputTypes(this.interfaceContract.getInterface());
- }
- }
-
- return interfaceContract;
- }
-
- public Interceptor createInterceptor() {
- return new WireFormatJMSTextReferenceInterceptor(binding,
- null,
- reference.getRuntimeWire(binding));
- }
-
- public String getPhase() {
- return Phase.REFERENCE_BINDING_WIREFORMAT;
- }
-
-}
diff --git a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmstext/runtime/WireFormatJMSTextServiceInterceptor.java b/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmstext/runtime/WireFormatJMSTextServiceInterceptor.java
deleted file mode 100644
index cf9e49afef..0000000000
--- a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmstext/runtime/WireFormatJMSTextServiceInterceptor.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.binding.jms.wireformat.jmstext.runtime;
-
-import javax.jms.Session;
-
-import org.apache.tuscany.sca.binding.jms.context.JMSBindingContext;
-import org.apache.tuscany.sca.binding.jms.impl.JMSBinding;
-import org.apache.tuscany.sca.binding.jms.provider.JMSMessageProcessor;
-import org.apache.tuscany.sca.binding.jms.provider.JMSMessageProcessorUtil;
-import org.apache.tuscany.sca.binding.jms.provider.JMSResourceFactory;
-import org.apache.tuscany.sca.binding.jms.wireformat.jmstext.WireFormatJMSText;
-import org.apache.tuscany.sca.interfacedef.Operation;
-import org.apache.tuscany.sca.invocation.Interceptor;
-import org.apache.tuscany.sca.invocation.Invoker;
-import org.apache.tuscany.sca.invocation.Message;
-import org.apache.tuscany.sca.runtime.RuntimeWire;
-
-/**
- * Policy handler to handle PolicySet related to Logging with the QName
- * {http://tuscany.apache.org/xmlns/sca/1.0/impl/java}LoggingPolicy
- *
- * @version $Rev$ $Date$
- */
-public class WireFormatJMSTextServiceInterceptor implements Interceptor {
- private Invoker next;
- private RuntimeWire runtimeWire;
- private JMSResourceFactory jmsResourceFactory;
- private JMSBinding jmsBinding;
- private JMSMessageProcessor requestMessageProcessor;
- private JMSMessageProcessor responseMessageProcessor;
-
- public WireFormatJMSTextServiceInterceptor(JMSBinding jmsBinding, JMSResourceFactory jmsResourceFactory, RuntimeWire runtimeWire) {
- super();
- this.jmsBinding = jmsBinding;
- this.runtimeWire = runtimeWire;
- this.jmsResourceFactory = jmsResourceFactory;
- this.requestMessageProcessor = JMSMessageProcessorUtil.getRequestMessageProcessor(jmsBinding);
- this.responseMessageProcessor = JMSMessageProcessorUtil.getResponseMessageProcessor(jmsBinding);
- }
-
- public Message invoke(Message msg) {
- if (jmsBinding.getRequestWireFormat() instanceof WireFormatJMSText){
- msg = invokeRequest(msg);
- }
-
- msg = getNext().invoke(msg);
-
- //if it's oneway return back
- Operation operation = msg.getOperation();
- if (operation != null && operation.isNonBlocking()) {
- return msg;
- }
-
- if (jmsBinding.getResponseWireFormat() instanceof WireFormatJMSText){
- msg = invokeResponse(msg);
- }
-
- return msg;
- }
-
- public Message invokeRequest(Message msg) {
- // get the jms context
- JMSBindingContext context = msg.getBindingContext();
- javax.jms.Message jmsMsg = context.getJmsMsg();
-
- Object requestPayload = requestMessageProcessor.extractPayloadFromJMSMessage(jmsMsg);
- msg.setBody(new Object[]{requestPayload});
-
- return msg;
- }
-
- public Message invokeResponse(Message msg) {
- // get the jms context
- JMSBindingContext context = msg.getBindingContext();
- Session session = context.getJmsResponseSession();
-
- javax.jms.Message responseJMSMsg;
- if (msg.isFault()) {
- responseJMSMsg = responseMessageProcessor.createFaultMessage(session, (Throwable)msg.getBody());
- } else {
- Object response = msg.getBody();
- responseJMSMsg = responseMessageProcessor.insertPayloadIntoJMSMessage(session, response);
- }
-
- msg.setBody(responseJMSMsg);
-
- return msg;
- }
-
- public Invoker getNext() {
- return next;
- }
-
- public void setNext(Invoker next) {
- this.next = next;
- }
-}
diff --git a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmstext/runtime/WireFormatJMSTextServiceProvider.java b/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmstext/runtime/WireFormatJMSTextServiceProvider.java
deleted file mode 100644
index 983b01b121..0000000000
--- a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmstext/runtime/WireFormatJMSTextServiceProvider.java
+++ /dev/null
@@ -1,108 +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.binding.jms.wireformat.jmstext.runtime;
-
-import org.apache.tuscany.sca.assembly.Binding;
-import org.apache.tuscany.sca.binding.jms.impl.JMSBinding;
-import org.apache.tuscany.sca.binding.jms.impl.JMSBindingConstants;
-import org.apache.tuscany.sca.binding.jms.wireformat.jmstext.WireFormatJMSText;
-import org.apache.tuscany.sca.core.ExtensionPointRegistry;
-import org.apache.tuscany.sca.interfacedef.InterfaceContract;
-import org.apache.tuscany.sca.invocation.Interceptor;
-import org.apache.tuscany.sca.invocation.Phase;
-import org.apache.tuscany.sca.provider.WireFormatProvider;
-import org.apache.tuscany.sca.runtime.RuntimeComponent;
-import org.apache.tuscany.sca.runtime.RuntimeComponentService;
-
-/**
- * @version $Rev$ $Date$
- */
-public class WireFormatJMSTextServiceProvider implements WireFormatProvider {
- private ExtensionPointRegistry registry;
- private RuntimeComponent component;
- private RuntimeComponentService service;
- private JMSBinding binding;
- private InterfaceContract interfaceContract;
-
- public WireFormatJMSTextServiceProvider(ExtensionPointRegistry registry,
- RuntimeComponent component,
- RuntimeComponentService service,
- Binding binding) {
- super();
- this.registry = registry;
- this.component = component;
- this.service = service;
- this.binding = (JMSBinding)binding;
-
- // configure the service based on this wire format
-
- // currently maintaining the message processor structure which
- // contains the details of jms message processing however override
- // any message processors specified in the SCDL in this case
-
- // this wire format doubles up as the execution logic for user defined
- // message processors so check the processor name is still set to default
- // before overwriting
-
- if ((this.binding.getRequestWireFormat() instanceof WireFormatJMSText) &&
- (this.binding.getRequestMessageProcessorName().equals(JMSBindingConstants.DEFAULT_MP_CLASSNAME))){
- this.binding.setRequestMessageProcessorName(JMSBindingConstants.TEXT_MP_CLASSNAME);
- }
- if ((this.binding.getResponseWireFormat() instanceof WireFormatJMSText) &&
- (this.binding.getResponseMessageProcessorName().equals(JMSBindingConstants.DEFAULT_MP_CLASSNAME))){
- this.binding.setResponseMessageProcessorName(JMSBindingConstants.TEXT_MP_CLASSNAME);
- }
-
- // just point to the reference interface contract so no
- // databinding transformation takes place
- interfaceContract = service.getService().getInterfaceContract();
- }
-
- public InterfaceContract configureWireFormatInterfaceContract(InterfaceContract interfaceContract){
-
- if (this.interfaceContract != null ) {
- if (this.binding.getRequestWireFormat() instanceof WireFormatJMSText){
- // set the request data transformation
- interfaceContract.getInterface().resetInterfaceInputTypes(this.interfaceContract.getInterface());
- }
- if (this.binding.getResponseWireFormat() instanceof WireFormatJMSText){
- // set the response data transformation
- interfaceContract.getInterface().resetInterfaceOutputTypes(this.interfaceContract.getInterface());
- }
- }
-
- return interfaceContract;
- }
-
- /**
- */
- public Interceptor createInterceptor() {
- return new WireFormatJMSTextServiceInterceptor((JMSBinding)binding,
- null,
- service.getRuntimeWire(binding));
- }
-
- /**
- */
- public String getPhase() {
- return Phase.SERVICE_BINDING_WIREFORMAT;
- }
-
-}
diff --git a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmstextxml/runtime/WireFormatJMSTextXMLProviderFactory.java b/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmstextxml/runtime/WireFormatJMSTextXMLProviderFactory.java
deleted file mode 100644
index 44f490ee37..0000000000
--- a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmstextxml/runtime/WireFormatJMSTextXMLProviderFactory.java
+++ /dev/null
@@ -1,72 +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.binding.jms.wireformat.jmstextxml.runtime;
-
-import org.apache.tuscany.sca.assembly.Binding;
-import org.apache.tuscany.sca.binding.jms.impl.JMSBinding;
-import org.apache.tuscany.sca.binding.jms.provider.JMSResourceFactory;
-import org.apache.tuscany.sca.binding.jms.provider.JMSResourceFactoryExtensionPoint;
-import org.apache.tuscany.sca.binding.jms.wireformat.jmstextxml.WireFormatJMSTextXML;
-import org.apache.tuscany.sca.core.ExtensionPointRegistry;
-import org.apache.tuscany.sca.provider.WireFormatProvider;
-import org.apache.tuscany.sca.provider.WireFormatProviderFactory;
-import org.apache.tuscany.sca.runtime.RuntimeComponent;
-import org.apache.tuscany.sca.runtime.RuntimeComponentReference;
-import org.apache.tuscany.sca.runtime.RuntimeComponentService;
-
-/**
- * @version $Rev$ $Date$
- */
-public class WireFormatJMSTextXMLProviderFactory implements WireFormatProviderFactory<WireFormatJMSTextXML> {
- private ExtensionPointRegistry registry;
- private JMSResourceFactoryExtensionPoint jmsRFEP;
-
- public WireFormatJMSTextXMLProviderFactory(ExtensionPointRegistry registry) {
- super();
- this.registry = registry;
- jmsRFEP = (JMSResourceFactoryExtensionPoint)registry.getExtensionPoint(JMSResourceFactoryExtensionPoint.class);
- }
-
- /**
- */
- public WireFormatProvider createReferenceWireFormatProvider(RuntimeComponent component,
- RuntimeComponentReference reference,
- Binding binding) {
- return new WireFormatJMSTextXMLReferenceProvider(registry, component, reference, binding);
- }
-
- /**
- */
- public WireFormatProvider createServiceWireFormatProvider(RuntimeComponent component,
- RuntimeComponentService service,
- Binding binding) {
- JMSResourceFactory jmsRF = jmsRFEP.createJMSResourceFactory((JMSBinding)binding);
- return new WireFormatJMSTextXMLServiceProvider(registry, component, service, binding, jmsRF);
- }
-
- /**
- * @see org.apache.tuscany.sca.provider.ProviderFactory#getModelType()
- */
- public Class getModelType() {
- // TODO Auto-generated method stub
- return null;
- }
-
-}
diff --git a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmstextxml/runtime/WireFormatJMSTextXMLReferenceInterceptor.java b/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmstextxml/runtime/WireFormatJMSTextXMLReferenceInterceptor.java
deleted file mode 100644
index adf3fda98c..0000000000
--- a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmstextxml/runtime/WireFormatJMSTextXMLReferenceInterceptor.java
+++ /dev/null
@@ -1,128 +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.binding.jms.wireformat.jmstextxml.runtime;
-
-
-
-
-import javax.jms.JMSException;
-import javax.jms.Session;
-import javax.xml.namespace.QName;
-
-import org.apache.axiom.om.OMElement;
-import org.apache.tuscany.sca.binding.jms.context.JMSBindingContext;
-import org.apache.tuscany.sca.binding.jms.impl.JMSBinding;
-import org.apache.tuscany.sca.binding.jms.impl.JMSBindingConstants;
-import org.apache.tuscany.sca.binding.jms.impl.JMSBindingException;
-import org.apache.tuscany.sca.binding.jms.provider.JMSMessageProcessor;
-import org.apache.tuscany.sca.binding.jms.provider.JMSMessageProcessorUtil;
-import org.apache.tuscany.sca.binding.jms.provider.JMSResourceFactory;
-import org.apache.tuscany.sca.binding.jms.wireformat.jmstextxml.WireFormatJMSTextXML;
-import org.apache.tuscany.sca.interfacedef.util.FaultException;
-import org.apache.tuscany.sca.invocation.Interceptor;
-import org.apache.tuscany.sca.invocation.Invoker;
-import org.apache.tuscany.sca.invocation.Message;
-import org.apache.tuscany.sca.runtime.RuntimeWire;
-
-/**
- *
- * @version $Rev$ $Date$
- */
-public class WireFormatJMSTextXMLReferenceInterceptor implements Interceptor {
-
- private Invoker next;
- private RuntimeWire runtimeWire;
- private JMSResourceFactory jmsResourceFactory;
- private JMSBinding jmsBinding;
- private JMSMessageProcessor requestMessageProcessor;
- private JMSMessageProcessor responseMessageProcessor;
-
-
- public WireFormatJMSTextXMLReferenceInterceptor(JMSBinding jmsBinding, JMSResourceFactory jmsResourceFactory, RuntimeWire runtimeWire) {
- super();
- this.jmsBinding = jmsBinding;
- this.runtimeWire = runtimeWire;
- this.jmsResourceFactory = jmsResourceFactory;
- this.requestMessageProcessor = JMSMessageProcessorUtil.getRequestMessageProcessor(jmsBinding);
- this.responseMessageProcessor = JMSMessageProcessorUtil.getResponseMessageProcessor(jmsBinding);
- }
-
- public Message invoke(Message msg) {
- if (jmsBinding.getRequestWireFormat() instanceof WireFormatJMSTextXML){
- msg = invokeRequest(msg);
- }
-
- msg = getNext().invoke(msg);
-
- if (jmsBinding.getResponseWireFormat() instanceof WireFormatJMSTextXML){
- msg = invokeResponse(msg);
- }
-
- return msg;
- }
-
- public Message invokeRequest(Message msg) {
- try {
- // get the jms context
- JMSBindingContext context = msg.getBindingContext();
- Session session = context.getJmsSession();
-
- javax.jms.Message requestMsg = requestMessageProcessor.insertPayloadIntoJMSMessage(session, msg.getBody());
- msg.setBody(requestMsg);
-
- requestMsg.setJMSReplyTo(context.getReplyToDestination());
-
- return msg;
- } catch (JMSException e) {
- throw new JMSBindingException(e);
- }
- }
-
- public Message invokeResponse(Message msg) {
- if (msg.getBody() != null){
- javax.jms.Message jmsMsg = (javax.jms.Message)msg.getBody();
- Object response = responseMessageProcessor.extractPayloadFromJMSMessage(jmsMsg);
- if (response != null ){
- msg.setBody(response);
- try {
- if (jmsMsg.getBooleanProperty(JMSBindingConstants.FAULT_PROPERTY)) {
- FaultException e = new FaultException("remote exception", response);
- OMElement om = (OMElement) response;
- e.setFaultName(new QName(om.getNamespace().getNamespaceURI(), om.getLocalName()));
- msg.setFaultBody(e);
- }
- } catch (JMSException e) {
- throw new JMSBindingException(e);
- }
- } else {
- msg.setBody(null);
- }
- }
-
- return msg;
- }
-
- public Invoker getNext() {
- return next;
- }
-
- public void setNext(Invoker next) {
- this.next = next;
- }
-}
diff --git a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmstextxml/runtime/WireFormatJMSTextXMLReferenceProvider.java b/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmstextxml/runtime/WireFormatJMSTextXMLReferenceProvider.java
deleted file mode 100644
index a52ee3df18..0000000000
--- a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmstextxml/runtime/WireFormatJMSTextXMLReferenceProvider.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.binding.jms.wireformat.jmstextxml.runtime;
-
-import org.apache.axiom.om.OMElement;
-import org.apache.tuscany.sca.assembly.Binding;
-import org.apache.tuscany.sca.binding.jms.impl.JMSBinding;
-import org.apache.tuscany.sca.binding.jms.impl.JMSBindingConstants;
-import org.apache.tuscany.sca.binding.jms.wireformat.jmstextxml.WireFormatJMSTextXML;
-import org.apache.tuscany.sca.binding.ws.WebServiceBinding;
-import org.apache.tuscany.sca.binding.ws.WebServiceBindingFactory;
-import org.apache.tuscany.sca.binding.ws.wsdlgen.BindingWSDLGenerator;
-import org.apache.tuscany.sca.core.ExtensionPointRegistry;
-import org.apache.tuscany.sca.interfacedef.InterfaceContract;
-import org.apache.tuscany.sca.invocation.Interceptor;
-import org.apache.tuscany.sca.invocation.Phase;
-import org.apache.tuscany.sca.provider.WireFormatProvider;
-import org.apache.tuscany.sca.runtime.RuntimeComponent;
-import org.apache.tuscany.sca.runtime.RuntimeComponentReference;
-
-/**
- * @version $Rev$ $Date$
- */
-public class WireFormatJMSTextXMLReferenceProvider implements WireFormatProvider {
- private ExtensionPointRegistry registry;
- private RuntimeComponent component;
- private RuntimeComponentReference reference;
- private JMSBinding binding;
- private InterfaceContract interfaceContract;
-
- public WireFormatJMSTextXMLReferenceProvider(ExtensionPointRegistry registry,
- RuntimeComponent component,
- RuntimeComponentReference reference,
- Binding binding) {
- super();
- this.registry = registry;
- this.component = component;
- this.reference = reference;
- this.binding = (JMSBinding)binding;
-
- // configure the reference based on this wire format
-
- // currently maintaining the message processor structure which
- // contains the details of jms message processing so set the message
- // type here if not set explicitly in SCDL
-
- if (this.binding.getRequestWireFormat() instanceof WireFormatJMSTextXML){
- this.binding.setRequestMessageProcessorName(JMSBindingConstants.XML_MP_CLASSNAME);
- }
- if (this.binding.getResponseWireFormat() instanceof WireFormatJMSTextXML){
- this.binding.setResponseMessageProcessorName(JMSBindingConstants.XML_MP_CLASSNAME);
- }
-
- // create a local interface contract that is configured specifically to
- // deal with the data format that this wire format is expecting to sent to
- // and receive from the databinding interceptor. The request/response parts of
- // this interface contract will be copied into the binding interface contract
- // as required
- WebServiceBindingFactory wsFactory = registry.getExtensionPoint(WebServiceBindingFactory.class);
- WebServiceBinding wsBinding = wsFactory.createWebServiceBinding();
- BindingWSDLGenerator.generateWSDL(component, reference, wsBinding, registry, null);
- interfaceContract = wsBinding.getBindingInterfaceContract();
- interfaceContract.getInterface().resetDataBinding(OMElement.class.getName());
- }
-
- protected boolean isOnMessage() {
- InterfaceContract ic = reference.getInterfaceContract();
- if (ic.getInterface().getOperations().size() != 1) {
- return false;
- }
- return "onMessage".equals(ic.getInterface().getOperations().get(0).getName());
- }
-
- public InterfaceContract configureWireFormatInterfaceContract(InterfaceContract interfaceContract){
-
- if (this.interfaceContract != null &&
- !isOnMessage()) {
- if (this.binding.getRequestWireFormat() instanceof WireFormatJMSTextXML){
- // set the request data transformation
- interfaceContract.getInterface().resetInterfaceInputTypes(this.interfaceContract.getInterface());
- }
- if (this.binding.getResponseWireFormat() instanceof WireFormatJMSTextXML){
- // set the response data transformation
- interfaceContract.getInterface().resetInterfaceOutputTypes(this.interfaceContract.getInterface());
- }
- }
-
- return interfaceContract;
- }
-
- public Interceptor createInterceptor() {
- return new WireFormatJMSTextXMLReferenceInterceptor((JMSBinding)binding,
- null,
- reference.getRuntimeWire(binding));
- }
-
- public String getPhase() {
- return Phase.REFERENCE_BINDING_WIREFORMAT;
- }
-
-}
diff --git a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmstextxml/runtime/WireFormatJMSTextXMLServiceInterceptor.java b/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmstextxml/runtime/WireFormatJMSTextXMLServiceInterceptor.java
deleted file mode 100644
index e0a5c86202..0000000000
--- a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmstextxml/runtime/WireFormatJMSTextXMLServiceInterceptor.java
+++ /dev/null
@@ -1,115 +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.binding.jms.wireformat.jmstextxml.runtime;
-
-import javax.jms.Session;
-
-import org.apache.tuscany.sca.binding.jms.context.JMSBindingContext;
-import org.apache.tuscany.sca.binding.jms.impl.JMSBinding;
-import org.apache.tuscany.sca.binding.jms.provider.JMSMessageProcessor;
-import org.apache.tuscany.sca.binding.jms.provider.JMSMessageProcessorUtil;
-import org.apache.tuscany.sca.binding.jms.provider.JMSResourceFactory;
-import org.apache.tuscany.sca.binding.jms.wireformat.jmstextxml.WireFormatJMSTextXML;
-import org.apache.tuscany.sca.interfacedef.Operation;
-import org.apache.tuscany.sca.invocation.Interceptor;
-import org.apache.tuscany.sca.invocation.Invoker;
-import org.apache.tuscany.sca.invocation.Message;
-import org.apache.tuscany.sca.runtime.RuntimeWire;
-
-/**
- * Policy handler to handle PolicySet related to Logging with the QName
- * {http://tuscany.apache.org/xmlns/sca/1.0/impl/java}LoggingPolicy
- *
- * @version $Rev$ $Date$
- */
-public class WireFormatJMSTextXMLServiceInterceptor implements Interceptor {
- private Invoker next;
- private RuntimeWire runtimeWire;
- private JMSResourceFactory jmsResourceFactory;
- private JMSBinding jmsBinding;
- private JMSMessageProcessor requestMessageProcessor;
- private JMSMessageProcessor responseMessageProcessor;
-
- public WireFormatJMSTextXMLServiceInterceptor(JMSBinding jmsBinding, JMSResourceFactory jmsResourceFactory, RuntimeWire runtimeWire) {
- super();
- this.jmsBinding = jmsBinding;
- this.runtimeWire = runtimeWire;
- this.jmsResourceFactory = jmsResourceFactory;
- this.requestMessageProcessor = JMSMessageProcessorUtil.getRequestMessageProcessor(jmsBinding);
- this.responseMessageProcessor = JMSMessageProcessorUtil.getResponseMessageProcessor(jmsBinding);
- }
-
- public Message invoke(Message msg) {
-
- if (jmsBinding.getRequestWireFormat() instanceof WireFormatJMSTextXML){
- msg = invokeRequest(msg);
- }
-
- msg = getNext().invoke(msg);
-
- //if it's oneway return back
- Operation operation = msg.getOperation();
- if (operation != null && operation.isNonBlocking()) {
- return msg;
- }
-
- if (jmsBinding.getResponseWireFormat() instanceof WireFormatJMSTextXML){
- msg = invokeResponse(msg);
- }
-
- return msg;
- }
-
- public Message invokeRequest(Message msg) {
- // get the jms context
- JMSBindingContext context = msg.getBindingContext();
- javax.jms.Message jmsMsg = context.getJmsMsg();
-
- Object requestPayload = requestMessageProcessor.extractPayloadFromJMSMessage(jmsMsg);
- msg.setBody(new Object[] { requestPayload });
-
- return msg;
- }
-
- public Message invokeResponse(Message msg) {
-
- // get the jms context
- JMSBindingContext context = msg.getBindingContext();
- Session session = context.getJmsResponseSession();
-
- javax.jms.Message responseJMSMsg;
- if (msg.isFault()) {
- responseJMSMsg = responseMessageProcessor.createFaultMessage(session, (Throwable)msg.getBody());
- } else {
- responseJMSMsg = responseMessageProcessor.insertPayloadIntoJMSMessage(session, msg.getBody());
- }
-
- msg.setBody(responseJMSMsg);
-
- return msg;
- }
-
- public Invoker getNext() {
- return next;
- }
-
- public void setNext(Invoker next) {
- this.next = next;
- }
-}
diff --git a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmstextxml/runtime/WireFormatJMSTextXMLServiceProvider.java b/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmstextxml/runtime/WireFormatJMSTextXMLServiceProvider.java
deleted file mode 100644
index 7e48dc76a0..0000000000
--- a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmstextxml/runtime/WireFormatJMSTextXMLServiceProvider.java
+++ /dev/null
@@ -1,111 +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.binding.jms.wireformat.jmstextxml.runtime;
-
-import org.apache.axiom.om.OMElement;
-import org.apache.tuscany.sca.assembly.Binding;
-import org.apache.tuscany.sca.binding.jms.impl.JMSBinding;
-import org.apache.tuscany.sca.binding.jms.impl.JMSBindingConstants;
-import org.apache.tuscany.sca.binding.jms.provider.JMSResourceFactory;
-import org.apache.tuscany.sca.binding.jms.wireformat.jmstextxml.WireFormatJMSTextXML;
-import org.apache.tuscany.sca.binding.ws.WebServiceBinding;
-import org.apache.tuscany.sca.binding.ws.WebServiceBindingFactory;
-import org.apache.tuscany.sca.binding.ws.wsdlgen.BindingWSDLGenerator;
-import org.apache.tuscany.sca.core.ExtensionPointRegistry;
-import org.apache.tuscany.sca.interfacedef.InterfaceContract;
-import org.apache.tuscany.sca.invocation.Interceptor;
-import org.apache.tuscany.sca.invocation.Phase;
-import org.apache.tuscany.sca.provider.WireFormatProvider;
-import org.apache.tuscany.sca.runtime.RuntimeComponent;
-import org.apache.tuscany.sca.runtime.RuntimeComponentService;
-
-/**
- * @version $Rev$ $Date$
- */
-public class WireFormatJMSTextXMLServiceProvider implements WireFormatProvider {
- private ExtensionPointRegistry registry;
- private RuntimeComponent component;
- private RuntimeComponentService service;
- private JMSBinding binding;
- private JMSResourceFactory jmsResourceFactory;
- private InterfaceContract interfaceContract;
-
- public WireFormatJMSTextXMLServiceProvider(ExtensionPointRegistry registry,
- RuntimeComponent component,
- RuntimeComponentService service,
- Binding binding,
- JMSResourceFactory jmsResourceFactory) {
- super();
- this.component = component;
- this.service = service;
- this.binding = (JMSBinding)binding;
- this.jmsResourceFactory = jmsResourceFactory;
-
- // configure the service based on this wire format
-
- // currently maintaining the message processor structure which
- // contains the details of jms message processing so set the message
- // type here if not set explicitly in SCDL
- if (this.binding.getRequestWireFormat() instanceof WireFormatJMSTextXML){
- this.binding.setRequestMessageProcessorName(JMSBindingConstants.XML_MP_CLASSNAME);
- }
- if (this.binding.getResponseWireFormat() instanceof WireFormatJMSTextXML){
- this.binding.setResponseMessageProcessorName(JMSBindingConstants.XML_MP_CLASSNAME);
- }
-
- // create a local interface contract that is configured specifically to
- // deal with the data format that this wire format is expecting to sent to
- // and receive from the databinding interceptor. The request/response parts of
- // this interface contract will be copied into the binding interface contract
- // as required
- WebServiceBindingFactory wsFactory = registry.getExtensionPoint(WebServiceBindingFactory.class);
- WebServiceBinding wsBinding = wsFactory.createWebServiceBinding();
- BindingWSDLGenerator.generateWSDL(component, service, wsBinding, registry, null);
- interfaceContract = wsBinding.getBindingInterfaceContract();
- interfaceContract.getInterface().resetDataBinding(OMElement.class.getName());
- }
-
- public InterfaceContract configureWireFormatInterfaceContract(InterfaceContract interfaceContract){
-
- if (this.interfaceContract != null) {
- if (this.binding.getRequestWireFormat() instanceof WireFormatJMSTextXML){
- // set the request data transformation
- interfaceContract.getInterface().resetInterfaceInputTypes(this.interfaceContract.getInterface());
- }
- if (this.binding.getResponseWireFormat() instanceof WireFormatJMSTextXML){
- // set the response data transformation
- interfaceContract.getInterface().resetInterfaceOutputTypes(this.interfaceContract.getInterface());
- }
- }
-
- return interfaceContract;
- }
-
- public Interceptor createInterceptor() {
- return new WireFormatJMSTextXMLServiceInterceptor((JMSBinding)binding,
- jmsResourceFactory,
- service.getRuntimeWire(binding));
- }
-
- public String getPhase() {
- return Phase.SERVICE_BINDING_WIREFORMAT;
- }
-
-}
diff --git a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/resources/META-INF/services/org.apache.tuscany.sca.provider.BindingProviderFactory b/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/resources/META-INF/services/org.apache.tuscany.sca.provider.BindingProviderFactory
deleted file mode 100644
index dec0991984..0000000000
--- a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/resources/META-INF/services/org.apache.tuscany.sca.provider.BindingProviderFactory
+++ /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.
-
-# Implementation class for the binding extension
-org.apache.tuscany.sca.binding.jms.provider.JMSBindingProviderFactory;model=org.apache.tuscany.sca.binding.jms.impl.JMSBinding
diff --git a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/resources/META-INF/services/org.apache.tuscany.sca.provider.OperationSelectorProviderFactory b/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/resources/META-INF/services/org.apache.tuscany.sca.provider.OperationSelectorProviderFactory
deleted file mode 100644
index e98e85c0f2..0000000000
--- a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/resources/META-INF/services/org.apache.tuscany.sca.provider.OperationSelectorProviderFactory
+++ /dev/null
@@ -1,20 +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.
-
-# Implementation class for the binding extension
-org.apache.tuscany.sca.binding.jms.operationselector.jmsdefault.runtime.OperationSelectorJMSDefaultProviderFactory;model=org.apache.tuscany.sca.binding.jms.operationselector.jmsdefault.OperationSelectorJMSDefault
-org.apache.tuscany.sca.binding.jms.operationselector.jmsuserprop.runtime.OperationSelectorJMSUserPropProviderFactory;model=org.apache.tuscany.sca.binding.jms.operationselector.jmsuserprop.OperationSelectorJMSUserProp
diff --git a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/resources/META-INF/services/org.apache.tuscany.sca.provider.WireFormatProviderFactory b/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/resources/META-INF/services/org.apache.tuscany.sca.provider.WireFormatProviderFactory
deleted file mode 100644
index 845c32a7d1..0000000000
--- a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/main/resources/META-INF/services/org.apache.tuscany.sca.provider.WireFormatProviderFactory
+++ /dev/null
@@ -1,24 +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.
-
-# Implementation class for the binding extension
-org.apache.tuscany.sca.binding.jms.wireformat.jmsdefault.runtime.WireFormatJMSDefaultProviderFactory;model=org.apache.tuscany.sca.binding.jms.wireformat.jmsdefault.WireFormatJMSDefault
-org.apache.tuscany.sca.binding.jms.wireformat.jmstextxml.runtime.WireFormatJMSTextXMLProviderFactory;model=org.apache.tuscany.sca.binding.jms.wireformat.jmstextxml.WireFormatJMSTextXML
-org.apache.tuscany.sca.binding.jms.wireformat.jmsbytes.runtime.WireFormatJMSBytesProviderFactory;model=org.apache.tuscany.sca.binding.jms.wireformat.jmsbytes.WireFormatJMSBytes
-org.apache.tuscany.sca.binding.jms.wireformat.jmsbytesxml.runtime.WireFormatJMSBytesXMLProviderFactory;model=org.apache.tuscany.sca.binding.jms.wireformat.jmsbytesxml.WireFormatJMSBytesXML
-org.apache.tuscany.sca.binding.jms.wireformat.jmstext.runtime.WireFormatJMSTextProviderFactory;model=org.apache.tuscany.sca.binding.jms.wireformat.jmstext.WireFormatJMSText
-org.apache.tuscany.sca.binding.jms.wireformat.jmsobject.runtime.WireFormatJMSObjectProviderFactory;model=org.apache.tuscany.sca.binding.jms.wireformat.jmsobject.WireFormatJMSObject
diff --git a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/test/java/org/apache/tuscany/sca/binding/jms/HelloWorldClientImpl.java b/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/test/java/org/apache/tuscany/sca/binding/jms/HelloWorldClientImpl.java
deleted file mode 100644
index fb80362457..0000000000
--- a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/test/java/org/apache/tuscany/sca/binding/jms/HelloWorldClientImpl.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.binding.jms;
-
-import org.osoa.sca.annotations.Reference;
-import org.osoa.sca.annotations.Service;
-
-/**
- * This class implements the HelloWorld service.
- *
- * @version $Rev$ $Date$
- */
-@Service(HelloWorldService.class)
-public class HelloWorldClientImpl implements HelloWorldService {
-
- private HelloWorldService serviceA;
-
- @Reference
- public void setServiceA(HelloWorldService service) {
- this.serviceA = service;
- }
-
- public String sayHello(String name) {
- return serviceA.sayHello(name);
- }
-
-}
diff --git a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/test/java/org/apache/tuscany/sca/binding/jms/HelloWorldService.java b/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/test/java/org/apache/tuscany/sca/binding/jms/HelloWorldService.java
deleted file mode 100644
index 515da3144a..0000000000
--- a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/test/java/org/apache/tuscany/sca/binding/jms/HelloWorldService.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.binding.jms;
-
-import org.osoa.sca.annotations.Remotable;
-
-/**
- * Interface for the HelloWorld Service.
- *
- * @version $Rev$ $Date$
- */
-@Remotable
-public interface HelloWorldService {
- String sayHello(String name);
-}
diff --git a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/test/java/org/apache/tuscany/sca/binding/jms/HelloWorldServiceImpl.java b/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/test/java/org/apache/tuscany/sca/binding/jms/HelloWorldServiceImpl.java
deleted file mode 100644
index a8808c1bd1..0000000000
--- a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/test/java/org/apache/tuscany/sca/binding/jms/HelloWorldServiceImpl.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.binding.jms;
-
-/**
- * Implementation of the HelloWorldService.
- *
- * @version $Rev$ $Date$
- */
-public class HelloWorldServiceImpl implements HelloWorldService {
-
- public String sayHello(String name) {
- return "jmsHello " + name;
- }
-
-}
diff --git a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/test/java/org/apache/tuscany/sca/binding/jms/OperationSelectionTestCaseFIXME.java b/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/test/java/org/apache/tuscany/sca/binding/jms/OperationSelectionTestCaseFIXME.java
deleted file mode 100644
index efd64361dd..0000000000
--- a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/test/java/org/apache/tuscany/sca/binding/jms/OperationSelectionTestCaseFIXME.java
+++ /dev/null
@@ -1,237 +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.binding.jms;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import javax.jms.TextMessage;
-
-import org.apache.tuscany.sca.binding.jms.impl.JMSBinding;
-import org.apache.tuscany.sca.binding.jms.provider.JMSResourceFactory;
-import org.apache.tuscany.sca.interfacedef.Interface;
-import org.apache.tuscany.sca.interfacedef.InterfaceContract;
-import org.apache.tuscany.sca.interfacedef.Operation;
-import org.apache.tuscany.sca.interfacedef.impl.OperationImpl;
-import org.apache.tuscany.sca.runtime.RuntimeComponentService;
-import org.apache.tuscany.sca.runtime.RuntimeWire;
-import org.easymock.EasyMock;
-import org.junit.Test;
-
-/**
- * This unit test is used to ensure that a JMS Message delivered to a Component will select the correct operation based
- * on the details in section 1.5 of the JMS Binding specification.
- *
- * @version $Rev$ $Date$
- */
-public class OperationSelectionTestCaseFIXME {
- /**
- * This test attempts to invoke a Service with a Single method where scaOperationName is not specified in the JMS
- * Message
- * <p>
- * Expected behaviour is that the single method will be invoked as scaOperationName is ignored
- *
- * @throws Exception Failed
- */
- @Test
- public void testServiceWithOnlyOneOperationScaOperationNameNotSpecified() throws Exception {
- // Create the operation we should match
- final Operation expectedOperation = newOperation("myOperation");
-
- // Create the list of operations for the Service
- final List<Operation> operations = new ArrayList<Operation>();
- operations.add(expectedOperation);
-
- // The name of the Operation in the JMS Message - not specified
- final String scaOperationName = null;
-
- // Do the test
- doTestJMSBinding(expectedOperation, operations, scaOperationName);
- }
-
- /**
- * This test attempts to invoke a Service with a Single method where scaOperationName in the JMS Message matches the
- * method name on the Service
- * <p>
- * Expected behaviour is that the single method will be invoked as scaOperationName is ignored
- *
- * @throws Exception Failed
- */
- @Test
- public void testServiceWithOnlyOneOperationScaOperationNameMatches() throws Exception {
- // Create the operation we should match
- final Operation expectedOperation = newOperation("myOperation");
-
- // Create the list of operations for the Service
- final List<Operation> operations = new ArrayList<Operation>();
- operations.add(expectedOperation);
-
- // The name of the Operation in the JMS Message - matches operation name
- final String scaOperationName = expectedOperation.getName();
-
- // Do the test
- doTestJMSBinding(expectedOperation, operations, scaOperationName);
- }
-
- /**
- * This test attempts to invoke a Service with a Single method where scaOperationName in the JMS Message is
- * different the method name on the Service
- * <p>
- * Expected behaviour is that the single method will be invoked as scaOperationName is ignored
- *
- * @throws Exception Failed
- */
- @Test
- public void testServiceWithOnlyOneOperationScaOperationNameDifferent() throws Exception {
- // Create the operation we should match
- final Operation expectedOperation = newOperation("myOperation");
-
- // Create the list of operations for the Service
- final List<Operation> operations = new ArrayList<Operation>();
- operations.add(expectedOperation);
-
- // The name of the Operation in the JMS Message - different to operation name
- final String scaOperationName = "Does Not Match Opeation Name";
-
- // Do the test
- doTestJMSBinding(expectedOperation, operations, scaOperationName);
- }
-
- /**
- * This test attempts to invoke a Service with a multiple operations where scaOperationName specified in the JMS
- * Message matches an operation name
- * <p>
- * Expected behaviour is that the named method will be invoked.
- *
- * @throws Exception Failed
- */
- @Test
- public void testServiceWithMultipleOperationsScaOperationNameSpecified() throws Exception {
- // Create the list of operations for the Service
- final List<Operation> operations = new ArrayList<Operation>();
- for (int i = 0; i < 5; i++) {
- operations.add(newOperation("operation" + i));
- }
-
- // Now try and invoke each operation
- for (Operation expectedOperation : operations) {
- // The name of the Operation in the JMS Message
- final String scaOperationName = expectedOperation.getName();
-
- // Do the test
- doTestJMSBinding(expectedOperation, operations, scaOperationName);
- }
- }
-
- /**
- * This test attempts to invoke a Service with a multiple operations where scaOperationName specified in the JMS
- * Message is not set so we invoke the onMessage() method
- * <p>
- * Expected behaviour is that the onMessage() method should be used instead
- *
- * @throws Exception Failed
- */
- @Test
- public void testServiceWithMultipleOperationsScaOperationNotSpecified() throws Exception {
- // Create the list of operations for the Service
- final List<Operation> operations = new ArrayList<Operation>();
- for (int i = 0; i < 5; i++) {
- operations.add(newOperation("operation" + i));
- }
-
- // Add the onMessage operation to the Service Contract
- final Operation onMessageOperation = newOperation("onMessage");
- operations.add(onMessageOperation);
-
- // The name of the Operation in the JMS Message is not set so it will attempt
- // to invoke the onMessage() method
- final String scaOperationName = null;
-
- // Do the test
- doTestJMSBinding(onMessageOperation, operations, scaOperationName);
- }
-
- /**
- * This is the test method that will attempt to unit test invoking a Service with the specified operations using a
- * JMS Message with the specified scaOperationName to ensure that it invokes the expectedOperation
- *
- * @param expectedOperation The Operation we are expecting to be invoked over JMS
- * @param operations The list of Operations supported by the Service
- * @param scaOperationName The value to set scaOperationName in the JMS Message
- * @throws Exception Failed
- */
- private void doTestJMSBinding(Operation expectedOperation, List<Operation> operations, String scaOperationName)
- throws Exception {
- // Create the test JMS Binding
- final JMSBinding jmsBinding = new JMSBinding();
- JMSResourceFactory jmsResourceFactory = null;
-
- // Extra information for the method we are invoking
- final String operationParams = "Hello";
- final Object operationReturnValue = "Operation Success";
-
- // Mock up the Service. Basically, it is going to call:
- // List<Operation> opList = service.getInterfaceContract().getInterface().getOperations();
- final InterfaceContract ifaceContract = EasyMock.createStrictMock(InterfaceContract.class);
- final RuntimeComponentService service = EasyMock.createStrictMock(RuntimeComponentService.class);
- final Interface iface = EasyMock.createStrictMock(Interface.class);
- EasyMock.expect(iface.getOperations()).andReturn(operations);
- EasyMock.expect(ifaceContract.getInterface()).andReturn(iface);
- EasyMock.expect(service.getInterfaceContract()).andReturn(ifaceContract);
-
- // Mock up getting and invoking the RuntimeWire. It is going to call:
- // service.getRuntimeWire(jmsBinding).invoke(operation, (Object[])requestPayload);
- final RuntimeWire runtimeWire = EasyMock.createStrictMock(RuntimeWire.class);
- EasyMock.expect(service.getRuntimeWire(jmsBinding)).andReturn(runtimeWire);
- EasyMock.expect(runtimeWire.invoke(expectedOperation, new Object[] {operationParams}))
- .andReturn(operationReturnValue);
-
- // Create the JMS Binding Listener
- // final DefaultJMSBindingListener bindingListener = new DefaultJMSBindingListener(jmsBinding, jmsResourceFactory, service, null);
-
- // Simulate a message
- final TextMessage requestJMSMsg = EasyMock.createStrictMock(TextMessage.class);
- EasyMock.expect(requestJMSMsg.getStringProperty("scaOperationName")).andReturn(scaOperationName);
- EasyMock.expect(requestJMSMsg.getText()).andReturn(operationParams);
- EasyMock.expect(requestJMSMsg.getJMSReplyTo()).andReturn(null);
-
- // Lets put all the mocks into replay mode
- // EasyMock.replay(iface);
- EasyMock.replay(ifaceContract);
- EasyMock.replay(service);
- EasyMock.replay(requestJMSMsg);
- EasyMock.replay(runtimeWire);
-
- // Do the test
- // bindingListener.onMessage(requestJMSMsg);
-
- // Verify our Mock objects
- // EasyMock.verify(iface);
- // EasyMock.verify(ifaceContract);
- // EasyMock.verify(service);
- // EasyMock.verify(requestJMSMsg);
- // EasyMock.verify(runtimeWire);
- }
-
- private static Operation newOperation(String name) {
- Operation operation = new OperationImpl();
- operation.setName(name);
- return operation;
- }
-}
diff --git a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/test/resources/simple/client.composite b/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/test/resources/simple/client.composite
deleted file mode 100644
index dcea428493..0000000000
--- a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/test/resources/simple/client.composite
+++ /dev/null
@@ -1,38 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
- * 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.
- -->
-<composite xmlns="http://www.osoa.org/xmlns/sca/1.0"
- name="RPCComposite">
-
- <component name="HelloWorldClient">
- <implementation.java class="org.apache.tuscany.sca.binding.jms.HelloWorldClientImpl"/>
- <reference name="serviceA" />
- </component>
-
- <reference name="serviceA" promote="HelloWorldClient/serviceA">
- <interface.java interface="org.apache.tuscany.sca.binding.jms.HelloWorldService" />
- <binding.jms initialContextFactory="org.apache.activemq.jndi.ActiveMQInitialContextFactory" jndiURL="tcp://localhost:61616">
- <destination name="DestQueueA"/>
- <response>
- <destination name="RespQueueA"/>
- </response>
- </binding.jms>
- </reference>
-
-</composite>
diff --git a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/test/resources/simple/service.composite b/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/test/resources/simple/service.composite
deleted file mode 100644
index 44b7b29610..0000000000
--- a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms-runtime/src/test/resources/simple/service.composite
+++ /dev/null
@@ -1,35 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
- * 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.
- -->
-<composite xmlns="http://www.osoa.org/xmlns/sca/1.0"
- name="RPCComposite">
-
- <component name="HelloWorldService">
- <implementation.java class="org.apache.tuscany.sca.binding.jms.HelloWorldServiceImpl"/>
- <service name="HelloWorldService">
- <binding.jms initialContextFactory="org.apache.activemq.jndi.ActiveMQInitialContextFactory" jndiURL="tcp://localhost:61616">
- <destination name="DestQueueA" create="always"/>
- <response>
- <destination name="RespQueueA" create="always"/>
- </response>
- </binding.jms>
- </service>
- </component>
-
-</composite>
diff --git a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms/LICENSE b/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms/LICENSE
deleted file mode 100644
index 8aa906c321..0000000000
--- a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms/LICENSE
+++ /dev/null
@@ -1,205 +0,0 @@
-
- Apache License
- Version 2.0, January 2004
- http://www.apache.org/licenses/
-
- TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
-
- 1. Definitions.
-
- "License" shall mean the terms and conditions for use, reproduction,
- and distribution as defined by Sections 1 through 9 of this document.
-
- "Licensor" shall mean the copyright owner or entity authorized by
- the copyright owner that is granting the License.
-
- "Legal Entity" shall mean the union of the acting entity and all
- other entities that control, are controlled by, or are under common
- control with that entity. For the purposes of this definition,
- "control" means (i) the power, direct or indirect, to cause the
- direction or management of such entity, whether by contract or
- otherwise, or (ii) ownership of fifty percent (50%) or more of the
- outstanding shares, or (iii) beneficial ownership of such entity.
-
- "You" (or "Your") shall mean an individual or Legal Entity
- exercising permissions granted by this License.
-
- "Source" form shall mean the preferred form for making modifications,
- including but not limited to software source code, documentation
- source, and configuration files.
-
- "Object" form shall mean any form resulting from mechanical
- transformation or translation of a Source form, including but
- not limited to compiled object code, generated documentation,
- and conversions to other media types.
-
- "Work" shall mean the work of authorship, whether in Source or
- Object form, made available under the License, as indicated by a
- copyright notice that is included in or attached to the work
- (an example is provided in the Appendix below).
-
- "Derivative Works" shall mean any work, whether in Source or Object
- form, that is based on (or derived from) the Work and for which the
- editorial revisions, annotations, elaborations, or other modifications
- represent, as a whole, an original work of authorship. For the purposes
- of this License, Derivative Works shall not include works that remain
- separable from, or merely link (or bind by name) to the interfaces of,
- the Work and Derivative Works thereof.
-
- "Contribution" shall mean any work of authorship, including
- the original version of the Work and any modifications or additions
- to that Work or Derivative Works thereof, that is intentionally
- submitted to Licensor for inclusion in the Work by the copyright owner
- or by an individual or Legal Entity authorized to submit on behalf of
- the copyright owner. For the purposes of this definition, "submitted"
- means any form of electronic, verbal, or written communication sent
- to the Licensor or its representatives, including but not limited to
- communication on electronic mailing lists, source code control systems,
- and issue tracking systems that are managed by, or on behalf of, the
- Licensor for the purpose of discussing and improving the Work, but
- excluding communication that is conspicuously marked or otherwise
- designated in writing by the copyright owner as "Not a Contribution."
-
- "Contributor" shall mean Licensor and any individual or Legal Entity
- on behalf of whom a Contribution has been received by Licensor and
- subsequently incorporated within the Work.
-
- 2. Grant of Copyright License. Subject to the terms and conditions of
- this License, each Contributor hereby grants to You a perpetual,
- worldwide, non-exclusive, no-charge, royalty-free, irrevocable
- copyright license to reproduce, prepare Derivative Works of,
- publicly display, publicly perform, sublicense, and distribute the
- Work and such Derivative Works in Source or Object form.
-
- 3. Grant of Patent License. Subject to the terms and conditions of
- this License, each Contributor hereby grants to You a perpetual,
- worldwide, non-exclusive, no-charge, royalty-free, irrevocable
- (except as stated in this section) patent license to make, have made,
- use, offer to sell, sell, import, and otherwise transfer the Work,
- where such license applies only to those patent claims licensable
- by such Contributor that are necessarily infringed by their
- Contribution(s) alone or by combination of their Contribution(s)
- with the Work to which such Contribution(s) was submitted. If You
- institute patent litigation against any entity (including a
- cross-claim or counterclaim in a lawsuit) alleging that the Work
- or a Contribution incorporated within the Work constitutes direct
- or contributory patent infringement, then any patent licenses
- granted to You under this License for that Work shall terminate
- as of the date such litigation is filed.
-
- 4. Redistribution. You may reproduce and distribute copies of the
- Work or Derivative Works thereof in any medium, with or without
- modifications, and in Source or Object form, provided that You
- meet the following conditions:
-
- (a) You must give any other recipients of the Work or
- Derivative Works a copy of this License; and
-
- (b) You must cause any modified files to carry prominent notices
- stating that You changed the files; and
-
- (c) You must retain, in the Source form of any Derivative Works
- that You distribute, all copyright, patent, trademark, and
- attribution notices from the Source form of the Work,
- excluding those notices that do not pertain to any part of
- the Derivative Works; and
-
- (d) If the Work includes a "NOTICE" text file as part of its
- distribution, then any Derivative Works that You distribute must
- include a readable copy of the attribution notices contained
- within such NOTICE file, excluding those notices that do not
- pertain to any part of the Derivative Works, in at least one
- of the following places: within a NOTICE text file distributed
- as part of the Derivative Works; within the Source form or
- documentation, if provided along with the Derivative Works; or,
- within a display generated by the Derivative Works, if and
- wherever such third-party notices normally appear. The contents
- of the NOTICE file are for informational purposes only and
- do not modify the License. You may add Your own attribution
- notices within Derivative Works that You distribute, alongside
- or as an addendum to the NOTICE text from the Work, provided
- that such additional attribution notices cannot be construed
- as modifying the License.
-
- You may add Your own copyright statement to Your modifications and
- may provide additional or different license terms and conditions
- for use, reproduction, or distribution of Your modifications, or
- for any such Derivative Works as a whole, provided Your use,
- reproduction, and distribution of the Work otherwise complies with
- the conditions stated in this License.
-
- 5. Submission of Contributions. Unless You explicitly state otherwise,
- any Contribution intentionally submitted for inclusion in the Work
- by You to the Licensor shall be under the terms and conditions of
- this License, without any additional terms or conditions.
- Notwithstanding the above, nothing herein shall supersede or modify
- the terms of any separate license agreement you may have executed
- with Licensor regarding such Contributions.
-
- 6. Trademarks. This License does not grant permission to use the trade
- names, trademarks, service marks, or product names of the Licensor,
- except as required for reasonable and customary use in describing the
- origin of the Work and reproducing the content of the NOTICE file.
-
- 7. Disclaimer of Warranty. Unless required by applicable law or
- agreed to in writing, Licensor provides the Work (and each
- Contributor provides its Contributions) on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
- implied, including, without limitation, any warranties or conditions
- of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
- PARTICULAR PURPOSE. You are solely responsible for determining the
- appropriateness of using or redistributing the Work and assume any
- risks associated with Your exercise of permissions under this License.
-
- 8. Limitation of Liability. In no event and under no legal theory,
- whether in tort (including negligence), contract, or otherwise,
- unless required by applicable law (such as deliberate and grossly
- negligent acts) or agreed to in writing, shall any Contributor be
- liable to You for damages, including any direct, indirect, special,
- incidental, or consequential damages of any character arising as a
- result of this License or out of the use or inability to use the
- Work (including but not limited to damages for loss of goodwill,
- work stoppage, computer failure or malfunction, or any and all
- other commercial damages or losses), even if such Contributor
- has been advised of the possibility of such damages.
-
- 9. Accepting Warranty or Additional Liability. While redistributing
- the Work or Derivative Works thereof, You may choose to offer,
- and charge a fee for, acceptance of support, warranty, indemnity,
- or other liability obligations and/or rights consistent with this
- License. However, in accepting such obligations, You may act only
- on Your own behalf and on Your sole responsibility, not on behalf
- of any other Contributor, and only if You agree to indemnify,
- defend, and hold each Contributor harmless for any liability
- incurred by, or claims asserted against, such Contributor by reason
- of your accepting any such warranty or additional liability.
-
- END OF TERMS AND CONDITIONS
-
- APPENDIX: How to apply the Apache License to your work.
-
- To apply the Apache License to your work, attach the following
- boilerplate notice, with the fields enclosed by brackets "[]"
- replaced with your own identifying information. (Don't include
- the brackets!) The text should be enclosed in the appropriate
- comment syntax for the file format. We also recommend that a
- file or class name and description of purpose be included on the
- same "printed page" as the copyright notice for easier
- identification within third-party archives.
-
- Copyright [yyyy] [name of copyright owner]
-
- Licensed 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.
-
-
-
diff --git a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms/NOTICE b/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms/NOTICE
deleted file mode 100644
index fdfa0e9faa..0000000000
--- a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms/NOTICE
+++ /dev/null
@@ -1,6 +0,0 @@
-${pom.name}
-Copyright (c) 2005 - 2008 The Apache Software Foundation
-
-This product includes software developed by
-The Apache Software Foundation (http://www.apache.org/).
-
diff --git a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms/pom.xml b/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms/pom.xml
deleted file mode 100644
index f1c8081e86..0000000000
--- a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms/pom.xml
+++ /dev/null
@@ -1,66 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
- * 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.
--->
-<project>
- <modelVersion>4.0.0</modelVersion>
- <parent>
- <groupId>org.apache.tuscany.sca</groupId>
- <artifactId>tuscany-modules</artifactId>
- <version>1.5.1</version>
- <relativePath>../pom.xml</relativePath>
- </parent>
- <artifactId>tuscany-binding-jms</artifactId>
- <name>Apache Tuscany SCA JMS Binding Model</name>
-
- <dependencies>
-
- <dependency>
- <groupId>org.apache.tuscany.sca</groupId>
- <artifactId>tuscany-assembly-xml</artifactId>
- <version>1.5.1</version>
- </dependency>
-
- <dependency>
- <groupId>junit</groupId>
- <artifactId>junit</artifactId>
- <version>4.5</version>
- <scope>test</scope>
- </dependency>
-
- </dependencies>
-
- <build>
- <plugins>
- <plugin>
- <groupId>org.apache.felix</groupId>
- <artifactId>maven-bundle-plugin</artifactId>
-
- <configuration>
- <instructions>
- <Bundle-Version>${tuscany.version}</Bundle-Version>
- <Bundle-SymbolicName>org.apache.tuscany.sca.binding.jms</Bundle-SymbolicName>
- <Bundle-Description>${pom.name}</Bundle-Description>
- <Export-Package>org.apache.tuscany.sca.binding.jms*</Export-Package>
- </instructions>
- </configuration>
- </plugin>
- </plugins>
- </build>
-
-</project>
diff --git a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms/src/main/java/org/apache/tuscany/sca/binding/jms/impl/BindingProperty.java b/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms/src/main/java/org/apache/tuscany/sca/binding/jms/impl/BindingProperty.java
deleted file mode 100644
index 277cba43ca..0000000000
--- a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms/src/main/java/org/apache/tuscany/sca/binding/jms/impl/BindingProperty.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.binding.jms.impl;
-
-public class BindingProperty {
-
- private String name;
- private String type;
- private Object value;
-
- public BindingProperty(String name, String type, Object value) {
- this.name = name;
- this.type = type;
- this.value = value;
- }
-
- public String getName() {
- return name;
- }
-
- public String getType() {
- return type;
- }
-
- public Object getValue() {
- return value;
- }
-
- @Override
- public boolean equals( Object object ) {
- return ( object instanceof BindingProperty ) && equals( (BindingProperty) object );
- }
-
- /**
- * Test whether this and another Binding Property are equal.
- * @param property
- * @return true if all fields of property match.
- */
- public boolean equals( BindingProperty property ) {
- if ( name == null && property.getName() != null )
- return false;
- else if ( !name.equals( property.getName() ))
- return false;
- else if ( type == null && property.getType() != null )
- return false;
- else if ( !type.equals( property.getType() ))
- return false;
- else if ( value == null && property.getValue() != null )
- return false;
- else if ( !value.equals( property.getValue() ))
- return false;
- return true;
- }
-}
diff --git a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms/src/main/java/org/apache/tuscany/sca/binding/jms/impl/JMSBinding.java b/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms/src/main/java/org/apache/tuscany/sca/binding/jms/impl/JMSBinding.java
deleted file mode 100644
index 4c9e2fff7e..0000000000
--- a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms/src/main/java/org/apache/tuscany/sca/binding/jms/impl/JMSBinding.java
+++ /dev/null
@@ -1,970 +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.binding.jms.impl;
-
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Map;
-import java.util.Set;
-import java.util.TreeSet;
-
-import javax.xml.namespace.QName;
-
-import org.apache.tuscany.sca.assembly.BindingRRB;
-import org.apache.tuscany.sca.assembly.ConfiguredOperation;
-import org.apache.tuscany.sca.assembly.DefinitionElement;
-import org.apache.tuscany.sca.assembly.OperationSelector;
-import org.apache.tuscany.sca.assembly.OperationsConfigurator;
-import org.apache.tuscany.sca.assembly.WireFormat;
-import org.apache.tuscany.sca.policy.Intent;
-import org.apache.tuscany.sca.policy.IntentAttachPointType;
-import org.apache.tuscany.sca.policy.PolicySet;
-import org.apache.tuscany.sca.policy.PolicySetAttachPoint;
-
-/**
- * Models a binding to a JMS resource.
- *
- * @version $Rev$ $Date$
- */
-
-public class JMSBinding implements BindingRRB, PolicySetAttachPoint, OperationsConfigurator, DefinitionElement {
-
- @Override
- public Object clone() throws CloneNotSupportedException {
- return super.clone();
- }
-
- // properties required to implement the Tuscany binding extension SPI
- private String uri = null;
- private String name = null;
- private boolean unresolved = false;
- private List<Object> extensions = new ArrayList<Object>();
-
- // properties required by PolicySetAttachPoint
- private List<PolicySet> policySets = new ArrayList<PolicySet>();
- private List<PolicySet> applicablePolicySets = new ArrayList<PolicySet>();
-
- // properties required by IntentAttachPoint
- private List<Intent> requiredIntents = new ArrayList<Intent>();
- private IntentAttachPointType intentAttachPointType;
-
- // properties required to describe configured operations
- private List<ConfiguredOperation> configuredOperations = new ArrayList<ConfiguredOperation>();
-
- // properties required by DefinitionElement @575803A
- private String targetNamespace;
-
- // Properties required to describe the JMS binding model
-
- private String correlationScheme = JMSBindingConstants.CORRELATE_MSG_ID;
- private String initialContextFactoryName;
- private String jndiURL;
-
- private String destinationName = null;
- private String destinationType = JMSBindingConstants.DESTINATION_TYPE_QUEUE;
- private String destinationCreate = JMSBindingConstants.CREATE_IF_NOT_EXIST;
- private Map<String, BindingProperty> destinationProperties = new HashMap<String, BindingProperty>();
-
- private String connectionFactoryName = null;
- private String connectionFactoryCreate = JMSBindingConstants.CREATE_IF_NOT_EXIST;
- private Map<String, BindingProperty> connectionFactoryProperties = new HashMap<String, BindingProperty>();
-
- private String activationSpecName = null;
- private String activationSpecCreate = null;
- private Map<String, BindingProperty> activationSpecProperties = new HashMap<String, BindingProperty>();
-
- private String resourceAdapterName;;
- private Map<String, BindingProperty> resourceAdapterProperties = new HashMap<String, BindingProperty>();
-
- private String responseActivationSpecName = null;
- private String responseActivationSpecCreate = null;
- private Map<String, BindingProperty> responseActivationSpecProperties = new HashMap<String, BindingProperty>();
-
- private String responseDestinationName = null;
- private String responseDestinationType = JMSBindingConstants.DESTINATION_TYPE_QUEUE;
- private String responseDestinationCreate = JMSBindingConstants.CREATE_IF_NOT_EXIST;
- private Map<String, BindingProperty> responseDestinationProperties = new HashMap<String, BindingProperty>();
-
- private String responseConnectionFactoryName = null;
- private String responseConnectionFactoryCreate = JMSBindingConstants.CREATE_IF_NOT_EXIST;
- private Map<String, BindingProperty> responseConnectionFactoryProperties = new HashMap<String, BindingProperty>();
-
- // Provides the name of the factory that interfaces to the JMS API for us.
- private String jmsResourceFactoryName = JMSBindingConstants.DEFAULT_RF_CLASSNAME;
-
- // Message processors used to deal with the request and response messages
- public String requestMessageProcessorName = JMSBindingConstants.DEFAULT_MP_CLASSNAME;
- public String responseMessageProcessorName = JMSBindingConstants.DEFAULT_MP_CLASSNAME;
-
- // The JMS message property used to hold the name of the operation being called
- private String operationSelectorPropertyName = JMSBindingConstants.DEFAULT_OPERATION_PROP_NAME;
-
- // If the operation selector is derived automatically from the service interface it's stored here
- private String operationSelectorName = null;
-
- private boolean containsHeaders = false;
- private String replyTo;
- private String jmsType;
- private String jmsCorrelationId;
- private Boolean deliveryModePersistent;
- private Long timeToLive;
- private Integer jmsPriority;
-
- private Map<String, Object> properties = new HashMap<String, Object>();
- private Map<String, Map<String, Object>> operationProperties = new HashMap<String, Map<String,Object>>();
- private Map<String, String> nativeOperationNames = new HashMap<String, String>();
- private Map<String, String> operationJMSTypes = new HashMap<String, String>();
- private Map<String, String> operationJMSCorrelationIds = new HashMap<String, String>();
- private Map<String, Boolean> operationJMSDeliveryModes = new HashMap<String, Boolean>();
- private Map<String, Long> operationJMSTimeToLives = new HashMap<String, Long>();
- private Map<String, Integer> operationJMSPriorities = new HashMap<String, Integer>();
- private Map<String, Map<String, BindingProperty>> operationPropertiesProperties = new HashMap<String, Map<String,BindingProperty>>();
-
- private String jmsSelector;
- private QName requestConnectionName;
- private QName responseConnectionName;
- private QName operationPropertiesName;
- private JMSBinding requestConnectionBinding;
- private JMSBinding responseConnectionBinding;
- private JMSBinding operationPropertiesBinding;
-
- private WireFormat requestWireFormat;
- private WireFormat responseWireFormat;
- private OperationSelector operationSelector;
-
- public JMSBinding() {
- super();
- }
-
- // operations required by Binding
- public String getURI() {
- return this.uri;
- }
-
- public void setURI(String uri) {
- this.uri = uri;
- }
-
- public String getName() {
- return this.name;
- }
-
- public void setName(String name) {
- this.name = name;
- }
-
- public boolean isUnresolved() {
- return this.unresolved;
- }
-
- public void setUnresolved(boolean unresolved) {
- this.unresolved = unresolved;
- }
-
- public List<Object> getExtensions() {
- return extensions;
- }
-
- public WireFormat getRequestWireFormat() {
- return requestWireFormat;
- }
-
- public void setRequestWireFormat(WireFormat wireFormat) {
- this.requestWireFormat = wireFormat;
- }
-
- public WireFormat getResponseWireFormat() {
- return responseWireFormat;
- }
-
- public void setResponseWireFormat(WireFormat wireFormat) {
- this.responseWireFormat = wireFormat;
- }
-
- public OperationSelector getOperationSelector() {
- return operationSelector;
- }
-
- public void setOperationSelector(OperationSelector operationSelector) {
- this.operationSelector = operationSelector;
- }
-
- // Methods for getting/setting JMS binding model information
- // as derived from the XML of the binding.jms element
-
- public void setCorrelationScheme(String correlationScheme) {
- this.correlationScheme = correlationScheme;
- }
-
- public String getCorrelationScheme() {
- return correlationScheme;
- }
-
- public String getInitialContextFactoryName() {
- return initialContextFactoryName;
- }
-
- public void setInitialContextFactoryName(String initialContextFactoryName) {
- this.initialContextFactoryName = initialContextFactoryName;
- }
-
- public String getJndiURL() {
- return this.jndiURL;
- }
-
- public void setJndiURL(String jndiURL) {
- this.jndiURL = jndiURL;
- }
-
- public String getDestinationName() {
- if (requestConnectionBinding != null && requestConnectionBinding.getDestinationName() != null) {
- return requestConnectionBinding.getDestinationName();
- } else {
- return destinationName;
- }
- }
-
- public void setDestinationName(String destinationName) {
- this.destinationName = destinationName;
- }
-
- public String getDestinationType() {
- if (requestConnectionBinding != null && requestConnectionBinding.getDestinationType() != null) {
- return requestConnectionBinding.getDestinationType();
- } else {
- return destinationType;
- }
- }
-
- public void setDestinationType(String destinationType) {
- this.destinationType = destinationType;
- }
-
- public String getDestinationCreate() {
- if (requestConnectionBinding != null && requestConnectionBinding.getDestinationCreate() != null) {
- return requestConnectionBinding.getDestinationCreate();
- } else {
- return this.destinationCreate;
- }
- }
-
- public void setDestinationCreate(String create) {
- this.destinationCreate = create;
- }
-
- public String getConnectionFactoryName() {
- if (requestConnectionBinding != null && requestConnectionBinding.getConnectionFactoryName() != null) {
- return requestConnectionBinding.getConnectionFactoryName();
- } else {
- return connectionFactoryName;
- }
- }
-
- public void setConnectionFactoryName(String connectionFactoryName) {
- this.connectionFactoryName = connectionFactoryName;
- }
-
- public String getConnectionFactoryCreate() {
- if (requestConnectionBinding != null && requestConnectionBinding.getConnectionFactoryCreate() != null) {
- return requestConnectionBinding.getConnectionFactoryCreate();
- } else {
- return this.connectionFactoryCreate;
- }
- }
-
- public void setConnectionFactoryCreate(String create) {
- this.connectionFactoryCreate = create;
- }
-
- public String getResourceAdapterName() {
- return resourceAdapterName;
- }
-
- public void setResourceAdapterName(String name) {
- resourceAdapterName = name;
- }
-
- public String getActivationSpecName() {
- if (requestConnectionBinding != null && requestConnectionBinding.getActivationSpecName() != null) {
- return requestConnectionBinding.getActivationSpecName();
- } else {
- return activationSpecName;
- }
- }
-
- public void setActivationSpecName(String activationSpecName) {
- this.activationSpecName = activationSpecName;
- }
-
- public String getActivationSpecCreate() {
- if (requestConnectionBinding != null && requestConnectionBinding.getActivationSpecCreate() != null) {
- return requestConnectionBinding.getActivationSpecCreate();
- } else {
- return this.activationSpecCreate;
- }
- }
-
- public void setActivationSpecCreate(String create) {
- this.activationSpecCreate = create;
- }
-
- public String getResponseDestinationName() {
- if (requestConnectionBinding != null && requestConnectionBinding.getResponseDestinationName() != null) {
- return requestConnectionBinding.getResponseDestinationName();
- } else {
- return this.responseDestinationName;
- }
- }
-
- public void setResponseDestinationName(String name) {
- this.responseDestinationName = name;
- }
-
- public String getResponseDestinationType() {
- if (requestConnectionBinding != null && requestConnectionBinding.getResponseDestinationType() != null) {
- return requestConnectionBinding.getResponseDestinationType();
- } else {
- return this.responseDestinationType;
- }
- }
-
- public void setResponseDestinationType(String type) {
- this.responseDestinationType = type;
- }
-
- public String getResponseDestinationCreate() {
- if (requestConnectionBinding != null && requestConnectionBinding.getResponseDestinationCreate() != null) {
- return requestConnectionBinding.getResponseDestinationCreate();
- } else {
- return this.responseDestinationCreate;
- }
- }
-
- public void setResponseDestinationCreate(String create) {
- this.responseDestinationCreate = create;
- }
-
- public String getResponseConnectionFactoryName() {
- if (requestConnectionBinding != null && requestConnectionBinding.getResponseConnectionFactoryName() != null) {
- return requestConnectionBinding.getResponseConnectionFactoryName();
- } else {
- return responseConnectionFactoryName;
- }
- }
-
- public void setResponseConnectionFactoryName(String connectionFactoryName) {
- this.responseConnectionFactoryName = connectionFactoryName;
- }
-
- public String getResponseConnectionFactoryCreate() {
- if (requestConnectionBinding != null && requestConnectionBinding.getResponseConnectionFactoryCreate() != null) {
- return requestConnectionBinding.getResponseConnectionFactoryCreate();
- } else {
- return this.responseConnectionFactoryCreate;
- }
- }
-
- public void setResponseConnectionFactoryCreate(String create) {
- this.responseConnectionFactoryCreate = create;
- }
-
- public String getResponseActivationSpecName() {
- if (requestConnectionBinding != null && requestConnectionBinding.getResponseActivationSpecName() != null) {
- return requestConnectionBinding.getResponseActivationSpecName();
- } else {
- return responseActivationSpecName;
- }
- }
-
- public void setResponseActivationSpecName(String activationSpecName) {
- this.responseActivationSpecName = activationSpecName;
- }
-
- public String getResponseActivationSpecCreate() {
- if (requestConnectionBinding != null && requestConnectionBinding.getResponseActivationSpecCreate() != null) {
- return requestConnectionBinding.getResponseActivationSpecCreate();
- } else {
- return this.responseActivationSpecCreate;
- }
- }
-
- public void setResponseActivationSpecCreate(String create) {
- this.responseActivationSpecCreate = create;
- }
-
- public String getJmsResourceFactoryName() {
- return jmsResourceFactoryName;
- }
-
- public void setJmsResourceFactoryName(String jmsResourceFactoryName) {
- this.jmsResourceFactoryName = jmsResourceFactoryName;
- }
-
- public void setRequestMessageProcessorName(String name) {
- this.requestMessageProcessorName = name;
- }
-
- public String getRequestMessageProcessorName() {
- return requestMessageProcessorName;
- }
-
- public void setResponseMessageProcessorName(String name) {
- this.responseMessageProcessorName = name;
- }
-
- public String getResponseMessageProcessorName() {
- return responseMessageProcessorName;
- }
-
- public String getOperationSelectorPropertyName() {
- return operationSelectorPropertyName;
- }
-
- public void setOperationSelectorPropertyName(String operationSelectorPropertyName) {
- this.operationSelectorPropertyName = operationSelectorPropertyName;
- }
-
- public String getOperationSelectorName() {
- return operationSelectorName;
- }
-
- public void setOperationSelectorName(String operationSelectorName) {
- this.operationSelectorName = operationSelectorName;
- }
-
- public void setHeaders( boolean containsHeaders ) {
- this.containsHeaders = containsHeaders;
- }
-
- public boolean containsHeaders() {
- return this.containsHeaders;
- }
-
- public String getReplyTo() {
- return replyTo;
- }
-
- public void setReplyTo(String replyTo) {
- this.replyTo = replyTo;
- }
-
- public String getJMSType() {
- return jmsType;
- }
- public void setJMSType(String jmsType) {
- setHeaders( true );
- this.jmsType = jmsType;
- }
-
- public String getJMSCorrelationId() {
- return jmsCorrelationId;
- }
-
- public void setJMSCorrelationId(String jmsCorrelationId) {
- setHeaders( true );
- this.jmsCorrelationId = jmsCorrelationId;
- }
-
- public Boolean isdeliveryModePersistent() {
- return deliveryModePersistent;
- }
- public void setJMSDeliveryMode(boolean persistent) {
- setHeaders( true );
- this.deliveryModePersistent = Boolean.valueOf(persistent);
- }
-
- public Integer getJMSPriority() {
- return jmsPriority;
- }
-
- public void setJMSPriority(int jmsPriority) {
- setHeaders( true );
- this.jmsPriority = Integer.valueOf(jmsPriority);
- }
-
- public Long getJMSTimeToLive() {
- return timeToLive;
- }
-
- public void setJMSTimeToLive(long timeToLive) {
- setHeaders( true );
- this.timeToLive = Long.valueOf(timeToLive);
- }
-
- public Set<String> getPropertyNames() {
- return properties.keySet();
- }
-
- public Object getProperty(String name) {
- return properties.get(name);
- }
-
- public void setProperty(String name, Object value) {
- properties.put(name, value);
- }
-
- protected Map<String, Object> getProperties() {
- return properties;
- }
-
- /**
- * Adds an operationName to this binding.
- * @param opName
- */
- public void addOperationName(String opName) {
- Map<String, Object> props = operationProperties.get(opName);
- if (props == null) {
- props = new HashMap<String, Object>();
- operationProperties.put(opName, props);
- }
- }
-
- /**
- * Provides set of operation names in this binding.
- * @return a Set<String> of operation names
- */
- public Set<String> getOperationNames() {
- if (operationPropertiesBinding != null) {
- return operationPropertiesBinding.getOperationNames();
- } else {
- // Make a defensive copy since key changes affect map, map changes affect keys.
- Set<String> opNames = operationProperties.keySet();
- Set<String> opNamesCopy = new TreeSet<String>( opNames );
- return opNamesCopy;
- }
- }
-
- public Map<String, Object> getOperationProperties(String opName) {
- if (operationPropertiesBinding != null) {
- return operationPropertiesBinding.getOperationProperties(opName);
- } else {
- return operationProperties.get(opName);
- }
- }
-
- public void setOperationProperty(String opName, String propName, Object value) {
- Map<String, Object> props = operationProperties.get(opName);
- if (props == null) {
- props = new HashMap<String, Object>();
- operationProperties.put(opName, props);
- }
- props.put(propName, value);
- }
-
- /**
- * Provides the value of a property for a given operation
- * @param opName is the name of the operation in this binding.
- * @param propName is the key name for the property
- * @return Object representing the property value for this property name. Returns
- * null for non existant operation name or property name.
- */
- public Object getOperationProperty(String opName, String propName ) {
- if (operationPropertiesBinding != null) {
- return operationPropertiesBinding.getOperationProperty(opName, propName);
- } else {
- Map<String, Object> props = operationProperties.get(opName);
- if (props == null) {
- return null;
- }
- return props.get(propName);
- }
- }
-
- public boolean hasNativeOperationName(String opName) {
- if (operationPropertiesBinding != null) {
- return operationPropertiesBinding.hasNativeOperationName(opName);
- } else {
- return nativeOperationNames.containsKey(opName);
- }
- }
-
- public String getNativeOperationName(String opName) {
- if (operationPropertiesBinding != null && operationPropertiesBinding.getNativeOperationName(opName) != null) {
- return operationPropertiesBinding.getNativeOperationName(opName);
- } else {
- if (nativeOperationNames.containsKey(opName)) {
- return nativeOperationNames.get(opName);
- } else {
- return opName;
- }
- }
- }
-
- public void setNativeOperationName(String opName, String nativeOpName) {
- this.nativeOperationNames .put(opName, nativeOpName);
- }
-
- public String getOperationJMSType(String opName) {
- if (operationPropertiesBinding != null && operationPropertiesBinding.getOperationJMSType(opName) != null) {
- return operationPropertiesBinding.getOperationJMSType(opName);
- } else {
- if (operationJMSTypes.containsKey(opName)) {
- return operationJMSTypes.get(opName);
- } else {
- return jmsType;
- }
- }
- }
- public void setOperationJMSType(String opName, String jmsType) {
- this.operationJMSTypes.put(opName, jmsType);
- }
-
- public String getOperationJMSCorrelationId(String opName) {
- if (operationPropertiesBinding != null) {
- if (operationPropertiesBinding.getOperationJMSCorrelationId(opName) != null) {
- return operationPropertiesBinding.getOperationJMSCorrelationId(opName);
- } else {
- return jmsCorrelationId;
- }
- } else {
- if (operationJMSCorrelationIds.containsKey(opName)) {
- return operationJMSCorrelationIds.get(opName);
- } else {
- return jmsCorrelationId;
- }
- }
- }
- public void setOperationJMSCorrelationId(String opName, String jmsCorrelationId) {
- operationJMSCorrelationIds.put(opName, jmsCorrelationId);
- }
-
- public Boolean getOperationJMSDeliveryMode(String opName) {
- if (operationPropertiesBinding != null) {
- if (operationPropertiesBinding.getOperationJMSDeliveryMode(opName) != null) {
- return operationPropertiesBinding.getOperationJMSDeliveryMode(opName);
- } else {
- return deliveryModePersistent;
- }
- } else {
- if (operationJMSDeliveryModes.containsKey(opName)) {
- return operationJMSDeliveryModes.get(opName);
- } else {
- return deliveryModePersistent;
- }
- }
- }
- public void setOperationJMSDeliveryMode(String opName, boolean b) {
- operationJMSDeliveryModes.put(opName, b);
- }
-
- public Long getOperationJMSTimeToLive(String opName) {
- if (operationPropertiesBinding != null) {
- if (operationPropertiesBinding.getOperationJMSTimeToLive(opName) != null) {
- return operationPropertiesBinding.getOperationJMSTimeToLive(opName);
- } else {
- return timeToLive;
- }
- } else {
- if (operationJMSTimeToLives.containsKey(opName)) {
- return operationJMSTimeToLives.get(opName);
- } else {
- return timeToLive;
- }
- }
- }
- public void setOperationJMSTimeToLive(String opName, Long ttl) {
- operationJMSTimeToLives.put(opName, ttl);
- }
-
- public Integer getOperationJMSPriority(String opName) {
- if (operationPropertiesBinding != null) {
- if (operationPropertiesBinding.getOperationJMSPriority(opName) != null) {
- return operationPropertiesBinding.getOperationJMSPriority(opName);
- } else {
- return jmsPriority;
- }
- } else {
- if (operationJMSPriorities.containsKey(opName)) {
- return operationJMSPriorities.get(opName);
- } else {
- return jmsPriority;
- }
- }
- }
- public void setOperationJMSPriority(String opName, int p) {
- operationJMSPriorities.put(opName, p);
- }
-
- public String getJMSSelector() {
- return jmsSelector;
- }
- public void setJMSSelector(String jmsSelector) {
- this.jmsSelector = jmsSelector;
- }
-
- public QName getRequestConnectionName() {
- return requestConnectionName;
- }
-
- public void setRequestConnectionName(QName requestConnectionName) {
- this.requestConnectionName = requestConnectionName;
- }
-
- public void setResponseConnectionName(QName responseConnectionName) {
- this.responseConnectionName = responseConnectionName;
- }
-
- public QName getResponseConnectionName() {
- return responseConnectionName;
- }
-
- public void setRequestConnectionBinding(JMSBinding binding) {
- this.requestConnectionBinding = binding;
- }
- public JMSBinding getRequestConnectionBinding() {
- return requestConnectionBinding;
- }
-
- public void setResponseConnectionBinding(JMSBinding binding) {
- this.responseConnectionBinding = binding;
- }
- public JMSBinding getResponseConnectionBinding() {
- return responseConnectionBinding;
- }
-
- public void setOperationPropertiesName(QName nameValue) {
- this.operationPropertiesName = nameValue;
- }
- public QName getOperationPropertiesName() {
- return operationPropertiesName;
- }
-
- public void setOperationPropertiesBinding(JMSBinding binding) {
- this.operationPropertiesBinding = binding;
- }
- public JMSBinding getOperationPropertiesBinding() {
- return operationPropertiesBinding;
- }
-
- // operations required by PolicySetAttachPoint
- public List<PolicySet> getPolicySets() {
- return policySets;
- }
-
- public List<PolicySet> getApplicablePolicySets() {
- return applicablePolicySets;
- }
-
- // operations required by IntentAttachPoint
- public List<Intent> getRequiredIntents() {
- return requiredIntents;
- }
-
- public IntentAttachPointType getType() {
- return intentAttachPointType;
- }
-
- public void setType(IntentAttachPointType intentAttachPointType) {
- this.intentAttachPointType = intentAttachPointType;
- }
-
- public Map<String, BindingProperty> getDestinationProperties() {
- return destinationProperties;
- }
-
- public Map<String, BindingProperty> getConnectionFactoryProperties() {
- return connectionFactoryProperties;
- }
-
- public Map<String, BindingProperty> getResourceAdapterProperties() {
- return resourceAdapterProperties;
- }
-
- public Map<String, BindingProperty> getActivationSpecProperties() {
- return activationSpecProperties;
- }
-
- public Map<String, BindingProperty> getResponseActivationSpecProperties() {
- return responseActivationSpecProperties;
- }
-
- public Map<String, BindingProperty> getResponseDestinationProperties() {
- return responseDestinationProperties;
- }
-
- public Map<String, BindingProperty> getResponseConnectionFactoryProperties() {
- return responseConnectionFactoryProperties;
- }
-
- public Map<String, BindingProperty> getOperationPropertiesProperties(String opName) {
- if (operationPropertiesProperties.get(opName)==null) {
- operationPropertiesProperties.put(opName, new HashMap<String, BindingProperty>());
- }
- return operationPropertiesProperties.get(opName);
- }
-
- public List<ConfiguredOperation> getConfiguredOperations() {
- return configuredOperations;
- }
-
- public void setConfiguredOperations(List<ConfiguredOperation> configuredOperations) {
- this.configuredOperations = configuredOperations;
- }
-
- public String getTargetNamespace() {
- return targetNamespace;
- }
-
- public void setTargetNamespace(String ns) {
- targetNamespace = ns;
- }
-
- // hashCode() is here because binding elements in definitions documents are added
- // to the model resolver hashmap. The namespace and name are keys.
- @Override
- public int hashCode() {
- return (String.valueOf(getTargetNamespace()) + String.valueOf(getName())).hashCode();
- }
-
- @Override
- public boolean equals( Object object ) {
- return ( object instanceof JMSBinding ) && equals( (JMSBinding) object );
- }
-
- /**
- * Compares two JMS bindings for equality.
- * Because of the many fields, this comparison is rather large O(n).
- * @param binding test binding for equality comparison
- * @return boolean stating whether objects are equal
- */
- public boolean equals( JMSBinding binding ) {
- // If the target namespace is set, this binding came from a definitions document.
- // The target namespace and name are used as keys for doing model resolver hashmap lookups.
- // Only the target namespace and name can be compared.
- if (this.targetNamespace != null) {
- if ( !optStringEquals( this.targetNamespace, binding.getTargetNamespace() )) return false;
- if ( !optStringEquals( this.name, binding.getName() )) return false;
- return true;
- }
-
- // Test all fields for equality.
- // First test simple fields to quickly weed out mismatches.
- if ( !optStringEquals( this.uri, binding.getURI() )) return false;
- if ( !optStringEquals( this.name, binding.getName() )) return false;
- if ( !optStringEquals( this.targetNamespace, binding.getTargetNamespace() )) return false;
- if ( !optStringEquals( this.destinationName, binding.getDestinationName() )) return false;
- if ( !optStringEquals( this.correlationScheme, binding.getCorrelationScheme() )) return false;
- if ( !optStringEquals( this.initialContextFactoryName, binding.getInitialContextFactoryName() )) return false;
- if ( !optStringEquals( this.jndiURL, binding.getJndiURL() )) return false;
- if ( !optStringEquals( this.requestConnectionName, binding.getRequestConnectionName() )) return false;
- if ( !optStringEquals( this.responseConnectionName, binding.getResponseConnectionName() )) return false;
- if ( !optStringEquals( this.jmsSelector, binding.getJMSSelector() )) return false;
- if ( !equals( properties, binding.getProperties()) )
- return false;
-
- // Test operation properties
- Set<String> operationNamesA = this.getOperationNames();
- Set<String> operationNamesB = binding.getOperationNames();
- if ( operationNamesA != null && operationNamesB != null ) {
- if ( operationNamesA == null && operationNamesB != null ) return false;
- if ( operationNamesA != null && operationNamesB == null ) return false;
- if ( operationNamesA.size() != operationNamesB.size() ) return false;
- for(Iterator<String> it=operationNamesA.iterator(); it.hasNext(); ) {
- String opName = it.next();
- if ( !operationNamesB.contains( opName )) {
- return false;
- }
- }
- }
-
- // Destination properties
- if ( !optStringEquals( this.getDestinationName(), binding.getDestinationName() )) return false;
- if ( !optStringEquals( this.getDestinationType(), binding.getDestinationType() )) return false;
-
- // Connection factory properties
- if ( !optStringEquals( this.getConnectionFactoryName(), binding.getConnectionFactoryName() )) return false;
-
- // Activation spec properties
- if ( !optStringEquals( this.getActivationSpecName(), binding.getActivationSpecName() )) return false;
-
- // Response properties
- if ( !optStringEquals( this.getResponseDestinationName(), binding.getResponseDestinationName() )) return false;
- if ( !optStringEquals( this.getResponseActivationSpecName(), binding.getResponseActivationSpecName() )) return false;
- if ( !optStringEquals( this.getResponseConnectionFactoryName(), binding.getResponseConnectionFactoryName() )) return false;
-
- // Resource adapter
- if ( !optStringEquals( this.getResourceAdapterName(), binding.getResourceAdapterName() )) return false;
-
- // Configured operations
- if ( this.configuredOperations.size() != binding.getConfiguredOperations().size() ) return false;
-
- // wire format
- if ( this.getRequestWireFormat().getClass() != binding.getRequestWireFormat().getClass()) return false;
- if ( this.getResponseWireFormat().getClass() != binding.getResponseWireFormat().getClass()) return false;
-
- // operation selector
- if ( this.getOperationSelector().getClass() != binding.getOperationSelector().getClass()) return false;
-
-
- // Other fields could also be checked for equality. See class fields for details.
- return true;
- }
-
- /**
- * Tests if Strings are equal.
- * Either one may be null. This will match true if both
- * are null or both are non-null and equal.
- * @param p1 property list 1
- * @param p2 property list 2
- * @return whether or not properties are equal
- */
- public static boolean optStringEquals( Object s1, Object s2 ) {
- if ( s1 == null && s2 == null ) return true;
- if ( s1 != null && s2 == null ) return false;
- if ( s1 == null && s2 != null ) return false;
- return s1.equals( s2 );
- }
-
- /**
- * Tests if two property lists are equal.
- * Either one may be null. This will match true if both
- * are null or both are non-null and equal.
- * @param p1 property list 1
- * @param p2 property list 2
- * @return whether or not properties are equal
- */
- public static boolean equals( Map<String, Object> p1, Map<String, Object> p2 ) {
- if ( p1 == null && p2 == null)
- return true;
- if ( p1 == null || p2 == null)
- return false;
- if ( p1.size() != p2.size())
- return false;
-
- // For both the keys and values of a map
- for (Iterator it=p1.entrySet().iterator(); it.hasNext(); ) {
- Map.Entry entry = (Map.Entry)it.next();
- Object k1 = entry.getKey();
- Object v1 = entry.getValue();
- Object v2 = p2.get( k1 );
-
- if ( v1 == null && v2 != null )
- return false;
- if ( v1 != null && v2 == null )
- return false;
- if ( !v1.equals( v2 ))
- return false;
- }
-
- return true;
- }
-
-}
diff --git a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms/src/main/java/org/apache/tuscany/sca/binding/jms/impl/JMSBindingConstants.java b/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms/src/main/java/org/apache/tuscany/sca/binding/jms/impl/JMSBindingConstants.java
deleted file mode 100644
index 83c213997f..0000000000
--- a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms/src/main/java/org/apache/tuscany/sca/binding/jms/impl/JMSBindingConstants.java
+++ /dev/null
@@ -1,75 +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.binding.jms.impl;
-
-import java.util.Arrays;
-import java.util.List;
-
-import javax.xml.namespace.QName;
-
-import org.apache.tuscany.sca.assembly.xml.Constants;
-
-/**
- * Constants for the JMS binding.
- *
- * @version $Rev$ $Date$
- */
-public interface JMSBindingConstants {
-
- // Constants used when describing the JMS binding
- // model and for setting up defaults
- String BINDING_JMS = "binding.jms";
- QName BINDING_JMS_QNAME = new QName(Constants.SCA10_NS, BINDING_JMS);
- String CORRELATE_MSG_ID = "requestmsgidtocorrelid";
- String CORRELATE_CORRELATION_ID = "requestcorrelidtocorrelid";
- String CORRELATE_NONE = "none";
- List<String> VALID_CORRELATION_SCHEMES =
- Arrays.asList(new String[] {CORRELATE_MSG_ID, CORRELATE_CORRELATION_ID, CORRELATE_NONE});
- String DESTINATION_TYPE_QUEUE = "queue"; // 0
- String DESTINATION_TYPE_TOPIC = "topic"; // 1
- List<String> VALID_DESTINATION_TYPES =
- Arrays.asList(new String[] {DESTINATION_TYPE_QUEUE, DESTINATION_TYPE_TOPIC});
- String CREATE_ALWAYS = "always";
- String CREATE_NEVER = "never";
- String CREATE_IF_NOT_EXIST = "ifnotexist";
- String DEFAULT_CONTEXT_FACTORY_NAME = "org.apache.activemq.jndi.ActiveMQInitialContextFactory";
- String DEFAULT_JNDI_URL = "tcp://localhost:61616";
- int DEFAULT_TIME_TO_LIVE = 20000; // in milliseconds
- int DEFAULT_PRIORITY = 1;
- int NON_PERSISTENT = 1; // Maps to javax.jms.DeliveryMode
- String DEFAULT_RF_CLASSNAME = "org.apache.tuscany.sca.host.jms.activemq.JMSResourceFactoryImpl";
- String XML_MP_CLASSNAME = "org.apache.tuscany.sca.binding.jms.provider.XMLTextMessageProcessor";
- String TEXT_MP_CLASSNAME = "org.apache.tuscany.sca.binding.jms.provider.TextMessageProcessor";
- String OBJECT_MP_CLASSNAME = "org.apache.tuscany.sca.binding.jms.provider.ObjectMessageProcessor";
- String BYTES_MP_CLASSNAME = "org.apache.tuscany.sca.binding.jms.provider.BytesMessageProcessor";
- String XML_BYTES_MP_CLASSNAME = "org.apache.tuscany.sca.binding.jms.provider.XMLBytesMessageProcessor";
- String DEFAULT_MP_CLASSNAME = "org.apache.tuscany.sca.binding.jms.provider.DefaultMessageProcessor";
- String DEFAULT_OPERATION_PROP_NAME = "scaOperationName";
-
- String FAULT_PROPERTY = "org_apache_tuscany_sca_fault";
-
- String CALLBACK_ID_PROPERTY = "CallbackID";
- String CALLBACK_Q_PROPERTY = "scaCallbackQueue";
- String CONVERSATION_ID_PROPERTY = "scaConversationId";
-
- // XML element and attribute names
- String HEADERS = "headers";
-
- int MSG_CTXT_POSITION = 0;
-}
diff --git a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms/src/main/java/org/apache/tuscany/sca/binding/jms/impl/JMSBindingException.java b/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms/src/main/java/org/apache/tuscany/sca/binding/jms/impl/JMSBindingException.java
deleted file mode 100644
index 0928e02082..0000000000
--- a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms/src/main/java/org/apache/tuscany/sca/binding/jms/impl/JMSBindingException.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.binding.jms.impl;
-
-/**
- * Base exception for the JMSBinding.
- *
- * @version $Rev$ $Date$
- */
-public class JMSBindingException extends RuntimeException {
- private static final long serialVersionUID = 1L;
-
- public JMSBindingException() {
- super();
- }
-
- public JMSBindingException(String arg0, Throwable arg1) {
- super(arg0, arg1);
- }
-
- public JMSBindingException(String arg0) {
- super(arg0);
- }
-
- public JMSBindingException(Throwable arg0) {
- super(arg0);
- }
-
-}
diff --git a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms/src/main/java/org/apache/tuscany/sca/binding/jms/impl/JMSBindingProcessor.java b/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms/src/main/java/org/apache/tuscany/sca/binding/jms/impl/JMSBindingProcessor.java
deleted file mode 100644
index 49875d84d0..0000000000
--- a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms/src/main/java/org/apache/tuscany/sca/binding/jms/impl/JMSBindingProcessor.java
+++ /dev/null
@@ -1,1560 +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.binding.jms.impl;
-
-import static javax.xml.stream.XMLStreamConstants.END_ELEMENT;
-import static javax.xml.stream.XMLStreamConstants.START_ELEMENT;
-
-import java.util.HashMap;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Map;
-import java.util.Set;
-import java.util.StringTokenizer;
-
-import javax.xml.namespace.QName;
-import javax.xml.stream.XMLStreamException;
-import javax.xml.stream.XMLStreamReader;
-import javax.xml.stream.XMLStreamWriter;
-
-import org.apache.tuscany.sca.assembly.ConfiguredOperation;
-import org.apache.tuscany.sca.assembly.OperationSelector;
-import org.apache.tuscany.sca.assembly.OperationsConfigurator;
-import org.apache.tuscany.sca.assembly.WireFormat;
-import org.apache.tuscany.sca.assembly.xml.ConfiguredOperationProcessor;
-import org.apache.tuscany.sca.assembly.xml.Constants;
-import org.apache.tuscany.sca.assembly.xml.PolicyAttachPointProcessor;
-import org.apache.tuscany.sca.binding.jms.operationselector.jmsdefault.OperationSelectorJMSDefault;
-import org.apache.tuscany.sca.binding.jms.wireformat.jmsdefault.WireFormatJMSDefault;
-import org.apache.tuscany.sca.binding.jms.wireformat.jmsobject.WireFormatJMSObject;
-import org.apache.tuscany.sca.binding.jms.wireformat.jmstext.WireFormatJMSText;
-import org.apache.tuscany.sca.binding.jms.wireformat.jmstextxml.WireFormatJMSTextXML;
-import org.apache.tuscany.sca.contribution.ModelFactoryExtensionPoint;
-import org.apache.tuscany.sca.contribution.processor.BaseStAXArtifactProcessor;
-import org.apache.tuscany.sca.contribution.processor.StAXArtifactProcessor;
-import org.apache.tuscany.sca.contribution.resolver.ModelResolver;
-import org.apache.tuscany.sca.contribution.service.ContributionReadException;
-import org.apache.tuscany.sca.contribution.service.ContributionResolveException;
-import org.apache.tuscany.sca.contribution.service.ContributionWriteException;
-import org.apache.tuscany.sca.monitor.Monitor;
-import org.apache.tuscany.sca.monitor.Problem;
-import org.apache.tuscany.sca.monitor.Problem.Severity;
-import org.apache.tuscany.sca.monitor.impl.ProblemImpl;
-import org.apache.tuscany.sca.policy.PolicyFactory;
-
-/**
- * A processor to read the XML that describes the JMS binding...
- *
- * <binding.jms correlationScheme="string"?
- * initialContextFactory="xs:anyURI"?
- * jndiURL="xs:anyURI"?
- * requestConnection="QName"?
- * responseConnection="QName"?
- * operationProperties="QName"?
- * ...>
- *
- * <headers JMSType="string"?
- * JMSCorrelationID="string"?
- * JMSDeliveryMode="string"?
- * JMSTimeToLive="int"?
- * JMSPriority="string"?>
- * <property name="NMTOKEN" type="NMTOKEN">*
- * </headers>?
- *
- * <destination name="xs:anyURI" type="string"? create="string"?>
- * <property name="NMTOKEN" type="NMTOKEN">*
- * </destination>?
- *
- * <connectionFactory name="xs:anyURI" create="string"?>
- * <property name="NMTOKEN" type="NMTOKEN">*
- * </connectionFactory>?
- *
- * <activationSpec name="xs:anyURI" create="string"?>
- * <property name="NMTOKEN" type="NMTOKEN">*
- * </activationSpec>?
- *
- * <response>
- * <destination name="xs:anyURI" type="string"? create="string"?>
- * <property name="NMTOKEN" type="NMTOKEN">*
- * </destination>?
- *
- * <connectionFactory name="xs:anyURI" create="string"?>
- * <property name="NMTOKEN" type="NMTOKEN">*
- * </connectionFactory>?
- *
- * <activationSpec name="xs:anyURI" create="string"?>
- * <property name="NMTOKEN" type="NMTOKEN">*
- * </activationSpec>?
- *
- * <wireFormat.someWireFormat/>?
- * </response>?
- *
- * <complexType name="SubscriptionHeaders">
- * <attribute name="JMSSelector" type="string"/>
- * </complexType>
- *
- * <resourceAdapter name="NMTOKEN">?
- * <property name="NMTOKEN" type="NMTOKEN">*
- * </resourceAdapter>?
- *
- * <operationProperties name="string" nativeOperation="string"?>
- * <property name="NMTOKEN" type="NMTOKEN">*
- * <headers JMSType="string"?
- * JMSCorrelationID="string"?
- * JMSDeliveryMode="string"?
- * JMSTimeToLive="int"?
- * JMSPriority="string"?>
- * <property name="NMTOKEN" type="NMTOKEN">*
- * </headers>?
- * </operationProperties>*
- *
- * <wireFormat.someWireFormat/>?
- * </binding.jms>
- *
- * Parsing error messages are recorded locally and reported as validation exceptions. Parsing
- * warnings do not cause validation exceptions.
- *
- * @version $Rev$ $Date$
- */
-
-public class JMSBindingProcessor extends BaseStAXArtifactProcessor implements StAXArtifactProcessor<JMSBinding> {
- private PolicyFactory policyFactory;
- private PolicyAttachPointProcessor policyProcessor;
- private ConfiguredOperationProcessor configuredOperationProcessor;
- protected StAXArtifactProcessor<Object> extensionProcessor;
- private Monitor monitor;
-
- private ModelFactoryExtensionPoint modelFactories; // DOB
- public JMSBindingProcessor(ModelFactoryExtensionPoint modelFactories, StAXArtifactProcessor<Object> extensionProcessor, Monitor monitor) {
- this.policyFactory = modelFactories.getFactory(PolicyFactory.class);
- this.policyProcessor = new PolicyAttachPointProcessor(policyFactory);
- this.configuredOperationProcessor =
- new ConfiguredOperationProcessor(modelFactories, this.monitor);
- this.extensionProcessor = extensionProcessor;
- this.monitor = monitor;
- this.modelFactories = modelFactories;
- }
-
- /**
- * Report a error.
- *
- * @param problems
- * @param message
- * @param model
- */
- private void warning(String message, Object model, Object... messageParameters) {
- if (monitor != null) {
- Problem problem = new ProblemImpl(this.getClass().getName(), "binding-jms-validation-messages", Severity.WARNING, model, message, (Object[])messageParameters);
- monitor.problem(problem);
- }
- }
-
- /**
- * Report an error.
- * One side effect is that error messages are saved for future validation calls.
- *
- * @param problems
- * @param message
- * @param model
- */
- private void error(String message, Object model, Object... messageParameters) {
- if (monitor != null) {
- Problem problem = new ProblemImpl(this.getClass().getName(), "binding-jms-validation-messages", Severity.ERROR, model, message, (Object[])messageParameters);
- monitor.problem(problem);
- }
- }
-
- public QName getArtifactType() {
- return JMSBindingConstants.BINDING_JMS_QNAME;
- }
-
- public Class<JMSBinding> getModelType() {
- return JMSBinding.class;
- }
-
- public JMSBinding read(XMLStreamReader reader) throws ContributionReadException, XMLStreamException {
- JMSBinding jmsBinding = new JMSBinding();
- // Reset validation message to keep track of validation issues.
-
- // Read policies
- policyProcessor.readPolicies(jmsBinding, reader);
-
- // Read binding name
- String name = reader.getAttributeValue(null, "name");
- if (name != null) {
- jmsBinding.setName(name);
- }
-
- // Read binding URI
- String uri = reader.getAttributeValue(null, "uri");
- if (uri != null && uri.length() > 0) {
- parseURI(uri, jmsBinding);
- }
-
- // Read correlation scheme
- String correlationScheme = reader.getAttributeValue(null, "correlationScheme");
- if (correlationScheme != null && correlationScheme.length() > 0) {
- if (JMSBindingConstants.VALID_CORRELATION_SCHEMES.contains(correlationScheme.toLowerCase())) {
- jmsBinding.setCorrelationScheme(correlationScheme);
- } else {
- error("InvalidCorrelationScheme", reader, correlationScheme);
- }
- }
-
- // Read initial context factory
- String initialContextFactory = reader.getAttributeValue(null, "initialContextFactory");
- if (initialContextFactory != null && initialContextFactory.length() > 0) {
- jmsBinding.setInitialContextFactoryName(initialContextFactory);
- }
-
- // Read JNDI URL
- String jndiURL = reader.getAttributeValue(null, "jndiURL");
- if (jndiURL != null && jndiURL.length() > 0) {
- jmsBinding.setJndiURL(jndiURL);
- }
-
- // Read message processor class name
- // TODO - maintain this for the time being but move over to
- // configuring wire formats instead of message processors
- String messageProcessorName = reader.getAttributeValue(null, "messageProcessor");
- if (messageProcessorName != null && messageProcessorName.length() > 0) {
- if ("XMLTextMessage".equalsIgnoreCase(messageProcessorName)) {
- // may be overwritten be real wire format later
- jmsBinding.setRequestWireFormat(new WireFormatJMSTextXML());
- jmsBinding.setResponseWireFormat(jmsBinding.getRequestWireFormat());
- } else if ("TextMessage".equalsIgnoreCase(messageProcessorName)) {
- // may be overwritten be real wire format later
- jmsBinding.setRequestWireFormat(new WireFormatJMSText());
- jmsBinding.setResponseWireFormat(jmsBinding.getRequestWireFormat());
- } else if ("ObjectMessage".equalsIgnoreCase(messageProcessorName)) {
- // may be overwritten be real wire format later
- jmsBinding.setRequestWireFormat(new WireFormatJMSObject());
- jmsBinding.setResponseWireFormat(jmsBinding.getRequestWireFormat());
- } else {
- jmsBinding.setRequestMessageProcessorName(messageProcessorName);
- jmsBinding.setResponseMessageProcessorName(messageProcessorName);
- // exploit the text wire format code to drive the user selected
- // message processor
- jmsBinding.setRequestWireFormat(new WireFormatJMSText());
- jmsBinding.setResponseWireFormat(jmsBinding.getRequestWireFormat());
- }
- }
-
- String requestConnectionName = reader.getAttributeValue(null, "requestConnection");
- if (requestConnectionName != null && requestConnectionName.length() > 0) {
- jmsBinding.setRequestConnectionName(getQNameValue(reader, requestConnectionName));
- }
- String responseConnectionName = reader.getAttributeValue(null, "responseConnection");
- if (responseConnectionName != null && responseConnectionName.length() > 0) {
- jmsBinding.setResponseConnectionName(getQNameValue(reader, responseConnectionName));
- }
-
- String operationPropertiesName = reader.getAttributeValue(null, "operationProperties");
- if (operationPropertiesName != null && operationPropertiesName.length() > 0) {
- jmsBinding.setOperationPropertiesName(getQNameValue(reader, operationPropertiesName));
- }
-
- // Read sub-elements of binding.jms
- boolean endFound = false;
- while (!endFound) {
- int fg = reader.next();
- switch (fg) {
- case START_ELEMENT:
- String elementName = reader.getName().getLocalPart();
- if ("destination".equals(elementName)) {
- parseDestination(reader, jmsBinding);
- } else if ("connectionFactory".equals(elementName)) {
- parseConnectionFactory(reader, jmsBinding);
- } else if ("activationSpec".equals(elementName)) {
- parseActivationSpec(reader, jmsBinding);
- } else if ("response".equals(elementName)) {
- parseResponse(reader, jmsBinding);
- } else if ("resourceAdapter".equals(elementName)) {
- parseResourceAdapter(reader, jmsBinding);
- } else if ("headers".equals(elementName)) {
- parseHeaders(reader, jmsBinding);
- } else if ("operationProperties".equals(elementName)) {
- parseOperationProperties(reader, jmsBinding);
- } else if ("SubscriptionHeaders".equals(elementName)) {
- parseSubscriptionHeaders(reader, jmsBinding);
- } else if (Constants.OPERATION_QNAME.equals(reader.getName())) {
- ConfiguredOperation confOp = configuredOperationProcessor.read(reader);
- if (confOp != null) {
- ((OperationsConfigurator)jmsBinding).getConfiguredOperations().add(confOp);
- }
- } else {
- Object extension = extensionProcessor.read(reader);
- if (extension != null) {
- if (extension instanceof WireFormat) {
- if (jmsBinding.getRequestWireFormat() == null) {
- jmsBinding.setRequestWireFormat((WireFormat) extension);
- } else {
- throw new ContributionReadException("The request wireformat has already been defined. " + "Only one request wire format can be specified.");
- }
- } else if (extension instanceof OperationSelector) {
- if (jmsBinding.getOperationSelector() == null) {
- jmsBinding.setOperationSelector((OperationSelector) extension);
- } else {
- throw new ContributionReadException("More than one operation selector has been specified. " + "Only one operation selector can be specified.");
- }
-
- } else {
- error("UnexpectedElement", reader, extension.toString());
- }
- }
- }
- //reader.next();
- break;
- case END_ELEMENT:
- QName x = reader.getName();
- if (Constants.OPERATION.equals(x.getLocalPart())) break;
- // This assumption is not captured in schema, which isn't good, but will probably be fine for now.
- // A better solution might be to require each processor to advance to its own END_ELEMENT.
- if (x.getLocalPart().startsWith("wireFormat.") || x.getLocalPart().startsWith("operationSelector.")) {
- break;
- }
- if (x.equals(JMSBindingConstants.BINDING_JMS_QNAME)) {
- endFound = true;
- } else {
- error("UnexpectedElement: expected " + JMSBindingConstants.BINDING_JMS_QNAME + ", found " + x.toString(),
- reader, x.toString());
- }
- }
- }
-
- // if no operation selector is specified then assume the default
- if (jmsBinding.getOperationSelector() == null){
- jmsBinding.setOperationSelector(new OperationSelectorJMSDefault());
- }
-
- // if no request wire format specified then assume the default
- if (jmsBinding.getRequestWireFormat() == null){
- jmsBinding.setRequestWireFormat(new WireFormatJMSDefault());
- }
-
- // if no response wire format specific then assume the same as the request
- if (jmsBinding.getResponseWireFormat() == null){
- jmsBinding.setResponseWireFormat(jmsBinding.getRequestWireFormat());
- }
-
- validate( jmsBinding );
-
- return jmsBinding;
- }
-
- protected void parseURI(String uri, JMSBinding jmsBinding) {
- if (!uri.startsWith("jms:")) {
- error("MustStartWithSchema", jmsBinding, uri);
- return;
- }
- int i = uri.indexOf('?');
- if (i >= 0) {
- StringTokenizer st = new StringTokenizer(uri.substring(i+1),"&");
- while (st.hasMoreTokens()) {
- String s = st.nextToken();
- if (s.startsWith("connectionFactoryName=")) {
- jmsBinding.setConnectionFactoryName(s.substring(22));
- } else {
- error("UnknownTokenInURI", jmsBinding, s, uri);
- return;
- }
- }
- jmsBinding.setDestinationName(uri.substring(4, i));
- } else {
- jmsBinding.setDestinationName(uri.substring(4));
- }
- }
-
- public void resolve(JMSBinding model, ModelResolver resolver) throws ContributionResolveException {
- if (model.getRequestConnectionName() != null) {
- model.setRequestConnectionBinding(getConnectionBinding(model, "requestConnection", model.getRequestConnectionName(), resolver));
- }
- if (model.getResponseConnectionName() != null) {
- model.setResponseConnectionBinding(getConnectionBinding(model, "responseConnection", model.getResponseConnectionName(), resolver));
- }
- if (model.getOperationPropertiesName() != null) {
- model.setOperationPropertiesBinding(getConnectionBinding(model, "operationProperties", model.getOperationPropertiesName(), resolver));
- }
- }
-
- @SuppressWarnings("unchecked")
- private JMSBinding getConnectionBinding(JMSBinding model, String attrName, QName bindingName, ModelResolver resolver) {
- JMSBinding binding = new JMSBinding();
- binding.setTargetNamespace(bindingName.getNamespaceURI());
- binding.setName(bindingName.getLocalPart());
- binding.setUnresolved(true);
- binding = resolver.resolveModel(JMSBinding.class, binding);
- if (binding.isUnresolved())
- error("BindingNotFound", model, attrName, bindingName);
- return binding;
- }
-
- private void parseDestination(XMLStreamReader reader, JMSBinding jmsBinding) throws XMLStreamException {
- String name = reader.getAttributeValue(null, "name");
- if (name != null && name.length() > 0) {
- jmsBinding.setDestinationName(name);
- }
-
- String type = reader.getAttributeValue(null, "type");
- if (type != null && type.length() > 0) {
- warning("DoesntProcessDestinationType", jmsBinding);
- if (JMSBindingConstants.DESTINATION_TYPE_QUEUE.equalsIgnoreCase(type)) {
- jmsBinding.setDestinationType(JMSBindingConstants.DESTINATION_TYPE_QUEUE);
- } else if (JMSBindingConstants.DESTINATION_TYPE_TOPIC.equalsIgnoreCase(type)) {
- jmsBinding.setDestinationType(JMSBindingConstants.DESTINATION_TYPE_TOPIC);
- } else {
- error("InvalidDestinationType", reader, type);
- }
- }
-
- String create = reader.getAttributeValue(null, "create");
- if (create != null && create.length() > 0) {
- jmsBinding.setDestinationCreate(create);
- }
-
- jmsBinding.getDestinationProperties().putAll(parseBindingProperties(reader));
- }
-
- private void parseConnectionFactory(XMLStreamReader reader, JMSBinding jmsBinding) throws XMLStreamException {
- String name = reader.getAttributeValue(null, "name");
- if (name != null && name.length() > 0) {
- jmsBinding.setConnectionFactoryName(name);
- } else {
- error("MissingConnectionFactoryName", reader);
- }
- jmsBinding.getConnectionFactoryProperties().putAll(parseBindingProperties(reader));
- }
-
- private void parseActivationSpec(XMLStreamReader reader, JMSBinding jmsBinding) throws XMLStreamException {
- String name = reader.getAttributeValue(null, "name");
- if (name != null && name.length() > 0) {
- jmsBinding.setActivationSpecName(name);
- } else {
- warning("MissingActivationSpecName", reader);
- }
- jmsBinding.getActivationSpecProperties().putAll(parseBindingProperties(reader));
- }
-
- private void parseResponseDestination(XMLStreamReader reader, JMSBinding jmsBinding) throws XMLStreamException {
- String name = reader.getAttributeValue(null, "name");
- if (name != null && name.length() > 0) {
- jmsBinding.setResponseDestinationName(name);
- }
-
- String type = reader.getAttributeValue(null, "type");
- if (type != null && type.length() > 0) {
- warning("DoesntProcessResponseDestinationType", jmsBinding);
- if (JMSBindingConstants.DESTINATION_TYPE_QUEUE.equalsIgnoreCase(type)) {
- jmsBinding.setResponseDestinationType(JMSBindingConstants.DESTINATION_TYPE_QUEUE);
- } else if (JMSBindingConstants.DESTINATION_TYPE_TOPIC.equalsIgnoreCase(type)) {
- jmsBinding.setResponseDestinationType(JMSBindingConstants.DESTINATION_TYPE_TOPIC);
- } else {
- error("InvalidResponseDestinationType", reader, type);
- }
- }
-
- String create = reader.getAttributeValue(null, "create");
- if (create != null && create.length() > 0) {
- jmsBinding.setResponseDestinationCreate(create);
- }
-
- jmsBinding.getResponseDestinationProperties().putAll(parseBindingProperties(reader));
- }
-
- private void parseResponseConnectionFactory(XMLStreamReader reader, JMSBinding jmsBinding) throws XMLStreamException {
- String name = reader.getAttributeValue(null, "name");
- if (name != null && name.length() > 0) {
- jmsBinding.setResponseConnectionFactoryName(name);
- } else {
- warning("MissingResponseConnectionFactory", reader);
- }
- jmsBinding.getResponseConnectionFactoryProperties().putAll(parseBindingProperties(reader));
- }
-
- private void parseResponseActivationSpec(XMLStreamReader reader, JMSBinding jmsBinding) throws XMLStreamException {
- String name = reader.getAttributeValue(null, "name");
- if (name != null && name.length() > 0) {
- jmsBinding.setResponseActivationSpecName(name);
- } else {
- warning("MissingResponseActivationSpec", reader);
- }
- jmsBinding.getResponseActivationSpecProperties().putAll(parseBindingProperties(reader));
- }
-
- private void parseResponse(XMLStreamReader reader, JMSBinding jmsBinding) throws ContributionReadException, XMLStreamException {
- // Read sub-elements of response
- while (true) {
- switch (reader.next()) {
- case START_ELEMENT:
- String elementName = reader.getName().getLocalPart();
- if ("destination".equals(elementName)) {
- parseResponseDestination(reader, jmsBinding);
- } else if ("connectionFactory".equals(elementName)) {
- parseResponseConnectionFactory(reader, jmsBinding);
- } else if ("activationSpec".equals(elementName)) {
- parseResponseActivationSpec(reader, jmsBinding);
- } else {
- Object extension = extensionProcessor.read(reader);
- if (extension != null) {
- if (extension instanceof WireFormat) {
- if (jmsBinding.getResponseWireFormat() == null) {
- jmsBinding.setResponseWireFormat((WireFormat)extension);
- } else {
- throw new ContributionReadException("The response wireformat has already been defined. " + "Only one response wire format can be specified.");
- }
- } else {
- error("UnexpectedElement", reader, extension.toString());
- }
- }
- reader.next();
- }
- //reader.next();
- break;
- case END_ELEMENT:
- QName x = reader.getName();
- if (x.getLocalPart().equals("response")) {
- return;
- } else {
- error("UnexpectedResponseElement", reader, x.toString());
- }
- }
- }
- }
-
- private void parseResourceAdapter(XMLStreamReader reader, JMSBinding jmsBinding) throws XMLStreamException {
- String name = reader.getAttributeValue(null, "name");
- if (name != null && name.length() > 0) {
- jmsBinding.setResourceAdapterName(name);
- } else {
- error("MissingResourceAdapterName", reader);
- }
- jmsBinding.getResourceAdapterProperties().putAll(parseBindingProperties(reader));
- }
-
- /**
- * <headers JMSType=”string”?
- * JMSCorrelationID=”string”?
- * JMSDeliveryMode=”PERSISTENT or NON_PERSISTENT”?
- * JMSTimeToLive=”long”?
- * JMSPriority=”0 .. 9”?>
- * <property name=”NMTOKEN” type=”NMTOKEN”?>*
- * </headers>?
- */
- private void parseHeaders(XMLStreamReader reader, JMSBinding jmsBinding) throws XMLStreamException {
- String jmsType = reader.getAttributeValue(null, "JMSType");
- if (jmsType != null && jmsType.length() > 0) {
- jmsBinding.setJMSType(jmsType);
- }
-
- String jmsCorrelationId = reader.getAttributeValue(null, "JMSCorrelationID");
- if (jmsCorrelationId != null && jmsCorrelationId.length() > 0) {
- jmsBinding.setJMSCorrelationId(jmsCorrelationId);
- }
-
- String jmsDeliveryMode = reader.getAttributeValue(null, "JMSDeliveryMode");
- if (jmsDeliveryMode != null && jmsDeliveryMode.length() > 0) {
- if ("PERSISTENT".equalsIgnoreCase(jmsDeliveryMode)) {
- jmsBinding.setJMSDeliveryMode(true);
- } else if ("NON_PERSISTENT".equalsIgnoreCase(jmsDeliveryMode)) {
- jmsBinding.setJMSDeliveryMode(false);
- } else {
- error("InvalidJMSDeliveryMode", jmsBinding, jmsDeliveryMode);
- }
- }
-
- String jmsTimeToLive = reader.getAttributeValue(null, "JMSTimeToLive");
- if (jmsTimeToLive != null && jmsTimeToLive.length() > 0) {
- jmsBinding.setJMSTimeToLive(Long.parseLong(jmsTimeToLive));
- }
-
- String jmsPriority = reader.getAttributeValue(null, "JMSPriority");
- if (jmsPriority != null && jmsPriority.length() > 0) {
- try {
- int p = Integer.parseInt(jmsPriority);
- if (p >= 0 && p <= 9) {
- jmsBinding.setJMSPriority(p);
- } else {
- warning("InvalidJMSPriority", jmsBinding, jmsPriority);
- }
- } catch (NumberFormatException ex) {
- error("InvalidJMSPriority", jmsBinding, jmsPriority);
- }
- }
-
- while (true) {
- switch (reader.next()) {
- case START_ELEMENT:
- if (reader.getName().getLocalPart().equals("property")) {
- parseProperty(reader, jmsBinding);
- }
- break;
- case END_ELEMENT:
- QName x = reader.getName();
- if (x.getLocalPart().equals("headers")) {
- return;
- } else {
- error("UnexpectedResponseElement", reader, x.toString());
- }
- }
- }
- }
-
- private void parseProperty(XMLStreamReader reader, JMSBinding jmsBinding) throws XMLStreamException {
- jmsBinding.setHeaders( true );
- String name = reader.getAttributeValue(null, "name");
- String type = reader.getAttributeValue(null, "type");
- if (name != null && name.length() > 0) {
- Object value = reader.getElementText();
- if ("boolean".equalsIgnoreCase(type)) {
- value = Boolean.parseBoolean((String)value);
- } else if ("byte".equalsIgnoreCase(type)) {
- value = Byte.parseByte(((String)value));
- } else if ("short".equalsIgnoreCase(type)) {
- value = Short.parseShort((String)value);
- } else if ("int".equalsIgnoreCase(type)) {
- value = Integer.parseInt((String)value);
- } else if ("long".equalsIgnoreCase(type)) {
- value = Long.parseLong((String)value);
- } else if ("float".equalsIgnoreCase(type)) {
- value = Float.parseFloat((String)value);
- } else if ("double".equalsIgnoreCase(type)) {
- value = Double.parseDouble((String)value);
- } else if ("String".equalsIgnoreCase(type)) {
- // its already a string
- }
- jmsBinding.setProperty(name, value);
- }
- }
-
- /**
- * <operationProperties name=”string” nativeOperation=”string”?>
- * <property name=”NMTOKEN” type=”NMTOKEN”?>*
- * <headers JMSType=”string”?
- * JMSCorrelationID=”string”?
- * JMSDeliveryMode=”PERSISTENT or NON_PERSISTENT”?
- * JMSTimeToLive=”long”?
- * JMSPriority=”0 .. 9”?>
- * <property name=”NMTOKEN” type=”NMTOKEN”?>*
- * </headers>?
- * </operationProperties>*
- */
- private void parseOperationProperties(XMLStreamReader reader, JMSBinding jmsBinding) throws XMLStreamException {
-
- if (jmsBinding.getOperationPropertiesName() != null) {
- error("DuplicateOperationProperties", jmsBinding);
- }
-
- String opName = reader.getAttributeValue(null, "name");
- if (opName == null || opName.length() < 1) {
- warning("MissingJMSOperationPropertyName", jmsBinding);
- return;
- }
- // Since nativeOpName, headers, and property elements are optional, must add opName.
- jmsBinding.addOperationName(opName);
- String nativeOpName = reader.getAttributeValue(null, "nativeOperation"); // optional
- if (nativeOpName != null && nativeOpName.length() > 0) {
- jmsBinding.setNativeOperationName(opName, nativeOpName);
- }
-
- Map<String, BindingProperty> props = new HashMap<String, BindingProperty>();
- while (true) {
- switch (reader.next()) {
- case START_ELEMENT:
- if (reader.getName().getLocalPart().equals("headers")) { // optional
- parseOperationHeaders(reader, jmsBinding, opName);
- } else if (reader.getName().getLocalPart().equals("property")) { // optional
- processProperty(reader, props);
- }
- break;
- case END_ELEMENT:
- if (reader.isEndElement()) {
- QName x = reader.getName();
- if (x.getLocalPart().equals("headers")) {
- break;
- }
- if (x.getLocalPart().equals("property")) {
- break;
- }
- if (x.getLocalPart().equals("operationProperties")) {
- jmsBinding.getOperationPropertiesProperties(opName).putAll(props);
- return;
- } else {
- error("UnexpectedResponseElement", reader, x.toString());
- }
- }
- }
- }
- }
-
- private void parseOperationHeaders(XMLStreamReader reader, JMSBinding jmsBinding, String opName) throws XMLStreamException {
- String jmsType = reader.getAttributeValue(null, "JMSType");
- if (jmsType != null && jmsType.length() > 0) {
- jmsBinding.setOperationJMSType(opName, jmsType);
- }
-
- String jmsCorrelationId = reader.getAttributeValue(null, "JMSCorrelationID");
- if (jmsCorrelationId != null && jmsCorrelationId.length() > 0) {
- jmsBinding.setOperationJMSCorrelationId(opName, jmsCorrelationId);
- }
-
- String jmsDeliveryMode = reader.getAttributeValue(null, "JMSDeliveryMode");
- if (jmsDeliveryMode != null && jmsDeliveryMode.length() > 0) {
- if ("PERSISTENT".equalsIgnoreCase(jmsDeliveryMode)) {
- jmsBinding.setOperationJMSDeliveryMode(opName, true);
- } else if ("NON_PERSISTENT".equalsIgnoreCase(jmsDeliveryMode)) {
- jmsBinding.setOperationJMSDeliveryMode(opName, false);
- } else {
- error("InvalidOPJMSDeliveryMode", jmsBinding, jmsDeliveryMode);
- }
- }
-
- String jmsTimeToLive = reader.getAttributeValue(null, "JMSTimeToLive");
- if (jmsTimeToLive != null && jmsTimeToLive.length() > 0) {
- jmsBinding.setOperationJMSTimeToLive(opName, Long.parseLong(jmsTimeToLive));
- }
-
- String jmsPriority = reader.getAttributeValue(null, "JMSPriority");
- if (jmsPriority != null && jmsPriority.length() > 0) {
- try {
- int p = Integer.parseInt(jmsPriority);
- if (p >= 0 && p <= 9) {
- jmsBinding.setOperationJMSPriority(opName, p);
- } else {
- warning("InvalidOPJMSPriority", jmsBinding, jmsPriority);
- }
- } catch (NumberFormatException ex) {
- error("InvalidOPJMSPriority", jmsBinding, jmsPriority);
- }
- }
-
- while (true) {
- switch (reader.next()) {
- case START_ELEMENT:
- if (reader.getName().getLocalPart().equals("property")) {
- parseOperationPropertyProperties(reader, jmsBinding, opName);
- }
- break;
- case END_ELEMENT:
- QName x = reader.getName();
- if (x.getLocalPart().equals("headers")) {
- return;
- } else {
- error("UnexpectedResponseElement", reader, x.toString());
- }
- }
- }
- }
-
- private void parseOperationPropertyProperties(XMLStreamReader reader, JMSBinding jmsBinding, String opName) throws XMLStreamException {
- String propName = reader.getAttributeValue(null, "name");
- String type = reader.getAttributeValue(null, "type");
- if (propName != null && propName.length() > 0) {
- Object value = reader.getElementText();
- if ("boolean".equalsIgnoreCase(type)) {
- value = Boolean.parseBoolean((String)value);
- } else if ("byte".equalsIgnoreCase(type)) {
- value = Byte.parseByte(((String)value));
- } else if ("short".equalsIgnoreCase(type)) {
- value = Short.parseShort((String)value);
- } else if ("int".equalsIgnoreCase(type)) {
- value = Integer.parseInt((String)value);
- } else if ("long".equalsIgnoreCase(type)) {
- value = Long.parseLong((String)value);
- } else if ("float".equalsIgnoreCase(type)) {
- value = Float.parseFloat((String)value);
- } else if ("double".equalsIgnoreCase(type)) {
- value = Double.parseDouble((String)value);
- } else if ("String".equalsIgnoreCase(type)) {
- // its already a string
- }
- jmsBinding.setOperationProperty(opName, propName, value);
- }
- }
-
- private void parseSubscriptionHeaders(XMLStreamReader reader, JMSBinding jmsBinding) throws XMLStreamException {
- String jmsSelector = reader.getAttributeValue(null, "JMSSelector");
- if (jmsSelector != null && jmsSelector.length() > 0) {
- jmsBinding.setJMSSelector(jmsSelector);
- }
-
- // Skip to end element
- while (reader.hasNext()) {
- if (reader.next() == END_ELEMENT && "SubscriptionHeaders".equals(reader.getName().getLocalPart())) {
- break;
- }
- } // end while
- }
-
- private Map<String, BindingProperty> parseBindingProperties(XMLStreamReader reader) throws XMLStreamException {
- Map<String, BindingProperty> props = new HashMap<String, BindingProperty>();
- String parentName = reader.getName().getLocalPart();
- // Parse for all the properties within this element, until the end of
- // the element is reached.
- boolean completed = false;
- while (!completed) {
- switch (reader.next()) {
- case START_ELEMENT:
- String elementName = reader.getName().getLocalPart();
- if ("property".equals(elementName)) {
- processProperty(reader, props);
- }
- break;
- case END_ELEMENT:
- String endName = reader.getName().getLocalPart();
- if (parentName.equals(endName)) {
- completed = true;
- break;
- }
- }
- }
- return props;
- }
-
- private void processProperty(XMLStreamReader reader, Map<String, BindingProperty> props) throws XMLStreamException {
- String name = reader.getAttributeValue(null, "name");
- if (name == null || name.length() < 1) {
- error("InvalidPropertyElement", reader);
- }
- String type = reader.getAttributeValue(null, "type");
- String value = reader.getElementText();
- props.put(name, new BindingProperty(name, type, value));
- }
-
- /**
- * Preserve an existing public method. The method validate() is a legacy method
- * that was called from reading am XML stream via the read(XMLStreamReader) method above.
- * However read(XMLStreamReader) now calls validate(JMSBinding jmsBinding) and
- * passes in the jmsBinding model.
- * The older validate() now calls validate(JMSBinding jmsBinding) with a null model.
- */
- public void validate() {
- validate( null );
- }
-
- /**
- * Validates JMS parsing and JMSBinding model.
- * Validation rules are taken from the binding schema and the OSOA and OASIS specs:
- * http://www.oasis-open.org/committees/documents.php?wg_abbrev=sca-bindings
- * (sca-binding-jms-1.1-spec-cd01-rev4.pdf)
- * http://www.osoa.org/display/Main/Service+Component+Architecture+Specifications
- * (SCA JMS Binding V1.00 )
- * @param jmsBinding an optional JMS binding model to check for validity.
- * @since 1.4
- */
- protected void validate( JMSBinding jmsBinding ) {
- // If no JMSBinding model is provided, that is all the validation we can do.
- if ( jmsBinding == null ) {
- return;
- }
-
- // Connection factory should not contradict destination type.
- String connectionFactoryName = jmsBinding.getConnectionFactoryName();
- if (( connectionFactoryName != null ) && ( connectionFactoryName.length() > 0 )) {
- if (JMSBindingConstants.DESTINATION_TYPE_QUEUE == jmsBinding.getDestinationType()) {
- if ( connectionFactoryName.contains( "topic" )) {
- error("DestinationQueueContradiction", jmsBinding, connectionFactoryName );
- }
- }
- if (JMSBindingConstants.DESTINATION_TYPE_TOPIC == jmsBinding.getDestinationType()) {
- if ( connectionFactoryName.contains( "queue" )) {
- error("DestinationTopicContradiction", jmsBinding, connectionFactoryName );
- }
- }
- }
-
- // Connection factory and activation Specification are mutually exclusive.
- if (( connectionFactoryName != null ) && ( connectionFactoryName.length() > 0 )) {
- String activationSpecName = jmsBinding.getActivationSpecName();
- if ((activationSpecName != null) && (activationSpecName.length() > 0 )) {
- error("ConnectionFactoryActivationSpecContradiction", jmsBinding, connectionFactoryName, activationSpecName );
- }
- }
-
- // Given a response connection name attribute, there must not be a response element.
- // 156 • /binding.jms/@responseConnection – identifies a binding.jms element that is present in a
- // 157 definition document, whose response child element is used to define the values for this binding. In
- // 158 this case this binding.jms element MUST NOT contain a response element.
- QName responseConnectionName = jmsBinding.getResponseConnectionName();
- if (( responseConnectionName != null ) && ( responseConnectionName.getLocalPart().length() > 0 )) {
- String responseDestinationName = jmsBinding.getResponseDestinationName();
- if (( responseDestinationName != null ) && (responseDestinationName.length() > 0)) {
- error("ResponseAttrElement", jmsBinding, responseConnectionName, responseDestinationName );
- }
- }
-
- // Other jmsBinding model validation may be added here.
-
- }
-
- /**
- * Given a valid JMSBinding, write it as XML using the given XML writer.
- *
- * This high-level method handles binding.jms element and its attributes.
- * Sub elements have their own writer methods and are called from here.
- * <binding.jms
- * correlationScheme="string"?
- * initialContextFactory="xs:anyURI"?
- * jndiURL="xs:anyURI"?
- * requestConnection="QName"?
- * responseConnection="QName"?
- * operationProperties="QName"?
- * ...>
- *
- * @param jmsBinding JMSBinding model
- * @param writer an XMLStreamWriter that writes XML attributes and elements
- */
- public void write(JMSBinding jmsBinding, XMLStreamWriter writer) throws ContributionWriteException,
- XMLStreamException {
- // Write a <binding.jms>
- writeStart(writer, Constants.SCA10_NS, JMSBindingConstants.BINDING_JMS,
- new XAttr("requestConnection", jmsBinding.getRequestConnectionName()),
- new XAttr("responseConnection", jmsBinding.getResponseConnectionName()),
- new XAttr("operationProperties", jmsBinding.getOperationPropertiesName()));
-
- if (jmsBinding.getName() != null) {
- writer.writeAttribute("name", jmsBinding.getName());
- }
-
- if (jmsBinding.getURI() != null) {
- writer.writeAttribute("uri", jmsBinding.getURI());
- }
-
- //String dest = jmsBinding.getDestinationName();
- //if (dest != null) {
- // if ( dest != null ) {
- // writer.writeAttribute("uri", "jms:" + jmsBinding.getDestinationName());
- // }
- //}
-
- String correlationScheme = jmsBinding.getCorrelationScheme();
- if ( correlationScheme != null ) {
- if ( !correlationScheme.equals(JMSBindingConstants.CORRELATE_MSG_ID) ) {
- writer.writeAttribute("correlationScheme", jmsBinding.getCorrelationScheme());
- }
- }
-
- if ( jmsBinding.getInitialContextFactoryName() != null ) {
- writer.writeAttribute("initialContextFactory", jmsBinding.getInitialContextFactoryName());
- }
-
- if ( jmsBinding.getJndiURL() != null ) {
- writer.writeAttribute("jndiURL", jmsBinding.getJndiURL());
- }
-
- if ( jmsBinding.containsHeaders() ) {
- writeHeaders( jmsBinding, writer);
- }
-
- writeOperationProperties( jmsBinding, writer );
-
- writeSubscriptionHeaders( jmsBinding, writer );
-
- writeDestinationProperties( jmsBinding, writer );
-
- writeConnectionFactoryProperties( jmsBinding, writer );
-
- writeActivationSpecProperties( jmsBinding, writer );
-
- // Write response info, if names are not defaults.
- String responseDestName = jmsBinding.getResponseDestinationName();
- String responseCFName = jmsBinding.getResponseConnectionFactoryName();
- String responseASName = jmsBinding.getResponseActivationSpecName();
- if ( responseDestName != null ||
- responseCFName != null ||
- responseASName != null ) {
-
- writer.writeStartElement(Constants.SCA10_NS, "response");
- writeResponseDestinationProperties( jmsBinding, writer );
- writeResponseConnectionFactoryProperties( jmsBinding, writer );
- writeResponseActivationSpecProperties( jmsBinding, writer );
-
- if ((jmsBinding.getResponseWireFormat() != null) &&
- !(jmsBinding.getResponseWireFormat() instanceof WireFormatJMSDefault)){
- writeWireFormat(jmsBinding.getResponseWireFormat(), writer);
- }
-
- writer.writeEndElement();
- // Strange bug. Without white space, headers end tag improperly read.
- writer.writeCharacters( " " );
- }
-
- writeResourceAdapterProperties( jmsBinding, writer );
-
- writeConfiguredOperations( jmsBinding, writer );
-
- if ((jmsBinding.getRequestWireFormat() != null) &&
- !(jmsBinding.getRequestWireFormat() instanceof WireFormatJMSDefault)){
- writeWireFormat(jmsBinding.getRequestWireFormat(), writer);
- }
-
- if ((jmsBinding.getOperationSelector() != null) &&
- !(jmsBinding.getOperationSelector() instanceof OperationSelectorJMSDefault)){
- writeOperationSelector(jmsBinding.getOperationSelector(), writer);
- }
-
- writeEnd(writer);
- }
-
- /**
- * Writes headers element and its attributes.
- * <headers JMSType=”string”?
- * JMSCorrelationID=”string”?
- * JMSDeliveryMode=”PERSISTENT or NON_PERSISTENT”?
- * JMSTimeToLive=”long”?
- * JMSPriority=”0 .. 9”?>
- * <property name=”NMTOKEN” type=”NMTOKEN”?>*
- * </headers>?
- */
- private void writeHeaders( JMSBinding jmsBinding, XMLStreamWriter writer) throws XMLStreamException {
-
- writer.writeStartElement(Constants.SCA10_NS, JMSBindingConstants.HEADERS);
-
- String jmsType = jmsBinding.getJMSType();
- if (jmsType != null && jmsType.length() > 0) {
- writer.writeAttribute("JMSType", jmsType);
- }
-
- String jmsCorrelationId = jmsBinding.getJMSCorrelationId();
- if (jmsCorrelationId != null && jmsCorrelationId.length() > 0) {
- writer.writeAttribute("JMSCorrelationID", jmsCorrelationId);
- }
-
- Boolean jmsDeliveryMode = jmsBinding.isdeliveryModePersistent();
- if (jmsDeliveryMode != null) {
- if ( jmsDeliveryMode.booleanValue() )
- writer.writeAttribute("JMSDeliveryMode", "PERSISTENT");
- else
- writer.writeAttribute("JMSDeliveryMode", "NON_PERSISTENT");
- }
-
- Long jmsTimeToLive = jmsBinding.getJMSTimeToLive();
- if (jmsTimeToLive != null) {
- writer.writeAttribute("JMSTimeToLive", jmsTimeToLive.toString());
- }
-
- Integer jmsPriority = jmsBinding.getJMSPriority();
- if (jmsPriority != null) {
- writer.writeAttribute("JMSPriority", jmsPriority.toString());
- }
-
- Map<String, Object> properties = jmsBinding.getProperties();
- writeProperties( properties, writer );
- //writer.writeCharacters( " " );
-
- writer.writeEndElement();
- // Strange bug. Without white space, headers end tag improperly read.
- writer.writeCharacters( " " );
- }
-
- /**
- * Writes a complete set of properties to the given XML stream writer.
- * If the value is of type string, the property will be output:
- * <property name="key">StringValue</property>
- * If the value is of type box (e.g.Integer, Long) or BindingProperty, the output will be
- * <property name="key" type="int">42</property>
- */
- private void writeProperties(Map<String, Object> properties, XMLStreamWriter writer) throws XMLStreamException {
- if (( properties == null ) || ( properties.size() == 0 )) {
- return;
- }
-
- // For both the keys and values of a map
- for (Iterator it=properties.entrySet().iterator(); it.hasNext(); ) {
- Map.Entry entry = (Map.Entry)it.next();
- Object key = entry.getKey();
- Object value = entry.getValue();
-
- writer.writeStartElement(Constants.SCA10_NS, "property" );
- writer.writeAttribute("name", key.toString());
-
- if ( value instanceof String) {
- writer.writeCharacters( value.toString() );
- } else if ( value instanceof BindingProperty ) {
- BindingProperty property = (BindingProperty) value;
- String type = property.getType();
- if ( type != null ) {
- writer.writeAttribute("type", type);
- }
- writer.writeCharacters( property.getValue().toString() );
- } else if ( value instanceof Boolean ) {
- writer.writeAttribute("type", "boolean");
- writer.writeCharacters( value.toString() );
- } else if ( value instanceof Byte ) {
- writer.writeAttribute("type", "byte");
- writer.writeCharacters( value.toString() );
- } else if ( value instanceof Short ) {
- writer.writeAttribute("type", "short");
- writer.writeCharacters( value.toString() );
- } else if ( value instanceof Integer ) {
- writer.writeAttribute("type", "int");
- writer.writeCharacters( value.toString() );
- } else if ( value instanceof Long ) {
- writer.writeAttribute("type", "long");
- writer.writeCharacters( value.toString() );
- } else if ( value instanceof Float ) {
- writer.writeAttribute("type", "float");
- writer.writeCharacters( value.toString() );
- } else if ( value instanceof Double ) {
- writer.writeAttribute("type", "double");
- writer.writeCharacters( value.toString() );
- } else {
- writer.writeCharacters( value.toString() );
- }
- writer.writeEndElement();
- }
- }
-
- /**
- * Writes operation properties if there are any.
- *
- * <operationProperties name="string" nativeOperation="string"?>
- * <property name="NMTOKEN" type="NMTOKEN">*
- * <headers JMSType="string"?
- * JMSCorrelationID="string"?
- * JMSDeliveryMode="string"?
- * JMSTimeToLive="int"?
- * JMSPriority="string"?>
- * <property name="NMTOKEN" type="NMTOKEN">*
- * </headers>?
- * </operationProperties>*
- * </binding.jms>
- */
- private void writeOperationProperties( JMSBinding jmsBinding, XMLStreamWriter writer) throws XMLStreamException {
- if (jmsBinding.getOperationPropertiesBinding() != null) {
- return;
- }
- Set<String> operationNames = jmsBinding.getOperationNames();
- if (operationNames == null || (operationNames.size() < 1)) {
- return;
- }
-
- for(Iterator<String> it=operationNames.iterator(); it.hasNext(); ) {
- String opName = it.next();
-
- writer.writeStartElement(Constants.SCA10_NS, "operationProperties");
- writer.writeAttribute("name", opName);
-
- String nativeOperation = jmsBinding.getNativeOperationName(opName);
- if (nativeOperation != null && nativeOperation.length() > 0) {
- if ( !nativeOperation.equals( opName )) {
- writer.writeAttribute("nativeOperation", nativeOperation);
- }
- }
-
- Map<String, BindingProperty> operationPropertiesProperties =
- jmsBinding.getOperationPropertiesProperties(opName);
- writeBindingProperties( operationPropertiesProperties, writer );
-
- String jmsType = jmsBinding.getOperationJMSType(opName);
- String jmsCorrelationId = jmsBinding.getOperationJMSCorrelationId(opName);
- Boolean jmsDeliveryMode = jmsBinding.getOperationJMSDeliveryMode(opName);
- Long jmsTimeToLive = jmsBinding.getOperationJMSTimeToLive(opName);
- Integer jmsPriority = jmsBinding.getOperationJMSPriority(opName);
- Map<String, Object> operationProperties = jmsBinding.getOperationProperties(opName);
-
- if (operationProperties != null){
- if ((jmsType != null && jmsType.length() > 0) ||
- (jmsCorrelationId != null && jmsCorrelationId.length() > 0) ||
- jmsDeliveryMode != null || jmsTimeToLive != null ||
- jmsPriority != null) {
-
- writer.writeStartElement(Constants.SCA10_NS, JMSBindingConstants.HEADERS);
-
- if (jmsType != null && jmsType.length() > 0) {
- writer.writeAttribute("JMSType", jmsType);
- }
-
- if (jmsCorrelationId != null && jmsCorrelationId.length() > 0) {
- writer.writeAttribute("JMSCorrelationID", jmsCorrelationId);
- }
-
- if (jmsDeliveryMode != null) {
- if (jmsDeliveryMode.booleanValue())
- writer.writeAttribute("JMSDeliveryMode", "PERSISTENT");
- else
- writer.writeAttribute("JMSDeliveryMode", "NON_PERSISTENT");
- }
-
- if (jmsTimeToLive != null) {
- writer.writeAttribute("JMSTimeToLive", jmsTimeToLive.toString());
- }
-
- if (jmsPriority != null) {
- writer.writeAttribute("JMSPriority", jmsPriority.toString());
- }
-
- writeProperties( operationProperties, writer );
-
- writer.writeEndElement();
- // Strange bug. Without white space, headers end tag improperly read.
- // writer.writeCharacters( " " );
- }
- }
-
- writer.writeEndElement();
- // Strange bug. Without white space, headers end tag improperly read.
- writer.writeCharacters(" ");
- }
- }
-
- /**
- * Writes a complete set of properties to the given XML stream writer.
- * If the value is of type string, the property will be output:
- * <property name="key">StringValue</property>
- * If the value is of type box (e.g.Integer, Long) or BindingProperty, the output will be
- * <property name="key" type="int">42</property>
- */
- private void writeBindingProperties(Map<String, BindingProperty> properties, XMLStreamWriter writer) throws XMLStreamException {
- if (( properties == null ) || ( properties.size() == 0 )) {
- return;
- }
-
- // For both the keys and values of a map
- for (Iterator it=properties.entrySet().iterator(); it.hasNext(); ) {
- Map.Entry entry = (Map.Entry)it.next();
- Object key = entry.getKey();
- Object value = entry.getValue();
-
- writer.writeStartElement(Constants.SCA10_NS, "property" );
- if (key != null){
- writer.writeAttribute("name", key.toString());
- }
-
- if ( value instanceof String) {
- writer.writeCharacters( value.toString() );
- } else if ( value instanceof BindingProperty ) {
- BindingProperty property = (BindingProperty) value;
- String type = property.getType();
- if ( type != null ) {
- writer.writeAttribute("type", type);
- }
- writer.writeCharacters( property.getValue().toString() );
- } else {
- writer.writeCharacters( value.toString() );
- }
- writer.writeEndElement();
- }
- }
-
- /**
- * Writes subscription headers if there are any.
- * <complexType name="SubscriptionHeaders">
- * <attribute name="JMSSelector" type="string"/>
- * </complexType>
- *
- */
- private void writeSubscriptionHeaders( JMSBinding jmsBinding, XMLStreamWriter writer) throws XMLStreamException {
- String jmsSubscriptionHeaders = jmsBinding.getJMSSelector();
- if (jmsSubscriptionHeaders != null && jmsSubscriptionHeaders.length() > 0) {
- writer.writeStartElement(Constants.SCA10_NS, "SubscriptionHeaders");
- writer.writeAttribute("JMSSelector", jmsSubscriptionHeaders);
- writer.writeEndElement();
- // Strange bug. Without white space, headers end tag improperly read.
- // writer.writeCharacters( " " );
- }
- }
-
- /**
- * Writes destination properties if there are any.
- * <destination name="xs:anyURI" type="string"? create="string"?>
- * <property name="NMTOKEN" type="NMTOKEN">*
- * </destination>?
- */
- private void writeDestinationProperties( JMSBinding jmsBinding, XMLStreamWriter writer) throws XMLStreamException {
- String destinationName = jmsBinding.getDestinationName();
- if (destinationName == null || (destinationName.length() < 1)) {
- return;
- }
- if (destinationName == null) {
- return;
- }
-
- writer.writeStartElement(Constants.SCA10_NS, "destination");
-
- if ( destinationName != null && destinationName.length() > 0) {
- writer.writeAttribute("name", destinationName);
- }
-
- // Type not handled yet
- // String destinationType = jmsBinding.getDestinationType();
- // if ( destinationType != null && destinationType.length() > 0) {
- // writer.writeAttribute("type", destinationType);
- // }
-
- String destinationCreate = jmsBinding.getDestinationCreate();
- if ( destinationCreate != null && destinationCreate.length() > 0 &&
- !destinationCreate.equals(JMSBindingConstants.CREATE_IF_NOT_EXIST)) {
- writer.writeAttribute("create", destinationCreate);
- }
-
- Map<String, BindingProperty> destinationProperties =
- jmsBinding.getDestinationProperties();
- writeBindingProperties( destinationProperties, writer );
-
- writer.writeEndElement();
- // Strange bug. Without white space, headers end tag improperly read.
- writer.writeCharacters(" ");
- }
-
- /**
- * Writes connection factory properties if there are any.
- * <connectionFactory name="xs:anyURI" create="string"?>
- * <property name="NMTOKEN" type="NMTOKEN">*
- * </connectionFactory>?
- */
- private void writeConnectionFactoryProperties( JMSBinding jmsBinding, XMLStreamWriter writer) throws XMLStreamException {
- String cfName = jmsBinding.getConnectionFactoryName();
- if (cfName == null || (cfName.length() < 1)) {
- return;
- }
-
- writer.writeStartElement(Constants.SCA10_NS, "connectionFactory");
-
- if ( cfName != null && cfName.length() > 0) {
- writer.writeAttribute("name", cfName);
- }
-
- String destinationCreate = jmsBinding.getConnectionFactoryCreate();
- if ( destinationCreate != null && destinationCreate.length() > 0 &&
- !destinationCreate.equals(JMSBindingConstants.CREATE_IF_NOT_EXIST)) {
- writer.writeAttribute("create", destinationCreate);
- }
-
- Map<String, BindingProperty> cfProperties =
- jmsBinding.getConnectionFactoryProperties();
- writeBindingProperties( cfProperties, writer );
-
- writer.writeEndElement();
- // Strange bug. Without white space, headers end tag improperly read.
- writer.writeCharacters(" ");
- }
-
- /**
- * Writes activation Spec properties if there are any.
- * <activationSpec name="xs:anyURI" create="string"?>
- * <property name="NMTOKEN" type="NMTOKEN">*
- * </activationSpec>?
- *
- */
- private void writeActivationSpecProperties( JMSBinding jmsBinding, XMLStreamWriter writer) throws XMLStreamException {
- String asName = jmsBinding.getActivationSpecName();
- if (asName == null || (asName.length() < 1)) {
- return;
- }
-
- writer.writeStartElement(Constants.SCA10_NS, "activationSpec");
-
- if ( asName != null && asName.length() > 0) {
- writer.writeAttribute("name", asName);
- }
-
- String destinationCreate = jmsBinding.getActivationSpecCreate();
- if ( destinationCreate != null && destinationCreate.length() > 0) {
- writer.writeAttribute("create", destinationCreate);
- }
-
- Map<String, BindingProperty> cfProperties =
- jmsBinding.getActivationSpecProperties();
- writeBindingProperties( cfProperties, writer );
-
- writer.writeEndElement();
- // Strange bug. Without white space, headers end tag improperly read.
- writer.writeCharacters(" ");
- }
-
- /**
- * Writes response destination properties if there are any.
- * <destination name="xs:anyURI" type="string"? create="string"?>
- * <property name="NMTOKEN" type="NMTOKEN">*
- * </destination>?
- */
- private void writeResponseDestinationProperties( JMSBinding jmsBinding, XMLStreamWriter writer) throws XMLStreamException {
- String destinationName = jmsBinding.getResponseDestinationName();
- if (destinationName == null || (destinationName.length() < 1)) {
- return;
- }
- if (destinationName == null) {
- return;
- }
-
- writer.writeStartElement(Constants.SCA10_NS, "destination");
-
- if ( destinationName != null && destinationName.length() > 0) {
- writer.writeAttribute("name", destinationName);
- }
-
- // Type not handled yet
- // String destinationType = jmsBinding.getDestinationType();
- // if ( destinationType != null && destinationType.length() > 0) {
- // writer.writeAttribute("type", destinationType);
- // }
-
- String destinationCreate = jmsBinding.getResponseDestinationCreate();
- if ( destinationCreate != null && destinationCreate.length() > 0) {
- writer.writeAttribute("create", destinationCreate);
- }
-
- Map<String, BindingProperty> destinationProperties =
- jmsBinding.getResponseDestinationProperties();
- writeBindingProperties( destinationProperties, writer );
-
- writer.writeEndElement();
- // Strange bug. Without white space, headers end tag improperly read.
- writer.writeCharacters(" ");
- }
-
- /**
- * Writes response connection factory properties if there are any.
- * <connectionFactory name="xs:anyURI" create="string"?>
- * <property name="NMTOKEN" type="NMTOKEN">*
- * </connectionFactory>?
- *
- */
- private void writeResponseConnectionFactoryProperties( JMSBinding jmsBinding, XMLStreamWriter writer) throws XMLStreamException {
- String cfName = jmsBinding.getResponseConnectionFactoryName();
- if (cfName == null || (cfName.length() < 1)) {
- return;
- }
-
- writer.writeStartElement(Constants.SCA10_NS, "connectionFactory");
-
- if ( cfName != null && cfName.length() > 0) {
- writer.writeAttribute("name", cfName);
- }
-
- String destinationCreate = jmsBinding.getResponseConnectionFactoryCreate();
- if ( destinationCreate != null && destinationCreate.length() > 0) {
- writer.writeAttribute("create", destinationCreate);
- }
-
- Map<String, BindingProperty> cfProperties =
- jmsBinding.getResponseConnectionFactoryProperties();
- writeBindingProperties( cfProperties, writer );
-
- writer.writeEndElement();
- // Strange bug. Without white space, headers end tag improperly read.
- writer.writeCharacters(" ");
- }
-
- /**
- * Writes response activation Spec properties if there are any.
- * <activationSpec name="xs:anyURI" create="string"?>
- * <property name="NMTOKEN" type="NMTOKEN">*
- * </activationSpec>?
- *
- */
- private void writeResponseActivationSpecProperties( JMSBinding jmsBinding, XMLStreamWriter writer) throws XMLStreamException {
- String asName = jmsBinding.getResponseActivationSpecName();
- if (asName == null || (asName.length() < 1)) {
- return;
- }
-
- writer.writeStartElement(Constants.SCA10_NS, "activationSpec");
-
- if ( asName != null && asName.length() > 0) {
- writer.writeAttribute("name", asName);
- }
-
- String destinationCreate = jmsBinding.getResponseActivationSpecCreate();
- if ( destinationCreate != null && destinationCreate.length() > 0) {
- writer.writeAttribute("create", destinationCreate);
- }
-
- Map<String, BindingProperty> cfProperties =
- jmsBinding.getResponseActivationSpecProperties();
- writeBindingProperties( cfProperties, writer );
-
- writer.writeEndElement();
- // Strange bug. Without white space, headers end tag improperly read.
- writer.writeCharacters(" ");
- }
-
- /**
- * Writes resource adapter properties if there are any.
- * <resourceAdapter name="NMTOKEN">?
- * <property name="NMTOKEN" type="NMTOKEN">*
- * </resourceAdapter>?
- */
- private void writeResourceAdapterProperties( JMSBinding jmsBinding, XMLStreamWriter writer) throws XMLStreamException {
- String asName = jmsBinding.getResourceAdapterName();
- if (asName == null || (asName.length() < 1)) {
- return;
- }
-
- writer.writeStartElement(Constants.SCA10_NS, "resourceAdapter");
-
- if ( asName != null && asName.length() > 0) {
- writer.writeAttribute("name", asName);
- }
-
- Map<String, BindingProperty> cfProperties =
- jmsBinding.getResourceAdapterProperties();
- writeBindingProperties( cfProperties, writer );
-
- writer.writeEndElement();
- // Strange bug. Without white space, headers end tag improperly read.
- writer.writeCharacters(" ");
- }
-
- /**
- * Writes configured operations if there are any.
- * <binding.jms uri=\"jms:testQueue\" >"
- * <operationProperties name=\"op1\">"
- * </operationProperties >"
- * <operation name=\"op1\" requires=\"IntentOne IntentTwo\"/>"
- * </binding.jms>"
- */
- private void writeConfiguredOperations( JMSBinding jmsBinding, XMLStreamWriter writer) throws XMLStreamException, ContributionWriteException {
- List<ConfiguredOperation> configOps = jmsBinding.getConfiguredOperations();
- if (configOps == null || (configOps.size() < 1)) {
- return;
- }
-
- for( Iterator<ConfiguredOperation> it = configOps.iterator(); it.hasNext();) {
- configuredOperationProcessor.write(it.next(), writer);
- }
-
- // Strange bug. Without white space, headers end tag improperly read.
- writer.writeCharacters(" ");
- }
-
- /**
- * Wire out a request or response wire format element. Uses extension processors
- * to do this as wire format is an extension point
- *
- * @param wireFormat
- * @param writer
- */
- private void writeWireFormat(WireFormat wireFormat, XMLStreamWriter writer ) throws XMLStreamException, ContributionWriteException {
- extensionProcessor.write(wireFormat, writer);
- }
-
- /**
- * Wire out an operation selector element. Uses extension processors
- * to do this as operation selector is an extension point
- *
- * @param operationSeletor
- * @param writer
- */
- private void writeOperationSelector(OperationSelector operationSeletor, XMLStreamWriter writer ) throws XMLStreamException, ContributionWriteException{
- extensionProcessor.write(operationSeletor, writer);
- }
-
-}
diff --git a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms/src/main/java/org/apache/tuscany/sca/binding/jms/operationselector/jmsdefault/OperationSelectorJMSDefault.java b/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms/src/main/java/org/apache/tuscany/sca/binding/jms/operationselector/jmsdefault/OperationSelectorJMSDefault.java
deleted file mode 100644
index ce7c2a71b9..0000000000
--- a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms/src/main/java/org/apache/tuscany/sca/binding/jms/operationselector/jmsdefault/OperationSelectorJMSDefault.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.binding.jms.operationselector.jmsdefault;
-
-import javax.xml.namespace.QName;
-
-import org.apache.tuscany.sca.assembly.xml.Constants;
-import org.apache.tuscany.sca.assembly.OperationSelector;
-
-/**
- * Implementation for policies that could be injected as parameter
- * into the axis2config.
- *
- * @version $Rev$ $Date$
- */
-public class OperationSelectorJMSDefault implements OperationSelector {
- public static final QName OPERATION_SELECTOR_JMS_DEFAULT_QNAME = new QName(Constants.SCA10_TUSCANY_NS, "operationSelector.jmsdefault");
-
- public QName getSchemaName() {
- return OPERATION_SELECTOR_JMS_DEFAULT_QNAME;
- }
-
- public boolean isUnresolved() {
- return false;
- }
-
- public void setUnresolved(boolean unresolved) {
- }
-}
diff --git a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms/src/main/java/org/apache/tuscany/sca/binding/jms/operationselector/jmsdefault/OperationSelectorJMSDefaultProcessor.java b/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms/src/main/java/org/apache/tuscany/sca/binding/jms/operationselector/jmsdefault/OperationSelectorJMSDefaultProcessor.java
deleted file mode 100644
index 4a8e4a1bd2..0000000000
--- a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms/src/main/java/org/apache/tuscany/sca/binding/jms/operationselector/jmsdefault/OperationSelectorJMSDefaultProcessor.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.binding.jms.operationselector.jmsdefault;
-
-
-import javax.xml.namespace.QName;
-import javax.xml.stream.XMLStreamException;
-import javax.xml.stream.XMLStreamReader;
-import javax.xml.stream.XMLStreamWriter;
-
-import org.apache.tuscany.sca.assembly.xml.Constants;
-import org.apache.tuscany.sca.contribution.ModelFactoryExtensionPoint;
-import org.apache.tuscany.sca.contribution.processor.BaseStAXArtifactProcessor;
-import org.apache.tuscany.sca.contribution.processor.StAXArtifactProcessor;
-import org.apache.tuscany.sca.contribution.resolver.ModelResolver;
-import org.apache.tuscany.sca.contribution.service.ContributionReadException;
-import org.apache.tuscany.sca.contribution.service.ContributionResolveException;
-import org.apache.tuscany.sca.contribution.service.ContributionWriteException;
-import org.apache.tuscany.sca.monitor.Monitor;
-
-/**
- *
- * @version $Rev$ $Date$
- */
-public class OperationSelectorJMSDefaultProcessor extends BaseStAXArtifactProcessor implements StAXArtifactProcessor<OperationSelectorJMSDefault> {
-
- public QName getArtifactType() {
- return OperationSelectorJMSDefault.OPERATION_SELECTOR_JMS_DEFAULT_QNAME;
- }
-
- public OperationSelectorJMSDefaultProcessor(ModelFactoryExtensionPoint modelFactories, Monitor monitor) {
- }
-
-
- public OperationSelectorJMSDefault read(XMLStreamReader reader) throws ContributionReadException, XMLStreamException {
- OperationSelectorJMSDefault wireFormat = new OperationSelectorJMSDefault();
-
- return wireFormat;
- }
-
- public void write(OperationSelectorJMSDefault wireFormat, XMLStreamWriter writer)
- throws ContributionWriteException, XMLStreamException {
- String prefix = "tuscany";
- writer.writeStartElement(prefix,
- getArtifactType().getLocalPart(),
- getArtifactType().getNamespaceURI());
- writer.writeNamespace("tuscany", Constants.SCA10_TUSCANY_NS);
-
- writer.writeEndElement();
- }
-
- public Class<OperationSelectorJMSDefault> getModelType() {
- return OperationSelectorJMSDefault.class;
- }
-
- public void resolve(OperationSelectorJMSDefault arg0, ModelResolver arg1) throws ContributionResolveException {
-
- }
-
-}
diff --git a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms/src/main/java/org/apache/tuscany/sca/binding/jms/operationselector/jmsuserprop/OperationSelectorJMSUserProp.java b/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms/src/main/java/org/apache/tuscany/sca/binding/jms/operationselector/jmsuserprop/OperationSelectorJMSUserProp.java
deleted file mode 100644
index 5e76405754..0000000000
--- a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms/src/main/java/org/apache/tuscany/sca/binding/jms/operationselector/jmsuserprop/OperationSelectorJMSUserProp.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.binding.jms.operationselector.jmsuserprop;
-
-import javax.xml.namespace.QName;
-
-import org.apache.tuscany.sca.assembly.xml.Constants;
-import org.apache.tuscany.sca.assembly.OperationSelector;
-
-/**
- * Model of user property based operation selection
- *
- * <operationSelector.jmsUser propertName="MyHeaderProperty"/>
- *
- * @version $Rev$ $Date$
- */
-public class OperationSelectorJMSUserProp implements OperationSelector {
- public static final QName OPERATION_SELECTOR_JMS_USERPROP_QNAME = new QName(Constants.SCA10_TUSCANY_NS, "operationSelector.jmsUserProp");
- public static final String OPERATION_SELECTOR_JMS_USERPROP_ATTR = "propertyName";
-
- private String propertyName;
-
- public QName getSchemaName() {
- return OPERATION_SELECTOR_JMS_USERPROP_QNAME;
- }
-
- public boolean isUnresolved() {
- return false;
- }
-
- public void setUnresolved(boolean unresolved) {
- }
-
- public String getPropertyName() {
- return propertyName;
- }
-
- public void setPropertyName(String propertyName) {
- this.propertyName = propertyName;
- }
-}
diff --git a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms/src/main/java/org/apache/tuscany/sca/binding/jms/operationselector/jmsuserprop/OperationSelectorJMSUserPropProcessor.java b/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms/src/main/java/org/apache/tuscany/sca/binding/jms/operationselector/jmsuserprop/OperationSelectorJMSUserPropProcessor.java
deleted file mode 100644
index f1fd97cb4e..0000000000
--- a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms/src/main/java/org/apache/tuscany/sca/binding/jms/operationselector/jmsuserprop/OperationSelectorJMSUserPropProcessor.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.binding.jms.operationselector.jmsuserprop;
-
-
-import javax.xml.namespace.QName;
-import javax.xml.stream.XMLStreamException;
-import javax.xml.stream.XMLStreamReader;
-import javax.xml.stream.XMLStreamWriter;
-
-import org.apache.tuscany.sca.assembly.xml.Constants;
-import org.apache.tuscany.sca.contribution.ModelFactoryExtensionPoint;
-import org.apache.tuscany.sca.contribution.processor.BaseStAXArtifactProcessor;
-import org.apache.tuscany.sca.contribution.processor.StAXArtifactProcessor;
-import org.apache.tuscany.sca.contribution.resolver.ModelResolver;
-import org.apache.tuscany.sca.contribution.service.ContributionReadException;
-import org.apache.tuscany.sca.contribution.service.ContributionResolveException;
-import org.apache.tuscany.sca.contribution.service.ContributionWriteException;
-import org.apache.tuscany.sca.monitor.Monitor;
-
-/**
- *
- * @version $Rev$ $Date$
- */
-public class OperationSelectorJMSUserPropProcessor extends BaseStAXArtifactProcessor implements StAXArtifactProcessor<OperationSelectorJMSUserProp> {
-
- public QName getArtifactType() {
- return OperationSelectorJMSUserProp.OPERATION_SELECTOR_JMS_USERPROP_QNAME;
- }
-
- public OperationSelectorJMSUserPropProcessor(ModelFactoryExtensionPoint modelFactories, Monitor monitor) {
- }
-
-
- public OperationSelectorJMSUserProp read(XMLStreamReader reader) throws ContributionReadException, XMLStreamException {
- OperationSelectorJMSUserProp opSelector = new OperationSelectorJMSUserProp();
- String propertyName = reader.getAttributeValue(null, OperationSelectorJMSUserProp.OPERATION_SELECTOR_JMS_USERPROP_ATTR);
- if (propertyName != null && propertyName.length() > 0) {
- opSelector.setPropertyName(propertyName);
- } else {
- throw new ContributionReadException(OperationSelectorJMSUserProp.OPERATION_SELECTOR_JMS_USERPROP_QNAME.toString() + ": " +
- OperationSelectorJMSUserProp.OPERATION_SELECTOR_JMS_USERPROP_ATTR + " is a required attribute.");
- }
-
- return opSelector;
- }
-
- public void write(OperationSelectorJMSUserProp opSelector, XMLStreamWriter writer)
- throws ContributionWriteException, XMLStreamException {
- String prefix = "tuscany";
- writer.writeStartElement(prefix,
- getArtifactType().getLocalPart(),
- getArtifactType().getNamespaceURI());
- writer.writeNamespace("tuscany", Constants.SCA10_TUSCANY_NS);
-
- if (opSelector.getPropertyName() != null) {
- writer.writeAttribute(OperationSelectorJMSUserProp.OPERATION_SELECTOR_JMS_USERPROP_ATTR, opSelector.getPropertyName());
- }
-
- writer.writeEndElement();
- }
-
- public Class<OperationSelectorJMSUserProp> getModelType() {
- return OperationSelectorJMSUserProp.class;
- }
-
- public void resolve(OperationSelectorJMSUserProp arg0, ModelResolver arg1) throws ContributionResolveException {
-
- }
-
-}
diff --git a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmsbytes/WireFormatJMSBytes.java b/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmsbytes/WireFormatJMSBytes.java
deleted file mode 100644
index 84d1a2740f..0000000000
--- a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmsbytes/WireFormatJMSBytes.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.binding.jms.wireformat.jmsbytes;
-
-import javax.xml.namespace.QName;
-
-import org.apache.tuscany.sca.assembly.xml.Constants;
-import org.apache.tuscany.sca.assembly.WireFormat;
-
-/**
- * Implementation for policies that could be injected as parameter
- * into the axis2config.
- *
- * @version $Rev$ $Date$
- */
-public class WireFormatJMSBytes implements WireFormat {
- public static final QName WIRE_FORMAT_JMS_BYTES_QNAME = new QName(Constants.SCA10_TUSCANY_NS, "wireFormat.jmsBytes");
-
- public QName getSchemaName() {
- return WIRE_FORMAT_JMS_BYTES_QNAME;
- }
-
- public boolean isUnresolved() {
- return false;
- }
-
- public void setUnresolved(boolean unresolved) {
- }
-}
diff --git a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmsbytes/WireFormatJMSBytesProcessor.java b/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmsbytes/WireFormatJMSBytesProcessor.java
deleted file mode 100644
index 2d807d49cb..0000000000
--- a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmsbytes/WireFormatJMSBytesProcessor.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.binding.jms.wireformat.jmsbytes;
-
-import static javax.xml.stream.XMLStreamConstants.END_ELEMENT;
-import static javax.xml.stream.XMLStreamConstants.START_ELEMENT;
-
-import javax.xml.namespace.QName;
-import javax.xml.stream.XMLStreamException;
-import javax.xml.stream.XMLStreamReader;
-import javax.xml.stream.XMLStreamWriter;
-
-import org.apache.tuscany.sca.assembly.xml.Constants;
-import org.apache.tuscany.sca.contribution.ModelFactoryExtensionPoint;
-import org.apache.tuscany.sca.contribution.processor.BaseStAXArtifactProcessor;
-import org.apache.tuscany.sca.contribution.processor.StAXArtifactProcessor;
-import org.apache.tuscany.sca.contribution.resolver.ModelResolver;
-import org.apache.tuscany.sca.contribution.service.ContributionReadException;
-import org.apache.tuscany.sca.contribution.service.ContributionResolveException;
-import org.apache.tuscany.sca.contribution.service.ContributionWriteException;
-import org.apache.tuscany.sca.monitor.Monitor;
-
-/**
- *
- * @version $Rev$ $Date$
- */
-public class WireFormatJMSBytesProcessor extends BaseStAXArtifactProcessor implements StAXArtifactProcessor<WireFormatJMSBytes> {
-
- public QName getArtifactType() {
- return WireFormatJMSBytes.WIRE_FORMAT_JMS_BYTES_QNAME;
- }
-
- public WireFormatJMSBytesProcessor(ModelFactoryExtensionPoint modelFactories, Monitor monitor) {
- }
-
-
- public WireFormatJMSBytes read(XMLStreamReader reader) throws ContributionReadException, XMLStreamException {
- WireFormatJMSBytes wireFormat = new WireFormatJMSBytes();
-
- return wireFormat;
- }
-
- public void write(WireFormatJMSBytes wireFormat, XMLStreamWriter writer)
- throws ContributionWriteException, XMLStreamException {
- String prefix = "tuscany";
- writer.writeStartElement(prefix,
- getArtifactType().getLocalPart(),
- getArtifactType().getNamespaceURI());
- writer.writeNamespace("tuscany", Constants.SCA10_TUSCANY_NS);
-
- writer.writeEndElement();
- }
-
- public Class<WireFormatJMSBytes> getModelType() {
- return WireFormatJMSBytes.class;
- }
-
- public void resolve(WireFormatJMSBytes arg0, ModelResolver arg1) throws ContributionResolveException {
-
- }
-
-}
diff --git a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmsbytesxml/WireFormatJMSBytesXML.java b/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmsbytesxml/WireFormatJMSBytesXML.java
deleted file mode 100644
index 668171fc9f..0000000000
--- a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmsbytesxml/WireFormatJMSBytesXML.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.binding.jms.wireformat.jmsbytesxml;
-
-import javax.xml.namespace.QName;
-
-import org.apache.tuscany.sca.assembly.xml.Constants;
-import org.apache.tuscany.sca.assembly.WireFormat;
-
-
-public class WireFormatJMSBytesXML implements WireFormat {
- public static final QName WIRE_FORMAT_JMS_BYTES_QNAME = new QName(Constants.SCA10_TUSCANY_NS, "wireFormat.jmsBytesXML");
-
- public QName getSchemaName() {
- return WIRE_FORMAT_JMS_BYTES_QNAME;
- }
-
- public boolean isUnresolved() {
- return false;
- }
-
- public void setUnresolved(boolean unresolved) {
- }
-}
diff --git a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmsbytesxml/WireFormatJMSBytesXMLProcessor.java b/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmsbytesxml/WireFormatJMSBytesXMLProcessor.java
deleted file mode 100644
index 105aed270a..0000000000
--- a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmsbytesxml/WireFormatJMSBytesXMLProcessor.java
+++ /dev/null
@@ -1,75 +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.binding.jms.wireformat.jmsbytesxml;
-
-import static javax.xml.stream.XMLStreamConstants.END_ELEMENT;
-import static javax.xml.stream.XMLStreamConstants.START_ELEMENT;
-
-import javax.xml.namespace.QName;
-import javax.xml.stream.XMLStreamException;
-import javax.xml.stream.XMLStreamReader;
-import javax.xml.stream.XMLStreamWriter;
-
-import org.apache.tuscany.sca.assembly.xml.Constants;
-import org.apache.tuscany.sca.contribution.ModelFactoryExtensionPoint;
-import org.apache.tuscany.sca.contribution.processor.BaseStAXArtifactProcessor;
-import org.apache.tuscany.sca.contribution.processor.StAXArtifactProcessor;
-import org.apache.tuscany.sca.contribution.resolver.ModelResolver;
-import org.apache.tuscany.sca.contribution.service.ContributionReadException;
-import org.apache.tuscany.sca.contribution.service.ContributionResolveException;
-import org.apache.tuscany.sca.contribution.service.ContributionWriteException;
-import org.apache.tuscany.sca.monitor.Monitor;
-
-
-public class WireFormatJMSBytesXMLProcessor extends BaseStAXArtifactProcessor implements StAXArtifactProcessor<WireFormatJMSBytesXML> {
-
- public QName getArtifactType() {
- return WireFormatJMSBytesXML.WIRE_FORMAT_JMS_BYTES_QNAME;
- }
-
- public WireFormatJMSBytesXMLProcessor(ModelFactoryExtensionPoint modelFactories, Monitor monitor) {
- }
-
-
- public WireFormatJMSBytesXML read(XMLStreamReader reader) throws ContributionReadException, XMLStreamException {
- WireFormatJMSBytesXML wireFormat = new WireFormatJMSBytesXML();
-
- return wireFormat;
- }
-
- public void write(WireFormatJMSBytesXML wireFormat, XMLStreamWriter writer)
- throws ContributionWriteException, XMLStreamException {
- String prefix = "tuscany";
- writer.writeStartElement(prefix,
- getArtifactType().getLocalPart(),
- getArtifactType().getNamespaceURI());
- writer.writeNamespace("tuscany", Constants.SCA10_TUSCANY_NS);
-
- writer.writeEndElement();
- }
-
- public Class<WireFormatJMSBytesXML> getModelType() {
- return WireFormatJMSBytesXML.class;
- }
-
- public void resolve(WireFormatJMSBytesXML arg0, ModelResolver arg1) throws ContributionResolveException {
-
- }
-
-}
diff --git a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmsdefault/WireFormatJMSDefault.java b/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmsdefault/WireFormatJMSDefault.java
deleted file mode 100644
index 8cca30a8ca..0000000000
--- a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmsdefault/WireFormatJMSDefault.java
+++ /dev/null
@@ -1,64 +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.binding.jms.wireformat.jmsdefault;
-
-import javax.xml.namespace.QName;
-
-import org.apache.tuscany.sca.assembly.xml.Constants;
-import org.apache.tuscany.sca.assembly.WireFormat;
-
-/**
- *
- * @version $Rev$ $Date$
- */
-public class WireFormatJMSDefault implements WireFormat {
- public static final QName WIRE_FORMAT_JMS_DEFAULT_QNAME = new QName(Constants.SCA10_TUSCANY_NS, "wireFormat.jmsdefault");
-
- public static final String WIRE_FORMAT_JMS_DEFAULT_FORMAT_ATTR = "sendFormat";
-
- public static final String WIRE_FORMAT_JMS_DEFAULT_TEXT_FORMAT_VAL = "text";
- public static final String WIRE_FORMAT_JMS_DEFAULT_BYTES_FORMAT_VAL = "bytes";
-
- //default is to use a javax.jms.BytesMessage
- private boolean useBytesMessage = true;
-
- public QName getSchemaName() {
- return WIRE_FORMAT_JMS_DEFAULT_QNAME;
- }
-
- public boolean isUnresolved() {
- return false;
- }
-
- public void setUnresolved(boolean unresolved) {
- }
-
- @Override
- public boolean equals(Object obj) {
- return this.getClass() == obj.getClass();
- }
-
- public void setUseBytesMessage(boolean useBytesMessage) {
- this.useBytesMessage = useBytesMessage;
- }
-
- public boolean isUseBytesMessage() {
- return useBytesMessage;
- }
-}
diff --git a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmsdefault/WireFormatJMSDefaultProcessor.java b/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmsdefault/WireFormatJMSDefaultProcessor.java
deleted file mode 100644
index 1c3f666577..0000000000
--- a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmsdefault/WireFormatJMSDefaultProcessor.java
+++ /dev/null
@@ -1,93 +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.binding.jms.wireformat.jmsdefault;
-
-import static javax.xml.stream.XMLStreamConstants.END_ELEMENT;
-import static javax.xml.stream.XMLStreamConstants.START_ELEMENT;
-
-import javax.xml.namespace.QName;
-import javax.xml.stream.XMLStreamException;
-import javax.xml.stream.XMLStreamReader;
-import javax.xml.stream.XMLStreamWriter;
-
-import org.apache.tuscany.sca.assembly.xml.Constants;
-import org.apache.tuscany.sca.binding.jms.wireformat.jmsobject.WireFormatJMSObject;
-import org.apache.tuscany.sca.contribution.ModelFactoryExtensionPoint;
-import org.apache.tuscany.sca.contribution.processor.BaseStAXArtifactProcessor;
-import org.apache.tuscany.sca.contribution.processor.StAXArtifactProcessor;
-import org.apache.tuscany.sca.contribution.resolver.ModelResolver;
-import org.apache.tuscany.sca.contribution.service.ContributionReadException;
-import org.apache.tuscany.sca.contribution.service.ContributionResolveException;
-import org.apache.tuscany.sca.contribution.service.ContributionWriteException;
-import org.apache.tuscany.sca.monitor.Monitor;
-
-/**
- *
- * @version $Rev$ $Date$
- */
-public class WireFormatJMSDefaultProcessor extends BaseStAXArtifactProcessor implements StAXArtifactProcessor<WireFormatJMSDefault> {
-
- public QName getArtifactType() {
- return WireFormatJMSDefault.WIRE_FORMAT_JMS_DEFAULT_QNAME;
- }
-
- public WireFormatJMSDefaultProcessor(ModelFactoryExtensionPoint modelFactories, Monitor monitor) {
- }
-
- public WireFormatJMSDefault read(XMLStreamReader reader) throws ContributionReadException, XMLStreamException {
- WireFormatJMSDefault wireFormat = new WireFormatJMSDefault();
-
- String sendFormat = reader.getAttributeValue(null, WireFormatJMSDefault.WIRE_FORMAT_JMS_DEFAULT_FORMAT_ATTR);
- if (sendFormat != null && sendFormat.length() > 0) {
- if (WireFormatJMSDefault.WIRE_FORMAT_JMS_DEFAULT_TEXT_FORMAT_VAL.equalsIgnoreCase(sendFormat)) {
- wireFormat.setUseBytesMessage(false);
- }else if (WireFormatJMSDefault.WIRE_FORMAT_JMS_DEFAULT_BYTES_FORMAT_VAL.equalsIgnoreCase(sendFormat)) {
- wireFormat.setUseBytesMessage(true);
- }else{
- throw new ContributionReadException(WireFormatJMSDefault.WIRE_FORMAT_JMS_DEFAULT_QNAME.toString() +" " +sendFormat + " is not a valid attribute value for " +
- WireFormatJMSDefault.WIRE_FORMAT_JMS_DEFAULT_FORMAT_ATTR);
- }
- }
-
- return wireFormat;
- }
-
- public void write(WireFormatJMSDefault wireFormat, XMLStreamWriter writer) throws ContributionWriteException, XMLStreamException {
- String prefix = "tuscany";
- writer.writeStartElement(prefix, getArtifactType().getLocalPart(), getArtifactType().getNamespaceURI());
- writer.writeNamespace("tuscany", Constants.SCA10_TUSCANY_NS);
-
- if (wireFormat.isUseBytesMessage()) {
- writer.writeAttribute(WireFormatJMSDefault.WIRE_FORMAT_JMS_DEFAULT_FORMAT_ATTR, WireFormatJMSDefault.WIRE_FORMAT_JMS_DEFAULT_BYTES_FORMAT_VAL);
- } else {
- writer.writeAttribute(WireFormatJMSDefault.WIRE_FORMAT_JMS_DEFAULT_FORMAT_ATTR, WireFormatJMSDefault.WIRE_FORMAT_JMS_DEFAULT_TEXT_FORMAT_VAL);
- }
-
- writer.writeEndElement();
- }
-
- public Class<WireFormatJMSDefault> getModelType() {
- return WireFormatJMSDefault.class;
- }
-
- public void resolve(WireFormatJMSDefault arg0, ModelResolver arg1) throws ContributionResolveException {
-
- }
-
-}
diff --git a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmsobject/WireFormatJMSObject.java b/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmsobject/WireFormatJMSObject.java
deleted file mode 100644
index a485d2b5ec..0000000000
--- a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmsobject/WireFormatJMSObject.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.binding.jms.wireformat.jmsobject;
-
-import javax.xml.namespace.QName;
-
-import org.apache.tuscany.sca.assembly.xml.Constants;
-import org.apache.tuscany.sca.assembly.WireFormat;
-
-/**
- * Implementation for policies that could be injected as parameter
- * into the axis2config.
- *
- * @version $Rev$ $Date$
- */
-public class WireFormatJMSObject implements WireFormat {
- public static final QName WIRE_FORMAT_JMS_BYTES_QNAME = new QName(Constants.SCA10_TUSCANY_NS, "wireFormat.jmsObject");
-
- public static final String WIRE_FORMAT_JMS_OBJECT_WRAP_SINGLE_ATTR = "wrapSingle";
-
- private boolean wrappedSingleInput = false;
-
- public QName getSchemaName() {
- return WIRE_FORMAT_JMS_BYTES_QNAME;
- }
-
- public boolean isUnresolved() {
- return false;
- }
-
- public void setUnresolved(boolean unresolved) {
- }
-
- public void setWrappedSingleInput(boolean wrappedSingleInput) {
- this.wrappedSingleInput = wrappedSingleInput;
- }
-
- public boolean isWrappedSingleInput() {
- return wrappedSingleInput;
- }
-}
diff --git a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmsobject/WireFormatJMSObjectProcessor.java b/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmsobject/WireFormatJMSObjectProcessor.java
deleted file mode 100644
index 62b2a91d62..0000000000
--- a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmsobject/WireFormatJMSObjectProcessor.java
+++ /dev/null
@@ -1,91 +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.binding.jms.wireformat.jmsobject;
-
-import static javax.xml.stream.XMLStreamConstants.END_ELEMENT;
-import static javax.xml.stream.XMLStreamConstants.START_ELEMENT;
-
-import javax.xml.namespace.QName;
-import javax.xml.stream.XMLStreamException;
-import javax.xml.stream.XMLStreamReader;
-import javax.xml.stream.XMLStreamWriter;
-
-import org.apache.tuscany.sca.assembly.xml.Constants;
-import org.apache.tuscany.sca.contribution.ModelFactoryExtensionPoint;
-import org.apache.tuscany.sca.contribution.processor.BaseStAXArtifactProcessor;
-import org.apache.tuscany.sca.contribution.processor.StAXArtifactProcessor;
-import org.apache.tuscany.sca.contribution.resolver.ModelResolver;
-import org.apache.tuscany.sca.contribution.service.ContributionReadException;
-import org.apache.tuscany.sca.contribution.service.ContributionResolveException;
-import org.apache.tuscany.sca.contribution.service.ContributionWriteException;
-import org.apache.tuscany.sca.monitor.Monitor;
-
-/**
- *
- * @version $Rev$ $Date$
- */
-public class WireFormatJMSObjectProcessor extends BaseStAXArtifactProcessor implements StAXArtifactProcessor<WireFormatJMSObject> {
-
- public QName getArtifactType() {
- return WireFormatJMSObject.WIRE_FORMAT_JMS_BYTES_QNAME;
- }
-
- public WireFormatJMSObjectProcessor(ModelFactoryExtensionPoint modelFactories, Monitor monitor) {
- }
-
-
- public WireFormatJMSObject read(XMLStreamReader reader) throws ContributionReadException, XMLStreamException {
- WireFormatJMSObject wireFormat = new WireFormatJMSObject();
-
- String wrappedSingleInput = reader.getAttributeValue(null, WireFormatJMSObject.WIRE_FORMAT_JMS_OBJECT_WRAP_SINGLE_ATTR);
- if (wrappedSingleInput != null && wrappedSingleInput.length() > 0) {
- if ("true".equalsIgnoreCase(wrappedSingleInput)) {
- wireFormat.setWrappedSingleInput(true);
- } else if ("false".equalsIgnoreCase(wrappedSingleInput)) {
- wireFormat.setWrappedSingleInput(false);
- } else {
- throw new ContributionReadException(WireFormatJMSObject.WIRE_FORMAT_JMS_BYTES_QNAME.toString() + ": " + wrappedSingleInput +
- " is not a valid attribute value for " + WireFormatJMSObject.WIRE_FORMAT_JMS_OBJECT_WRAP_SINGLE_ATTR);
- }
- }
- return wireFormat;
- }
-
- public void write(WireFormatJMSObject wireFormat, XMLStreamWriter writer)
- throws ContributionWriteException, XMLStreamException {
- String prefix = "tuscany";
- writer.writeStartElement(prefix,
- getArtifactType().getLocalPart(),
- getArtifactType().getNamespaceURI());
- writer.writeNamespace("tuscany", Constants.SCA10_TUSCANY_NS);
-
- writer.writeAttribute(WireFormatJMSObject.WIRE_FORMAT_JMS_OBJECT_WRAP_SINGLE_ATTR, String.valueOf(wireFormat.isWrappedSingleInput()));
-
- writer.writeEndElement();
- }
-
- public Class<WireFormatJMSObject> getModelType() {
- return WireFormatJMSObject.class;
- }
-
- public void resolve(WireFormatJMSObject arg0, ModelResolver arg1) throws ContributionResolveException {
-
- }
-
-}
diff --git a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmstext/WireFormatJMSText.java b/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmstext/WireFormatJMSText.java
deleted file mode 100644
index fff33df1f4..0000000000
--- a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmstext/WireFormatJMSText.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.binding.jms.wireformat.jmstext;
-
-import javax.xml.namespace.QName;
-
-import org.apache.tuscany.sca.assembly.xml.Constants;
-import org.apache.tuscany.sca.assembly.WireFormat;
-
-/**
- * Implementation for policies that could be injected as parameter
- * into the axis2config.
- *
- * @version $Rev$ $Date$
- */
-public class WireFormatJMSText implements WireFormat {
- public static final QName WIRE_FORMAT_JMS_BYTES_QNAME = new QName(Constants.SCA10_TUSCANY_NS, "wireFormat.jmsText");
-
- public QName getSchemaName() {
- return WIRE_FORMAT_JMS_BYTES_QNAME;
- }
-
- public boolean isUnresolved() {
- return false;
- }
-
- public void setUnresolved(boolean unresolved) {
- }
-}
diff --git a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmstext/WireFormatJMSTextProcessor.java b/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmstext/WireFormatJMSTextProcessor.java
deleted file mode 100644
index 9b675df290..0000000000
--- a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmstext/WireFormatJMSTextProcessor.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.binding.jms.wireformat.jmstext;
-
-import static javax.xml.stream.XMLStreamConstants.END_ELEMENT;
-import static javax.xml.stream.XMLStreamConstants.START_ELEMENT;
-
-import javax.xml.namespace.QName;
-import javax.xml.stream.XMLStreamException;
-import javax.xml.stream.XMLStreamReader;
-import javax.xml.stream.XMLStreamWriter;
-
-import org.apache.tuscany.sca.assembly.xml.Constants;
-import org.apache.tuscany.sca.contribution.ModelFactoryExtensionPoint;
-import org.apache.tuscany.sca.contribution.processor.BaseStAXArtifactProcessor;
-import org.apache.tuscany.sca.contribution.processor.StAXArtifactProcessor;
-import org.apache.tuscany.sca.contribution.resolver.ModelResolver;
-import org.apache.tuscany.sca.contribution.service.ContributionReadException;
-import org.apache.tuscany.sca.contribution.service.ContributionResolveException;
-import org.apache.tuscany.sca.contribution.service.ContributionWriteException;
-import org.apache.tuscany.sca.monitor.Monitor;
-
-/**
- *
- * @version $Rev$ $Date$
- */
-public class WireFormatJMSTextProcessor extends BaseStAXArtifactProcessor implements StAXArtifactProcessor<WireFormatJMSText> {
-
- public QName getArtifactType() {
- return WireFormatJMSText.WIRE_FORMAT_JMS_BYTES_QNAME;
- }
-
- public WireFormatJMSTextProcessor(ModelFactoryExtensionPoint modelFactories, Monitor monitor) {
- }
-
-
- public WireFormatJMSText read(XMLStreamReader reader) throws ContributionReadException, XMLStreamException {
- WireFormatJMSText wireFormat = new WireFormatJMSText();
-
- return wireFormat;
- }
-
- public void write(WireFormatJMSText wireFormat, XMLStreamWriter writer)
- throws ContributionWriteException, XMLStreamException {
- String prefix = "tuscany";
- writer.writeStartElement(prefix,
- getArtifactType().getLocalPart(),
- getArtifactType().getNamespaceURI());
- writer.writeNamespace("tuscany", Constants.SCA10_TUSCANY_NS);
-
- writer.writeEndElement();
- }
-
- public Class<WireFormatJMSText> getModelType() {
- return WireFormatJMSText.class;
- }
-
- public void resolve(WireFormatJMSText arg0, ModelResolver arg1) throws ContributionResolveException {
-
- }
-
-}
diff --git a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmstextxml/WireFormatJMSTextXML.java b/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmstextxml/WireFormatJMSTextXML.java
deleted file mode 100644
index 23a53b9d96..0000000000
--- a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmstextxml/WireFormatJMSTextXML.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.binding.jms.wireformat.jmstextxml;
-
-import javax.xml.namespace.QName;
-
-import org.apache.tuscany.sca.assembly.xml.Constants;
-import org.apache.tuscany.sca.assembly.WireFormat;
-
-/**
- *
- * @version $Rev$ $Date$
- */
-public class WireFormatJMSTextXML implements WireFormat {
- public static final QName WIRE_FORMAT_JMS_DEFAULT_QNAME = new QName(Constants.SCA10_TUSCANY_NS, "wireFormat.jmsTextXML");
-
- public QName getSchemaName() {
- return WIRE_FORMAT_JMS_DEFAULT_QNAME;
- }
-
- public boolean isUnresolved() {
- return false;
- }
-
- public void setUnresolved(boolean unresolved) {
- }
-
- @Override
- public boolean equals(Object obj) {
- return this.getClass() == obj.getClass();
- }
-}
diff --git a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmstextxml/WireFormatJMSTextXMLProcessor.java b/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmstextxml/WireFormatJMSTextXMLProcessor.java
deleted file mode 100644
index 8248fc771a..0000000000
--- a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmstextxml/WireFormatJMSTextXMLProcessor.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.binding.jms.wireformat.jmstextxml;
-
-import static javax.xml.stream.XMLStreamConstants.END_ELEMENT;
-import static javax.xml.stream.XMLStreamConstants.START_ELEMENT;
-
-import javax.xml.namespace.QName;
-import javax.xml.stream.XMLStreamException;
-import javax.xml.stream.XMLStreamReader;
-import javax.xml.stream.XMLStreamWriter;
-
-import org.apache.tuscany.sca.assembly.xml.Constants;
-import org.apache.tuscany.sca.contribution.ModelFactoryExtensionPoint;
-import org.apache.tuscany.sca.contribution.processor.BaseStAXArtifactProcessor;
-import org.apache.tuscany.sca.contribution.processor.StAXArtifactProcessor;
-import org.apache.tuscany.sca.contribution.resolver.ModelResolver;
-import org.apache.tuscany.sca.contribution.service.ContributionReadException;
-import org.apache.tuscany.sca.contribution.service.ContributionResolveException;
-import org.apache.tuscany.sca.contribution.service.ContributionWriteException;
-import org.apache.tuscany.sca.monitor.Monitor;
-
-/**
- *
- * @version $Rev$ $Date$
- */
-public class WireFormatJMSTextXMLProcessor extends BaseStAXArtifactProcessor implements StAXArtifactProcessor<WireFormatJMSTextXML> {
-
- public QName getArtifactType() {
- return WireFormatJMSTextXML.WIRE_FORMAT_JMS_DEFAULT_QNAME;
- }
-
- public WireFormatJMSTextXMLProcessor(ModelFactoryExtensionPoint modelFactories, Monitor monitor) {
- }
-
-
- public WireFormatJMSTextXML read(XMLStreamReader reader) throws ContributionReadException, XMLStreamException {
- WireFormatJMSTextXML wireFormat = new WireFormatJMSTextXML();
-
- return wireFormat;
- }
-
- public void write(WireFormatJMSTextXML wireFormat, XMLStreamWriter writer)
- throws ContributionWriteException, XMLStreamException {
- String prefix = "tuscany";
- writer.writeStartElement(prefix,
- getArtifactType().getLocalPart(),
- getArtifactType().getNamespaceURI());
- writer.writeNamespace("tuscany", Constants.SCA10_TUSCANY_NS);
-
- writer.writeEndElement();
- }
-
- public Class<WireFormatJMSTextXML> getModelType() {
- return WireFormatJMSTextXML.class;
- }
-
- public void resolve(WireFormatJMSTextXML arg0, ModelResolver arg1) throws ContributionResolveException {
-
- }
-
-}
diff --git a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms/src/main/resources/META-INF/services/org.apache.tuscany.sca.contribution.processor.StAXArtifactProcessor b/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms/src/main/resources/META-INF/services/org.apache.tuscany.sca.contribution.processor.StAXArtifactProcessor
deleted file mode 100644
index 05f9f377ba..0000000000
--- a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms/src/main/resources/META-INF/services/org.apache.tuscany.sca.contribution.processor.StAXArtifactProcessor
+++ /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.
-
-# Implementation class for the artifact processor extension
-org.apache.tuscany.sca.binding.jms.impl.JMSBindingProcessor;qname=http://www.osoa.org/xmlns/sca/1.0#binding.jms,model=org.apache.tuscany.sca.binding.jms.impl.JMSBinding
-org.apache.tuscany.sca.binding.jms.wireformat.jmsdefault.WireFormatJMSDefaultProcessor;qname=http://tuscany.apache.org/xmlns/sca/1.0#wireFormat.jmsdefault,model=org.apache.tuscany.sca.binding.jms.wireformat.jmsdefault.WireFormatJMSDefault
-org.apache.tuscany.sca.binding.jms.wireformat.jmstextxml.WireFormatJMSTextXMLProcessor;qname=http://tuscany.apache.org/xmlns/sca/1.0#wireFormat.jmsTextXML,model=org.apache.tuscany.sca.binding.jms.wireformat.jmstextxml.WireFormatJMSTextXML
-org.apache.tuscany.sca.binding.jms.wireformat.jmsbytes.WireFormatJMSBytesProcessor;qname=http://tuscany.apache.org/xmlns/sca/1.0#wireFormat.jmsBytes,model=org.apache.tuscany.sca.binding.jms.wireformat.jmsbytes.WireFormatJMSBytes
-org.apache.tuscany.sca.binding.jms.wireformat.jmsbytesxml.WireFormatJMSBytesXMLProcessor;qname=http://tuscany.apache.org/xmlns/sca/1.0#wireFormat.jmsBytesXML,model=org.apache.tuscany.sca.binding.jms.wireformat.jmsbytesxml.WireFormatJMSBytesXML
-org.apache.tuscany.sca.binding.jms.wireformat.jmstext.WireFormatJMSTextProcessor;qname=http://tuscany.apache.org/xmlns/sca/1.0#wireFormat.jmsText,model=org.apache.tuscany.sca.binding.jms.wireformat.jmstext.WireFormatJMSText
-org.apache.tuscany.sca.binding.jms.wireformat.jmsobject.WireFormatJMSObjectProcessor;qname=http://tuscany.apache.org/xmlns/sca/1.0#wireFormat.jmsObject,model=org.apache.tuscany.sca.binding.jms.wireformat.jmsobject.WireFormatJMSObject
-org.apache.tuscany.sca.binding.jms.operationselector.jmsdefault.OperationSelectorJMSDefaultProcessor;qname=http://tuscany.apache.org/xmlns/sca/1.0#operationSelector.jmsdefault,model=org.apache.tuscany.sca.binding.jms.operationselector.jmsdefault.OperationSelectorJMSDefault
-org.apache.tuscany.sca.binding.jms.operationselector.jmsuserprop.OperationSelectorJMSUserPropProcessor;qname=http://tuscany.apache.org/xmlns/sca/1.0#operationSelector.jmsUserProp,model=org.apache.tuscany.sca.binding.jms.operationselector.jmsuserprop.OperationSelectorJMSUserProp \ No newline at end of file
diff --git a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms/src/main/resources/binding-jms-validation-messages.properties b/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms/src/main/resources/binding-jms-validation-messages.properties
deleted file mode 100644
index 9361bb0e3c..0000000000
--- a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms/src/main/resources/binding-jms-validation-messages.properties
+++ /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.
-#
-#
-DoesntProcessOperationProperties = JMS Binding doesn't process operationProperties yet
-DoesntProcessHeaders = JMS Binding doesn't process headers yet
-DoesntProcessResourceAdapter = JMS Binding doesn't process resourceAdapter yet
-DoesntProcessResponseConnectionFactory = JMS Binding doesn't process response connectionFactory yet
-DoesntProcessResponseActivationSpec = JMS Binding doesn't process response activationSpec yet
-DoesntProcessResponseDestinationType = JMS Binding doesn't process response destination type yet
-DoesntProcessActivationSpec = JMS Binding doesn't process activationSpec yet
-DoesntProcessDestinationType = JMS Binding doesn't process destination type yet
-MissingConnectionFactoryName = Missing ConnectionFactory Name
-MissingResponseConnectionFactory = Missing response connectionFactory name
-InvalidResponseDestinationType = Invalid response destination type: {0}
-InvalidDestinationType = Invalid destination type: {0}
-MissingActivationSpecName = Missing ActivationSpec Name
-MissingResponseActivationSpec = Missing response ActivationSpec name
-UnknownTokenInURI = Unknown token {0} in uri: {1}
-MustStartWithSchema = URI must start with the scheme 'jms:' for uri: {0}
-InvalidCorrelationScheme = Invalid correlationScheme: {0}
-UnexpectedElement = Incomplete binding.jms definition found unexpected element: {0}
-UnexpectedResponseElement = Incomplete binding.jms/response definition found unexpected element: {0}
-InvalidJMSDeliveryMode = Invalid JMSDeliveryMode: {0}
-InvalidJMSPriority = Invalid JMSPriority: {0}
-MissingJMSOperationPropertyName = Missing JMSOperationProperty Name
-InvalidOPJMSDeliveryMode = Invalid OPJMSDeliveryMode: {0}
-InvalidOPJMSPriority = Invalid OPJMSPriority: {0}
-DestinationQueueContradiction = Destination type queue contradicts connection factory name: {0}
-DestinationTopicContradiction = Destination type topic contradicts connection factory name: {0}
-ConnectionFactoryActivationSpecContradiction = Connection factory \"{0}\" and activation specification \"{0}\" are mutually exclusive
-ResponseAttrElement = Response connection \"{0}\" and response element \"{1}\" are mutually exclusive
-BindingNotFound = {0} refers to a binding definition {1} which is not found
-DuplicateOperationProperties = Must not use both operationProperties attribute and operationProperties element
diff --git a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms/src/test/java/org/apache/tuscany/sca/binding/jms/impl/JMSBindingProcessorTestCase.java b/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms/src/test/java/org/apache/tuscany/sca/binding/jms/impl/JMSBindingProcessorTestCase.java
deleted file mode 100644
index e05f31da1b..0000000000
--- a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms/src/test/java/org/apache/tuscany/sca/binding/jms/impl/JMSBindingProcessorTestCase.java
+++ /dev/null
@@ -1,783 +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.binding.jms.impl;
-
-import java.io.StringReader;
-import java.util.Iterator;
-import java.util.Map;
-import java.util.Set;
-
-import javax.xml.stream.XMLInputFactory;
-import javax.xml.stream.XMLStreamReader;
-
-import junit.framework.TestCase;
-
-import org.apache.tuscany.sca.assembly.Composite;
-import org.apache.tuscany.sca.assembly.OperationsConfigurator;
-import org.apache.tuscany.sca.assembly.WireFormat;
-import org.apache.tuscany.sca.binding.jms.wireformat.jmsbytes.WireFormatJMSBytes;
-import org.apache.tuscany.sca.binding.jms.wireformat.jmsobject.WireFormatJMSObject;
-import org.apache.tuscany.sca.contribution.processor.DefaultStAXArtifactProcessorExtensionPoint;
-import org.apache.tuscany.sca.contribution.processor.ExtensibleStAXArtifactProcessor;
-import org.apache.tuscany.sca.contribution.processor.StAXArtifactProcessor;
-import org.apache.tuscany.sca.contribution.processor.StAXArtifactProcessorExtensionPoint;
-import org.apache.tuscany.sca.core.DefaultExtensionPointRegistry;
-import org.apache.tuscany.sca.core.UtilityExtensionPoint;
-import org.apache.tuscany.sca.monitor.Monitor;
-import org.apache.tuscany.sca.monitor.MonitorFactory;
-import org.apache.tuscany.sca.monitor.impl.DefaultMonitorFactoryImpl;
-
-/**
- * Tests for JMS binding xml
- */
-public class JMSBindingProcessorTestCase extends TestCase {
- // Note: If you are adding new JMS binding read test cases,
- // consider adding a similar test case to JMSBindingProcessorWriteTestCase.
- public static final String COMPOSITE =
- "<?xml version=\"1.0\" encoding=\"ASCII\"?>"
- + "<composite xmlns=\"http://www.osoa.org/xmlns/sca/1.0\" targetNamespace=\"http://binding-jms\" name=\"binding-jms\">"
- + " <component name=\"HelloWorldComponent\">"
- + " <implementation.java class=\"services.HelloWorld\"/>"
- + " <service name=\"HelloWorldService\">"
- + " <binding.jms uri=\"jms:testQueue\" />"
- + " </service>"
- + " </component>"
- + "</composite>";
-
- public static final String HEADERS1 =
- "<?xml version=\"1.0\" encoding=\"ASCII\"?>"
- + "<composite xmlns=\"http://www.osoa.org/xmlns/sca/1.0\" targetNamespace=\"http://binding-jms\" name=\"binding-jms\">"
- + " <component name=\"HelloWorldComponent\">"
- + " <implementation.java class=\"services.HelloWorld\"/>"
- + " <service name=\"HelloWorldService\">"
- + " <binding.jms uri=\"jms:testQueue\" >"
- + " <headers JMSType=\"myType\" JMSCorrelationID=\"myCorrelId\" JMSDeliveryMode=\"PERSISTENT\" JMSTimeToLive=\"54321\" JMSPriority=\"5\">"
- + " </headers>"
- + " </binding.jms>"
- + " </service>"
- + " </component>"
- + "</composite>";
-
- public static final String HEADERS_INVALID_PRIORITY =
- "<?xml version=\"1.0\" encoding=\"ASCII\"?>"
- + "<composite xmlns=\"http://www.osoa.org/xmlns/sca/1.0\" targetNamespace=\"http://binding-jms\" name=\"binding-jms\">"
- + " <component name=\"HelloWorldComponent\">"
- + " <implementation.java class=\"services.HelloWorld\"/>"
- + " <service name=\"HelloWorldService\">"
- + " <binding.jms uri=\"jms:testQueue\" >"
- + " <headers JMSType=\"myType\" JMSCorrelationID=\"myCorrelId\" JMSDeliveryMode=\"PERSISTENT\" JMSTimeToLive=\"54321\" JMSPriority=\"medium\">"
- + " </headers>"
- + " </binding.jms>"
- + " </service>"
- + " </component>"
- + "</composite>";
-
- public static final String PROPERTIES1 =
- "<?xml version=\"1.0\" encoding=\"ASCII\"?>"
- + "<composite xmlns=\"http://www.osoa.org/xmlns/sca/1.0\" targetNamespace=\"http://binding-jms\" name=\"binding-jms\">"
- + " <component name=\"HelloWorldComponent\">"
- + " <implementation.java class=\"services.HelloWorld\"/>"
- + " <service name=\"HelloWorldService\">"
- + " <binding.jms uri=\"jms:testQueue\" >"
- + " <headers>"
- + " <property name=\"p1\">bla</property>"
- + " <property name=\"intProp\" type=\"int\">42</property>"
- + " </headers>"
- + " </binding.jms>"
- + " </service>"
- + " </component>"
- + "</composite>";
-
- public static final String OP_PROPERTIES1 =
- "<?xml version=\"1.0\" encoding=\"ASCII\"?>"
- + "<composite xmlns=\"http://www.osoa.org/xmlns/sca/1.0\" targetNamespace=\"http://binding-jms\" name=\"binding-jms\">"
- + " <component name=\"HelloWorldComponent\">"
- + " <implementation.java class=\"services.HelloWorld\"/>"
- + " <service name=\"HelloWorldService\">"
- + " <binding.jms uri=\"jms:testQueue\" >"
- + " <operationProperties name=\"op1\">"
- + " <headers JMSType=\"op1Type\" >"
- + " <property name=\"p1\">bla</property>"
- + " <property name=\"intProp\" type=\"int\">42</property>"
- + " </headers>"
- + " </operationProperties >"
- + " <operationProperties name=\"op2\" nativeOperation=\"nativeOp2\" >"
- + " <headers JMSType=\"op2Type\">"
- + " <property name=\"p2\">op2bla</property>"
- + " <property name=\"intProp\" type=\"int\">77</property>"
- + " </headers>"
- + " </operationProperties >"
- + " </binding.jms>"
- + " </service>"
- + " </component>"
- + "</composite>";
-
- public static final String OP_NAMES_NO_PROPERTIES1 =
- "<?xml version=\"1.0\" encoding=\"ASCII\"?>"
- + "<composite xmlns=\"http://www.osoa.org/xmlns/sca/1.0\" targetNamespace=\"http://binding-jms\" name=\"binding-jms\">"
- + " <component name=\"HelloWorldComponent\">"
- + " <implementation.java class=\"services.HelloWorld\"/>"
- + " <service name=\"HelloWorldService\">"
- + " <binding.jms uri=\"jms:testQueue\" >"
- + " <operationProperties name=\"op1\">"
- + " </operationProperties >"
- + " <operationProperties name=\"op2\" nativeOperation=\"nativeOp2\" >"
- + " </operationProperties >"
- + " </binding.jms>"
- + " </service>"
- + " </component>"
- + "</composite>";
-
- public static final String SELECTOR =
- "<?xml version=\"1.0\" encoding=\"ASCII\"?>"
- + "<composite xmlns=\"http://www.osoa.org/xmlns/sca/1.0\" targetNamespace=\"http://binding-jms\" name=\"binding-jms\">"
- + " <component name=\"HelloWorldComponent\">"
- + " <implementation.java class=\"services.HelloWorld\"/>"
- + " <service name=\"HelloWorldService\">"
- + " <binding.jms uri=\"jms:testQueue\" >"
- + " <SubscriptionHeaders JMSSelector=\"prop1 = 2\" />"
- + " </binding.jms>"
- + " </service>"
- + " </component>"
- + "</composite>";
-
- public static final String COMPOSITE_INVALID_URI =
- "<?xml version=\"1.0\" encoding=\"ASCII\"?>"
- + "<composite xmlns=\"http://www.osoa.org/xmlns/sca/1.0\" targetNamespace=\"http://binding-jms\" name=\"binding-jms\">"
- + " <component name=\"HelloWorldComponent\">"
- + " <implementation.java class=\"services.HelloWorld\"/>"
- + " <service name=\"HelloWorldService\">"
- + " <binding.jms uri=\"invalidjms:testQueue\" />"
- + " </service>"
- + " </component>"
- + "</composite>";
-
- // Invalid: contains both a response attribute and a response element.
- public static final String COMPOSITE_INVALID_RESPONSE_ATTR_ELEMENT =
- "<?xml version=\"1.0\" encoding=\"ASCII\"?>"
- + "<composite xmlns=\"http://www.osoa.org/xmlns/sca/1.0\" targetNamespace=\"http://binding-jms\" name=\"binding-jms\">"
- + " <component name=\"HelloWorldComponent\">"
- + " <implementation.java class=\"services.HelloWorld\"/>"
- + " <service name=\"HelloWorldService\">"
- + " <binding.jms uri=\"jms:testQueue\" responseConnection=\"responseConnectionAttrName\">"
- + " <response>"
- + " <destination name=\"responseConnectionElementName\"/>"
- + " </response>"
- + " </binding.jms>"
- + " </service>"
- + " </component>"
- + "</composite>";
-
- public static final String DEST_PROPS =
- "<?xml version=\"1.0\" encoding=\"ASCII\"?>"
- + "<composite xmlns=\"http://www.osoa.org/xmlns/sca/1.0\" targetNamespace=\"http://binding-jms\" name=\"binding-jms\">"
- + " <component name=\"HelloWorldComponent\">"
- + " <implementation.java class=\"services.HelloWorld\"/>"
- + " <service name=\"HelloWorldService\">"
- + " <binding.jms>"
- + " <destination name=\"foo\">"
- + " <property name=\"xxx\" type=\"yyy\">"
- + " some value text"
- + " </property>"
- + " <property name=\"two\">"
- + " bla"
- + " </property>"
- + " </destination>"
- + " </binding.jms>"
- + " </service>"
- + " </component>"
- + "</composite>";
-
- public static final String CF_PROPS =
- "<?xml version=\"1.0\" encoding=\"ASCII\"?>"
- + "<composite xmlns=\"http://www.osoa.org/xmlns/sca/1.0\" targetNamespace=\"http://binding-jms\" name=\"binding-jms\">"
- + " <component name=\"HelloWorldComponent\">"
- + " <implementation.java class=\"services.HelloWorld\"/>"
- + " <service name=\"HelloWorldService\">"
- + " <binding.jms>"
- + " <connectionFactory name=\"foo\">"
- + " <property name=\"xxx\" type=\"yyy\">"
- + " some value text"
- + " </property>"
- + " <property name=\"two\">"
- + " bla"
- + " </property>"
- + " </connectionFactory>"
- + " </binding.jms>"
- + " </service>"
- + " </component>"
- + "</composite>";
-
- public static final String AS_PROPS =
- "<?xml version=\"1.0\" encoding=\"ASCII\"?>"
- + "<composite xmlns=\"http://www.osoa.org/xmlns/sca/1.0\" targetNamespace=\"http://binding-jms\" name=\"binding-jms\">"
- + " <component name=\"HelloWorldComponent\">"
- + " <implementation.java class=\"services.HelloWorld\"/>"
- + " <service name=\"HelloWorldService\">"
- + " <binding.jms>"
- + " <activationSpec name=\"foo\">"
- + " <property name=\"xxx\" type=\"yyy\">"
- + " some value text"
- + " </property>"
- + " <property name=\"two\">"
- + " bla"
- + " </property>"
- + " </activationSpec>"
- + " </binding.jms>"
- + " </service>"
- + " </component>"
- + "</composite>";
-
- public static final String RESP_DEST_PROPS =
- "<?xml version=\"1.0\" encoding=\"ASCII\"?>"
- + "<composite xmlns=\"http://www.osoa.org/xmlns/sca/1.0\" targetNamespace=\"http://binding-jms\" name=\"binding-jms\">"
- + " <component name=\"HelloWorldComponent\">"
- + " <implementation.java class=\"services.HelloWorld\"/>"
- + " <service name=\"HelloWorldService\">"
- + " <binding.jms>"
- + " <response>"
- + " <destination name=\"foo\">"
- + " <property name=\"xxx\" type=\"yyy\">"
- + " some value text"
- + " </property>"
- + " <property name=\"two\">"
- + " bla"
- + " </property>"
- + " </destination>"
- + " </response>"
- + " </binding.jms>"
- + " </service>"
- + " </component>"
- + "</composite>";
-
- public static final String RESP_CF_PROPS =
- "<?xml version=\"1.0\" encoding=\"ASCII\"?>"
- + "<composite xmlns=\"http://www.osoa.org/xmlns/sca/1.0\" targetNamespace=\"http://binding-jms\" name=\"binding-jms\">"
- + " <component name=\"HelloWorldComponent\">"
- + " <implementation.java class=\"services.HelloWorld\"/>"
- + " <service name=\"HelloWorldService\">"
- + " <binding.jms>"
- + " <response>"
- + " <connectionFactory name=\"foo\">"
- + " <property name=\"xxx\" type=\"yyy\">"
- + " some value text"
- + " </property>"
- + " <property name=\"two\">"
- + " bla"
- + " </property>"
- + " </connectionFactory>"
- + " </response>"
- + " </binding.jms>"
- + " </service>"
- + " </component>"
- + "</composite>";
-
- public static final String RESP_AS_PROPS =
- "<?xml version=\"1.0\" encoding=\"ASCII\"?>"
- + "<composite xmlns=\"http://www.osoa.org/xmlns/sca/1.0\" targetNamespace=\"http://binding-jms\" name=\"binding-jms\">"
- + " <component name=\"HelloWorldComponent\">"
- + " <implementation.java class=\"services.HelloWorld\"/>"
- + " <service name=\"HelloWorldService\">"
- + " <binding.jms>"
- + " <response>"
- + " <activationSpec name=\"foo\">"
- + " <property name=\"xxx\" type=\"yyy\">"
- + " some value text"
- + " </property>"
- + " <property name=\"two\">"
- + " bla"
- + " </property>"
- + " </activationSpec>"
- + " </response>"
- + " </binding.jms>"
- + " </service>"
- + " </component>"
- + "</composite>";
-
- public static final String OP_PROPS_PROPS =
- "<?xml version=\"1.0\" encoding=\"ASCII\"?>"
- + "<composite xmlns=\"http://www.osoa.org/xmlns/sca/1.0\" targetNamespace=\"http://binding-jms\" name=\"binding-jms\">"
- + " <component name=\"HelloWorldComponent\">"
- + " <implementation.java class=\"services.HelloWorld\"/>"
- + " <service name=\"HelloWorldService\">"
- + " <binding.jms>"
- + " <operationProperties name=\"op1\">"
- + " <property name=\"xxx\" type=\"yyy\">"
- + " some value text"
- + " </property>"
- + " <property name=\"two\">"
- + " bla"
- + " </property>"
- + " </operationProperties >"
- + " </binding.jms>"
- + " </service>"
- + " </component>"
- + "</composite>";
-
- public static final String RES_ADPT_PROPS =
- "<?xml version=\"1.0\" encoding=\"ASCII\"?>"
- + "<composite xmlns=\"http://www.osoa.org/xmlns/sca/1.0\" targetNamespace=\"http://binding-jms\" name=\"binding-jms\">"
- + " <component name=\"HelloWorldComponent\">"
- + " <implementation.java class=\"services.HelloWorld\"/>"
- + " <service name=\"HelloWorldService\">"
- + " <binding.jms>"
- + " <resourceAdapter name=\"r1\">"
- + " <property name=\"xxx\" type=\"yyy\">"
- + " some value text"
- + " </property>"
- + " <property name=\"two\">"
- + " bla"
- + " </property>"
- + " </resourceAdapter>"
- + " </binding.jms>"
- + " </service>"
- + " </component>"
- + "</composite>";
-
- public static final String CONFIGURED_OPERATIONS =
- "<?xml version=\"1.0\" encoding=\"ASCII\"?>"
- + "<composite xmlns=\"http://www.osoa.org/xmlns/sca/1.0\" targetNamespace=\"http://binding-jms\" name=\"binding-jms\">"
- + " <component name=\"HelloWorldComponent\">"
- + " <implementation.java class=\"services.HelloWorld\"/>"
- + " <service name=\"HelloWorldService\">"
- + " <binding.jms uri=\"jms:testQueue\" >"
- + " <operationProperties name=\"op1\">"
- + " </operationProperties >"
- + " <operation name=\"op1\" requires=\"IntentOne IntentTwo\"/>"
- + " </binding.jms>"
- + " </service>"
- + " </component>"
- + "</composite>";
-
- public static final String WIRE_FORMAT =
- "<?xml version=\"1.0\" encoding=\"ASCII\"?>"
- + "<composite xmlns=\"http://www.osoa.org/xmlns/sca/1.0\" targetNamespace=\"http://binding-jms\" xmlns:tuscany=\"http://tuscany.apache.org/xmlns/sca/1.0\" name=\"binding-jms\">"
- + " <component name=\"HelloWorldComponent\">"
- + " <implementation.java class=\"services.HelloWorld\"/>"
- + " <service name=\"HelloWorldService\">"
- + " <binding.jms uri=\"jms:testQueue\" >"
- + " <response>"
- + " <destination name=\"responseConnectionElementName\"/>"
- + " <tuscany:wireFormat.jmsBytes/>"
- + " </response>"
- + " <tuscany:wireFormat.jmsObject/>"
- + " </binding.jms>"
- + " </service>"
- + " </component>"
- + "</composite>";
-
- public static final String OP_PROP_NAME =
- "<?xml version=\"1.0\" encoding=\"ASCII\"?>"
- + "<composite xmlns=\"http://www.osoa.org/xmlns/sca/1.0\" targetNamespace=\"http://binding-jms\" name=\"binding-jms\">"
- + " <component name=\"HelloWorldComponent\">"
- + " <implementation.java class=\"services.HelloWorld\"/>"
- + " <service name=\"HelloWorldService\">"
- + " <binding.jms operationProperties=\"foo\"/>"
- + " </service>"
- + " </component>"
- + "</composite>";
-
- private XMLInputFactory inputFactory;
- private StAXArtifactProcessor<Object> staxProcessor;
- private Monitor monitor;
-
- @Override
- protected void setUp() throws Exception {
- DefaultExtensionPointRegistry extensionPoints = new DefaultExtensionPointRegistry();
- inputFactory = XMLInputFactory.newInstance();
- // Create a monitor
- UtilityExtensionPoint utilities = extensionPoints.getExtensionPoint(UtilityExtensionPoint.class);
- MonitorFactory monitorFactory = new DefaultMonitorFactoryImpl();
- if (monitorFactory != null) {
- monitor = monitorFactory.createMonitor();
- utilities.addUtility(monitorFactory);
- }
- StAXArtifactProcessorExtensionPoint staxProcessors = new DefaultStAXArtifactProcessorExtensionPoint(extensionPoints);
- staxProcessor = new ExtensibleStAXArtifactProcessor(staxProcessors, inputFactory, null, monitor);
-
- }
-
- /**
- * Test parsing valid composite definition. Valid composite populated with correct values expected.
- * @throws Exception
- */
- public void testLoadValidComposite() throws Exception {
- XMLStreamReader reader = inputFactory.createXMLStreamReader(new StringReader(COMPOSITE));
-
- Composite composite = (Composite)staxProcessor.read(reader);
- JMSBinding binding = (JMSBinding) composite.getComponents().get(0).getServices().get(0).getBindings().get(0);
-
- assertNotNull(binding);
- assertEquals("testQueue", binding.getDestinationName());
- }
-
- public void testHeaders1() throws Exception {
- XMLStreamReader reader = inputFactory.createXMLStreamReader(new StringReader(HEADERS1));
-
- Composite composite = (Composite)staxProcessor.read(reader);
- JMSBinding binding = (JMSBinding) composite.getComponents().get(0).getServices().get(0).getBindings().get(0);
-
- assertNotNull(binding);
- assertEquals("myType", binding.getJMSType());
- assertEquals("myCorrelId", binding.getJMSCorrelationId());
- assertTrue(binding.isdeliveryModePersistent());
- assertEquals(54321, binding.getJMSTimeToLive().longValue());
- assertEquals(5, binding.getJMSPriority().intValue());
- }
-
- public void testProperties1() throws Exception {
- XMLStreamReader reader = inputFactory.createXMLStreamReader(new StringReader(PROPERTIES1));
-
- Composite composite = (Composite)staxProcessor.read(reader);
- JMSBinding binding = (JMSBinding) composite.getComponents().get(0).getServices().get(0).getBindings().get(0);
-
- assertNotNull(binding);
- assertEquals("bla", binding.getProperty("p1"));
- assertEquals(42, ((Integer)binding.getProperty("intProp")).intValue());
- }
-
- public void testOpProperties1() throws Exception {
- XMLStreamReader reader = inputFactory.createXMLStreamReader(new StringReader(OP_PROPERTIES1));
-
- Composite composite = (Composite)staxProcessor.read(reader);
- JMSBinding binding = (JMSBinding) composite.getComponents().get(0).getServices().get(0).getBindings().get(0);
-
- assertNotNull(binding);
-
- Map<String, Object> op1Props = binding.getOperationProperties("op1");
- assertEquals("op1Type", binding.getOperationJMSType("op1"));
- assertEquals("bla", op1Props.get("p1"));
- assertEquals(42, ((Integer)op1Props.get("intProp")).intValue());
-
- assertEquals("op2Type", binding.getOperationJMSType("op2"));
- Map<String, Object> op2Props = binding.getOperationProperties("op2");
- assertEquals("op2bla", op2Props.get("p2"));
- assertEquals(77, ((Integer)op2Props.get("intProp")).intValue());
- }
-
- public void testSubscriptionHeaders () throws Exception {
- XMLStreamReader reader = inputFactory.createXMLStreamReader(new StringReader(SELECTOR));
-
- Composite composite = (Composite)staxProcessor.read(reader);
- JMSBinding binding = (JMSBinding) composite.getComponents().get(0).getServices().get(0).getBindings().get(0);
-
- assertNotNull(binding);
-
- assertEquals("prop1 = 2", binding.getJMSSelector());
- }
-
- /** Test various parsing validation requirements. */
- public void testParsingValidationErrors1() throws Exception {
- // Composite with malformed URI.
- XMLStreamReader reader = inputFactory.createXMLStreamReader(new StringReader(COMPOSITE_INVALID_URI));
-
- try {
- Composite composite = (Composite)staxProcessor.read(reader);
- } catch(Exception e) {
- // JMSBindingExceptions are expected with invalid composite.
- if ( !e.getClass().isAssignableFrom( JMSBindingException.class ) )
- throw e;
- // Do assertion to make sure test registers results.
- assertTrue( e.getClass().isAssignableFrom( JMSBindingException.class ) );
- }
- }
-
- public void testParsingValidationErrors2() throws Exception {
- // Composite with invalid priority
- XMLStreamReader reader = inputFactory.createXMLStreamReader(new StringReader(HEADERS_INVALID_PRIORITY));
-
- try {
- Composite composite = (Composite)staxProcessor.read(reader);
- } catch(Exception e) {
- // JMSBindingExceptions are expected with invalid composite.
- if ( !e.getClass().isAssignableFrom( JMSBindingException.class ) )
- throw e;
- // Do assertion to make sure test registers results.
- assertTrue( e.getClass().isAssignableFrom( JMSBindingException.class ) );
- return;
- }
- }
-
- /** Test various model validation requirements. */
- public void testValidationErrors1() throws Exception {
- // Composite with response connection attr and element.
- XMLStreamReader reader = inputFactory.createXMLStreamReader(new StringReader(COMPOSITE_INVALID_RESPONSE_ATTR_ELEMENT));
-
- try {
- Composite composite = (Composite)staxProcessor.read(reader);
- } catch(Exception e) {
- // JMSBindingExceptions are expected with invalid composite.
- if ( !e.getClass().isAssignableFrom( JMSBindingException.class ) )
- throw e;
- // Do assertion to make sure test registers results.
- assertTrue( e.getClass().isAssignableFrom( JMSBindingException.class ) );
- }
- }
-
- public void testDestinationProperties() throws Exception {
- XMLStreamReader reader = inputFactory.createXMLStreamReader(new StringReader(DEST_PROPS));
-
- Composite composite = (Composite)staxProcessor.read(reader);
- JMSBinding binding = (JMSBinding) composite.getComponents().get(0).getServices().get(0).getBindings().get(0);
-
- assertNotNull(binding);
- assertNotNull(binding.getDestinationProperties());
- assertEquals(2, binding.getDestinationProperties().size());
- BindingProperty bp = binding.getDestinationProperties().get("xxx");
- assertEquals("xxx", bp.getName());
- assertEquals("yyy", bp.getType());
- assertEquals("some value text", bp.getValue().toString().trim());
- BindingProperty bp2 = binding.getDestinationProperties().get("two");
- assertEquals("two", bp2.getName());
- assertEquals(null, bp2.getType());
- assertEquals("bla", bp2.getValue().toString().trim());
- }
- public void testConnectionFactoryProperties() throws Exception {
- XMLStreamReader reader = inputFactory.createXMLStreamReader(new StringReader(CF_PROPS));
-
- Composite composite = (Composite)staxProcessor.read(reader);
- JMSBinding binding = (JMSBinding) composite.getComponents().get(0).getServices().get(0).getBindings().get(0);
-
- assertNotNull(binding);
- assertNotNull(binding.getConnectionFactoryProperties());
- assertEquals(2, binding.getConnectionFactoryProperties().size());
- BindingProperty bp = binding.getConnectionFactoryProperties().get("xxx");
- assertEquals("xxx", bp.getName());
- assertEquals("yyy", bp.getType());
- assertEquals("some value text", bp.getValue().toString().trim());
- BindingProperty bp2 = binding.getConnectionFactoryProperties().get("two");
- assertEquals("two", bp2.getName());
- assertEquals(null, bp2.getType());
- assertEquals("bla", bp2.getValue().toString().trim());
- }
- public void testActivationSpecProperties() throws Exception {
- XMLStreamReader reader = inputFactory.createXMLStreamReader(new StringReader(AS_PROPS));
-
- Composite composite = (Composite)staxProcessor.read(reader);
- JMSBinding binding = (JMSBinding) composite.getComponents().get(0).getServices().get(0).getBindings().get(0);
-
- assertNotNull(binding);
- assertNotNull(binding.getActivationSpecProperties());
- assertEquals(2, binding.getActivationSpecProperties().size());
- BindingProperty bp = binding.getActivationSpecProperties().get("xxx");
- assertEquals("xxx", bp.getName());
- assertEquals("yyy", bp.getType());
- assertEquals("some value text", bp.getValue().toString().trim());
- BindingProperty bp2 = binding.getActivationSpecProperties().get("two");
- assertEquals("two", bp2.getName());
- assertEquals(null, bp2.getType());
- assertEquals("bla", bp2.getValue().toString().trim());
- }
- public void testResponseDestinationProperties() throws Exception {
- XMLStreamReader reader = inputFactory.createXMLStreamReader(new StringReader(RESP_DEST_PROPS));
-
- Composite composite = (Composite)staxProcessor.read(reader);
- JMSBinding binding = (JMSBinding) composite.getComponents().get(0).getServices().get(0).getBindings().get(0);
-
- assertNotNull(binding);
- assertNotNull(binding.getResponseDestinationProperties());
- assertEquals(2, binding.getResponseDestinationProperties().size());
- BindingProperty bp = binding.getResponseDestinationProperties().get("xxx");
- assertEquals("xxx", bp.getName());
- assertEquals("yyy", bp.getType());
- assertEquals("some value text", bp.getValue().toString().trim());
- BindingProperty bp2 = binding.getResponseDestinationProperties().get("two");
- assertEquals("two", bp2.getName());
- assertEquals(null, bp2.getType());
- assertEquals("bla", bp2.getValue().toString().trim());
- }
- public void testResponseConnectionFactoryProperties() throws Exception {
- XMLStreamReader reader = inputFactory.createXMLStreamReader(new StringReader(RESP_CF_PROPS));
-
- Composite composite = (Composite)staxProcessor.read(reader);
- JMSBinding binding = (JMSBinding) composite.getComponents().get(0).getServices().get(0).getBindings().get(0);
-
- assertNotNull(binding);
- assertNotNull(binding.getResponseConnectionFactoryProperties());
- assertEquals(2, binding.getResponseConnectionFactoryProperties().size());
- BindingProperty bp = binding.getResponseConnectionFactoryProperties().get("xxx");
- assertEquals("xxx", bp.getName());
- assertEquals("yyy", bp.getType());
- assertEquals("some value text", bp.getValue().toString().trim());
- BindingProperty bp2 = binding.getResponseConnectionFactoryProperties().get("two");
- assertEquals("two", bp2.getName());
- assertEquals(null, bp2.getType());
- assertEquals("bla", bp2.getValue().toString().trim());
- }
- public void testResponseActivationSpecProperties() throws Exception {
- XMLStreamReader reader = inputFactory.createXMLStreamReader(new StringReader(RESP_AS_PROPS));
-
- Composite composite = (Composite)staxProcessor.read(reader);
- JMSBinding binding = (JMSBinding) composite.getComponents().get(0).getServices().get(0).getBindings().get(0);
-
- assertNotNull(binding);
- assertNotNull(binding.getResponseActivationSpecProperties());
- assertEquals(2, binding.getResponseActivationSpecProperties().size());
- BindingProperty bp = binding.getResponseActivationSpecProperties().get("xxx");
- assertEquals("xxx", bp.getName());
- assertEquals("yyy", bp.getType());
- assertEquals("some value text", bp.getValue().toString().trim());
- BindingProperty bp2 = binding.getResponseActivationSpecProperties().get("two");
- assertEquals("two", bp2.getName());
- assertEquals(null, bp2.getType());
- assertEquals("bla", bp2.getValue().toString().trim());
- }
- public void testOperationPropertiesProperties() throws Exception {
- XMLStreamReader reader = inputFactory.createXMLStreamReader(new StringReader(OP_PROPS_PROPS));
-
- Composite composite = (Composite)staxProcessor.read(reader);
- JMSBinding binding = (JMSBinding) composite.getComponents().get(0).getServices().get(0).getBindings().get(0);
-
- assertNotNull(binding);
- assertNotNull(binding.getOperationPropertiesProperties("op1"));
- assertEquals(2, binding.getOperationPropertiesProperties("op1").size());
- BindingProperty bp = binding.getOperationPropertiesProperties("op1").get("xxx");
- assertEquals("xxx", bp.getName());
- assertEquals("yyy", bp.getType());
- assertEquals("some value text", bp.getValue().toString().trim());
- BindingProperty bp2 = binding.getOperationPropertiesProperties("op1").get("two");
- assertEquals("two", bp2.getName());
- assertEquals(null, bp2.getType());
- assertEquals("bla", bp2.getValue().toString().trim());
- }
- public void testResouceAdapterProperties() throws Exception {
- XMLStreamReader reader = inputFactory.createXMLStreamReader(new StringReader(RES_ADPT_PROPS));
-
- Composite composite = (Composite)staxProcessor.read(reader);
- JMSBinding binding = (JMSBinding) composite.getComponents().get(0).getServices().get(0).getBindings().get(0);
-
- assertNotNull(binding);
- assertEquals("r1", binding.getResourceAdapterName());
- assertNotNull(binding.getResourceAdapterProperties());
- assertEquals(2, binding.getResourceAdapterProperties().size());
- BindingProperty bp = binding.getResourceAdapterProperties().get("xxx");
- assertEquals("xxx", bp.getName());
- assertEquals("yyy", bp.getType());
- assertEquals("some value text", bp.getValue().toString().trim());
- BindingProperty bp2 = binding.getResourceAdapterProperties().get("two");
- assertEquals("two", bp2.getName());
- assertEquals(null, bp2.getType());
- assertEquals("bla", bp2.getValue().toString().trim());
- }
-
- /**
- * Tests the APIs:
- * public Set<String> getOperationNames();
- * public Object getOperationProperty(String opName, String propName );
- * @throws Exception
- */
- public void testOpProperties2() throws Exception {
- XMLStreamReader reader = inputFactory.createXMLStreamReader(new StringReader(OP_PROPERTIES1));
-
- Composite composite = (Composite)staxProcessor.read(reader);
- JMSBinding binding = (JMSBinding) composite.getComponents().get(0).getServices().get(0).getBindings().get(0);
-
- assertNotNull(binding);
-
- Set<String> opNames = binding.getOperationNames();
- assertEquals( 2, opNames.size() );
- // Recall that order is not guaranteed iterating over a set.
- for (Iterator<String> it=opNames.iterator(); it.hasNext(); ) {
- String opName = it.next();
- assertTrue( opName.equals( "op1") || opName.equals( "op2"));
- }
-
- Object value = binding.getOperationProperty( "op1", "p1" );
- assertEquals("bla", value);
- value = binding.getOperationProperty( "op1", "intProp" );
- assertEquals(42, ((Integer)value).intValue());
-
- value = binding.getOperationProperty( "op2", "p2" );
- assertEquals("op2bla", value);
- value = binding.getOperationProperty( "op2", "intProp" );
- assertEquals(77, ((Integer)value).intValue());
- }
-
- /**
- * Tests the APIs:
- * public Set<String> getOperationNames();
- * Provides no optional properties or sub elements
- * @throws Exception
- */
- public void testOpProperties3() throws Exception {
- XMLStreamReader reader = inputFactory.createXMLStreamReader(new StringReader(OP_NAMES_NO_PROPERTIES1));
-
- Composite composite = (Composite)staxProcessor.read(reader);
- JMSBinding binding = (JMSBinding) composite.getComponents().get(0).getServices().get(0).getBindings().get(0);
-
- assertNotNull(binding);
-
- Set<String> opNames = binding.getOperationNames();
- assertEquals( 2, opNames.size() );
- // Recall that order is not guaranteed iterating over a set.
- for (Iterator<String> it=opNames.iterator(); it.hasNext(); ) {
- String opName = it.next();
- assertTrue( opName.equals( "op1") || opName.equals( "op2"));
- }
- }
-
- /**
- * Tests the APIs:
- * public Set<String> getOperationNames();
- * Provides no optional properties or sub elements
- * @throws Exception
- */
- public void testConfiguredOperations1() throws Exception {
- XMLStreamReader reader = inputFactory.createXMLStreamReader(new StringReader(CONFIGURED_OPERATIONS));
-
- Composite composite = (Composite)staxProcessor.read(reader);
- JMSBinding binding = (JMSBinding) composite.getComponents().get(0).getServices().get(0).getBindings().get(0);
- assertNotNull(binding);
-
- OperationsConfigurator opConfig = ((OperationsConfigurator)binding);
- assertEquals(opConfig.getConfiguredOperations().get(0).getRequiredIntents().size(), 2);
- }
-
- /**
- * Tests the APIs:
- * public WireFormat getRequstWireFormat();
- * public WireFormat getResponseWireFormat();
- *
- * @throws Exception
- */
- public void testWireFormat() throws Exception {
- XMLStreamReader reader = inputFactory.createXMLStreamReader(new StringReader(WIRE_FORMAT));
-
- Composite composite = (Composite)staxProcessor.read(reader);
- JMSBinding binding = (JMSBinding) composite.getComponents().get(0).getServices().get(0).getBindings().get(0);
- assertNotNull(binding);
-
- WireFormat requestWireFormat = binding.getRequestWireFormat();
- assertEquals(WireFormatJMSObject.class, requestWireFormat.getClass());
-
- WireFormat responseWireFormat = binding.getResponseWireFormat();
- assertEquals(WireFormatJMSBytes.class, responseWireFormat.getClass());
- }
-
- public void testOpPropertiesName() throws Exception {
- XMLStreamReader reader = inputFactory.createXMLStreamReader(new StringReader(OP_PROP_NAME));
-
- Composite composite = (Composite)staxProcessor.read(reader);
- JMSBinding binding = (JMSBinding) composite.getComponents().get(0).getServices().get(0).getBindings().get(0);
-
- assertNotNull(binding);
- assertEquals( "foo", binding.getOperationPropertiesName().getLocalPart() );
- }
-}
diff --git a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms/src/test/java/org/apache/tuscany/sca/binding/jms/impl/JMSBindingProcessorWriteTestCase.java b/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms/src/test/java/org/apache/tuscany/sca/binding/jms/impl/JMSBindingProcessorWriteTestCase.java
deleted file mode 100644
index d3efdfb606..0000000000
--- a/sca-java-1.x/tags/1.5.1-RC2/modules/binding-jms/src/test/java/org/apache/tuscany/sca/binding/jms/impl/JMSBindingProcessorWriteTestCase.java
+++ /dev/null
@@ -1,456 +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.binding.jms.impl;
-
-import java.io.ByteArrayInputStream;
-import java.io.ByteArrayOutputStream;
-import java.io.StringReader;
-import java.util.Iterator;
-import java.util.Map;
-import java.util.Set;
-
-import javax.xml.stream.XMLInputFactory;
-import javax.xml.stream.XMLStreamReader;
-import javax.xml.stream.XMLOutputFactory;
-import javax.xml.stream.XMLStreamWriter;
-
-import junit.framework.TestCase;
-
-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.Service;
-import org.apache.tuscany.sca.contribution.processor.DefaultStAXArtifactProcessorExtensionPoint;
-import org.apache.tuscany.sca.contribution.processor.ExtensibleStAXArtifactProcessor;
-import org.apache.tuscany.sca.contribution.processor.StAXArtifactProcessor;
-import org.apache.tuscany.sca.contribution.processor.StAXArtifactProcessorExtensionPoint;
-import org.apache.tuscany.sca.core.DefaultExtensionPointRegistry;
-import org.apache.tuscany.sca.core.UtilityExtensionPoint;
-import org.apache.tuscany.sca.monitor.Monitor;
-import org.apache.tuscany.sca.monitor.MonitorFactory;
-import org.apache.tuscany.sca.monitor.impl.DefaultMonitorFactoryImpl;
-
-/**
- * Tests for JMS binding XML writes.
- * In general, for each JMS binding XML read test case, there
- * is a write test case.
- */
-public class JMSBindingProcessorWriteTestCase extends TestCase {
-
- private XMLInputFactory inputFactory;
- private XMLOutputFactory outputFactory;
- private StAXArtifactProcessor<Object> staxProcessor;
- private Monitor monitor;
-
- public static final String DEFAULT =
- "<?xml version=\"1.0\" encoding=\"ASCII\"?>"
- + "<composite xmlns=\"http://www.osoa.org/xmlns/sca/1.0\" targetNamespace=\"http://binding-jms\" name=\"binding-jms\">"
- + " <component name=\"HelloWorldComponent\">"
- + " <service name=\"HelloWorldService\">"
- + " <binding.jms>"
- + " <destination name=\"AAA\">"
- + " <property name=\"AAAProp\" type=\"string\"/>"
- + " </destination>"
- + " <connectionFactory name=\"ABC\"/>"
- + " <response/>"
- + " <headers/>"
- + " <resourceAdapter name=\"GHI\"/>"
- + " <operationProperties name=\"JKL\">"
- + " </operationProperties>"
- + " </binding.jms>"
- + " </service>"
- + " </component>"
- + "</composite>";
-
- @Override
- protected void setUp() throws Exception {
- DefaultExtensionPointRegistry extensionPoints = new DefaultExtensionPointRegistry();
- inputFactory = XMLInputFactory.newInstance();
- outputFactory = XMLOutputFactory.newInstance();
- // Create a monitor
- UtilityExtensionPoint utilities = extensionPoints.getExtensionPoint(UtilityExtensionPoint.class);
- MonitorFactory monitorFactory = new DefaultMonitorFactoryImpl();
- if (monitorFactory != null) {
- monitor = monitorFactory.createMonitor();
- utilities.addUtility(monitorFactory);
- }
- StAXArtifactProcessorExtensionPoint staxProcessors = new DefaultStAXArtifactProcessorExtensionPoint(extensionPoints);
- staxProcessor = new ExtensibleStAXArtifactProcessor(staxProcessors, inputFactory, null, monitor);
- }
-
- /**
- * Test parsing valid composite definition. Valid composite populated with correct values expected.
- * @throws Exception
- */
- public void testLoadValidComposite() throws Exception {
- XMLStreamReader reader = inputFactory.createXMLStreamReader(new StringReader(JMSBindingProcessorTestCase.COMPOSITE));
- Composite composite = (Composite)staxProcessor.read(reader);
- JMSBinding binding = (JMSBinding)composite.getComponents().get(0).getServices().get(0).getBindings().get(0);
- assertNotNull(binding);
-
- // Write out JMSBinding model to stream.
- ByteArrayOutputStream bos = new ByteArrayOutputStream();
- staxProcessor.write(composite, outputFactory.createXMLStreamWriter(bos));
-
- // Read written JMSBinding to a different JMSBinding model.
- XMLStreamReader reader2 = inputFactory.createXMLStreamReader(new StringReader(bos.toString()));
- Composite composite2 = (Composite)staxProcessor.read(reader2);
- JMSBinding binding2 = (JMSBinding)composite2.getComponents().get(0).getServices().get(0).getBindings().get(0);
- assertNotNull(binding2);
-
- // Compare initial binding to written binding.
- assertEquals( binding, binding2);
- }
-
- public void testHeaders1() throws Exception {
- XMLStreamReader reader =
- inputFactory.createXMLStreamReader(new StringReader(JMSBindingProcessorTestCase.HEADERS1));
- Composite composite = (Composite)staxProcessor.read(reader);
- JMSBinding binding = (JMSBinding)composite.getComponents().get(0).getServices().get(0).getBindings().get(0);
- assertNotNull(binding);
-
- // Write out JMSBinding model to stream.
- ByteArrayOutputStream bos = new ByteArrayOutputStream();
- staxProcessor.write(composite, outputFactory.createXMLStreamWriter(bos));
-
- // Read written JMSBinding to a different JMSBinding model.
- XMLStreamReader reader2 = inputFactory.createXMLStreamReader(new StringReader(bos.toString()));
- Composite composite2 = (Composite)staxProcessor.read(reader2);
- JMSBinding binding2 = (JMSBinding)composite2.getComponents().get(0).getServices().get(0).getBindings().get(0);
- assertNotNull(binding2);
-
- // Compare initial binding to written binding.
- assertEquals( binding, binding2 );
- }
-
- public void testProperties1() throws Exception {
- XMLStreamReader reader = inputFactory.createXMLStreamReader(new StringReader(JMSBindingProcessorTestCase.PROPERTIES1));
- Composite composite = (Composite)staxProcessor.read(reader);
- JMSBinding binding = (JMSBinding) composite.getComponents().get(0).getServices().get(0).getBindings().get(0);
- assertNotNull(binding);
-
- // Write out JMSBinding model to stream.
- ByteArrayOutputStream bos = new ByteArrayOutputStream();
- staxProcessor.write(composite, outputFactory.createXMLStreamWriter(bos));
-
- // Read written JMSBinding to a different JMSBinding model.
- XMLStreamReader reader2 = inputFactory.createXMLStreamReader(new StringReader(bos.toString()));
- Composite composite2 = (Composite)staxProcessor.read(reader2);
- JMSBinding binding2 = (JMSBinding)composite2.getComponents().get(0).getServices().get(0).getBindings().get(0);
- assertNotNull(binding2);
-
- // Compare initial binding to written binding.
- assertEquals( binding, binding2 );
- }
-
- public void testOpProperties1() throws Exception {
- XMLStreamReader reader = inputFactory.createXMLStreamReader(new StringReader(JMSBindingProcessorTestCase.OP_PROPERTIES1));
- Composite composite = (Composite)staxProcessor.read(reader);
- JMSBinding binding = (JMSBinding) composite.getComponents().get(0).getServices().get(0).getBindings().get(0);
- assertNotNull(binding);
-
- // Write out JMSBinding model to stream.
- ByteArrayOutputStream bos = new ByteArrayOutputStream();
- staxProcessor.write(composite, outputFactory.createXMLStreamWriter(bos));
-
- // Read written JMSBinding to a different JMSBinding model.
- XMLStreamReader reader2 = inputFactory.createXMLStreamReader(new StringReader(bos.toString()));
- Composite composite2 = (Composite)staxProcessor.read(reader2);
- JMSBinding binding2 = (JMSBinding)composite2.getComponents().get(0).getServices().get(0).getBindings().get(0);
- assertNotNull(binding2);
-
- // Compare initial binding to written binding.
- assertEquals(binding, binding2);
- }
-
- public void testSubscriptionHeaders() throws Exception {
- XMLStreamReader reader =
- inputFactory.createXMLStreamReader(new StringReader(JMSBindingProcessorTestCase.SELECTOR));
- Composite composite = (Composite)staxProcessor.read(reader);
- JMSBinding binding = (JMSBinding)composite.getComponents().get(0).getServices().get(0).getBindings().get(0);
- assertNotNull(binding);
-
- // Write out JMSBinding model to stream.
- ByteArrayOutputStream bos = new ByteArrayOutputStream();
- staxProcessor.write(composite, outputFactory.createXMLStreamWriter(bos));
-
- // Read written JMSBinding to a different JMSBinding model.
- XMLStreamReader reader2 = inputFactory.createXMLStreamReader(new StringReader(bos.toString()));
- Composite composite2 = (Composite)staxProcessor.read(reader2);
- JMSBinding binding2 = (JMSBinding)composite2.getComponents().get(0).getServices().get(0).getBindings().get(0);
- assertNotNull(binding2);
-
- // Compare initial binding to written binding.
- assertEquals(binding, binding2);
- }
-
- public void testDestinationProperties() throws Exception {
- XMLStreamReader reader = inputFactory.createXMLStreamReader(new StringReader(JMSBindingProcessorTestCase.DEST_PROPS));
- Composite composite = (Composite)staxProcessor.read(reader);
- JMSBinding binding = (JMSBinding) composite.getComponents().get(0).getServices().get(0).getBindings().get(0);
-
- // Write out JMSBinding model to stream.
- ByteArrayOutputStream bos = new ByteArrayOutputStream();
- staxProcessor.write(composite, outputFactory.createXMLStreamWriter(bos));
-
- // Read written JMSBinding to a different JMSBinding model.
- XMLStreamReader reader2 = inputFactory.createXMLStreamReader(new StringReader(bos.toString()));
- Composite composite2 = (Composite)staxProcessor.read(reader2);
- JMSBinding binding2 = (JMSBinding)composite2.getComponents().get(0).getServices().get(0).getBindings().get(0);
- assertNotNull(binding2);
-
- // Compare initial binding to written binding.
- assertEquals(binding, binding2);
- }
-
- public void testConnectionFactoryProperties() throws Exception {
- XMLStreamReader reader = inputFactory.createXMLStreamReader(new StringReader(JMSBindingProcessorTestCase.CF_PROPS));
- Composite composite = (Composite)staxProcessor.read(reader);
- JMSBinding binding = (JMSBinding) composite.getComponents().get(0).getServices().get(0).getBindings().get(0);
- assertNotNull(binding);
-
- // Write out JMSBinding model to stream.
- ByteArrayOutputStream bos = new ByteArrayOutputStream();
- staxProcessor.write(composite, outputFactory.createXMLStreamWriter(bos));
-
- // Read written JMSBinding to a different JMSBinding model.
- XMLStreamReader reader2 = inputFactory.createXMLStreamReader(new StringReader(bos.toString()));
- Composite composite2 = (Composite)staxProcessor.read(reader2);
- JMSBinding binding2 = (JMSBinding)composite2.getComponents().get(0).getServices().get(0).getBindings().get(0);
- assertNotNull(binding2);
-
- // Compare initial binding to written binding.
- assertEquals(binding, binding2);
- }
-
- public void testActivationSpecProperties() throws Exception {
- XMLStreamReader reader = inputFactory.createXMLStreamReader(new StringReader(JMSBindingProcessorTestCase.AS_PROPS));
- Composite composite = (Composite)staxProcessor.read(reader);
- JMSBinding binding = (JMSBinding) composite.getComponents().get(0).getServices().get(0).getBindings().get(0);
- assertNotNull(binding);
-
- // Write out JMSBinding model to stream.
- ByteArrayOutputStream bos = new ByteArrayOutputStream();
- staxProcessor.write(composite, outputFactory.createXMLStreamWriter(bos));
-
- // Read written JMSBinding to a different JMSBinding model.
- XMLStreamReader reader2 = inputFactory.createXMLStreamReader(new StringReader(bos.toString()));
- Composite composite2 = (Composite)staxProcessor.read(reader2);
- JMSBinding binding2 = (JMSBinding)composite2.getComponents().get(0).getServices().get(0).getBindings().get(0);
- assertNotNull(binding2);
-
- // Compare initial binding to written binding.
- assertEquals(binding, binding2);
- }
-
- public void testResponseDestinationProperties() throws Exception {
- XMLStreamReader reader = inputFactory.createXMLStreamReader(new StringReader(JMSBindingProcessorTestCase.RESP_DEST_PROPS));
- Composite composite = (Composite)staxProcessor.read(reader);
- JMSBinding binding = (JMSBinding) composite.getComponents().get(0).getServices().get(0).getBindings().get(0);
- assertNotNull(binding);
-
- // Write out JMSBinding model to stream.
- ByteArrayOutputStream bos = new ByteArrayOutputStream();
- staxProcessor.write(composite, outputFactory.createXMLStreamWriter(bos));
-
- // Read written JMSBinding to a different JMSBinding model.
- XMLStreamReader reader2 = inputFactory.createXMLStreamReader(new StringReader(bos.toString()));
- Composite composite2 = (Composite)staxProcessor.read(reader2);
- JMSBinding binding2 = (JMSBinding)composite2.getComponents().get(0).getServices().get(0).getBindings().get(0);
- assertNotNull(binding2);
-
- // Compare initial binding to written binding.
- assertEquals(binding, binding2);
- }
-
- public void testResponseConnectionFactoryProperties() throws Exception {
- XMLStreamReader reader = inputFactory.createXMLStreamReader(new StringReader(JMSBindingProcessorTestCase.RESP_CF_PROPS));
- Composite composite = (Composite)staxProcessor.read(reader);
- JMSBinding binding = (JMSBinding) composite.getComponents().get(0).getServices().get(0).getBindings().get(0);
- assertNotNull(binding);
-
- // Write out JMSBinding model to stream.
- ByteArrayOutputStream bos = new ByteArrayOutputStream();
- staxProcessor.write(composite, outputFactory.createXMLStreamWriter(bos));
-
- // Read written JMSBinding to a different JMSBinding model.
- XMLStreamReader reader2 = inputFactory.createXMLStreamReader(new StringReader(bos.toString()));
- Composite composite2 = (Composite)staxProcessor.read(reader2);
- JMSBinding binding2 = (JMSBinding)composite2.getComponents().get(0).getServices().get(0).getBindings().get(0);
- assertNotNull(binding2);
-
- // Compare initial binding to written binding.
- assertEquals(binding, binding2);
- }
-
- public void testResponseActivationSpecProperties() throws Exception {
- XMLStreamReader reader = inputFactory.createXMLStreamReader(new StringReader(JMSBindingProcessorTestCase.RESP_AS_PROPS));
- Composite composite = (Composite)staxProcessor.read(reader);
- JMSBinding binding = (JMSBinding) composite.getComponents().get(0).getServices().get(0).getBindings().get(0);
- assertNotNull(binding);
-
- // Write out JMSBinding model to stream.
- ByteArrayOutputStream bos = new ByteArrayOutputStream();
- staxProcessor.write(composite, outputFactory.createXMLStreamWriter(bos));
-
- // Read written JMSBinding to a different JMSBinding model.
- XMLStreamReader reader2 = inputFactory.createXMLStreamReader(new StringReader(bos.toString()));
- Composite composite2 = (Composite)staxProcessor.read(reader2);
- JMSBinding binding2 = (JMSBinding)composite2.getComponents().get(0).getServices().get(0).getBindings().get(0);
- assertNotNull(binding2);
-
- // Compare initial binding to written binding.
- assertEquals(binding, binding2);
- }
-
- public void testOperationPropertiesProperties() throws Exception {
- XMLStreamReader reader = inputFactory.createXMLStreamReader(new StringReader(JMSBindingProcessorTestCase.OP_PROPS_PROPS));
- Composite composite = (Composite)staxProcessor.read(reader);
- JMSBinding binding = (JMSBinding) composite.getComponents().get(0).getServices().get(0).getBindings().get(0);
- assertNotNull(binding);
-
- // Write out JMSBinding model to stream.
- ByteArrayOutputStream bos = new ByteArrayOutputStream();
- staxProcessor.write(composite, outputFactory.createXMLStreamWriter(bos));
-
- // Read written JMSBinding to a different JMSBinding model.
- XMLStreamReader reader2 = inputFactory.createXMLStreamReader(new StringReader(bos.toString()));
- Composite composite2 = (Composite)staxProcessor.read(reader2);
- JMSBinding binding2 = (JMSBinding)composite2.getComponents().get(0).getServices().get(0).getBindings().get(0);
- assertNotNull(binding2);
-
- // Compare initial binding to written binding.
- assertEquals(binding, binding2);
- }
-
- public void testResouceAdapterProperties() throws Exception {
- XMLStreamReader reader =
- inputFactory.createXMLStreamReader(new StringReader(JMSBindingProcessorTestCase.RES_ADPT_PROPS));
- Composite composite = (Composite)staxProcessor.read(reader);
- JMSBinding binding = (JMSBinding)composite.getComponents().get(0).getServices().get(0).getBindings().get(0);
- assertNotNull(binding);
-
- // Write out JMSBinding model to stream.
- ByteArrayOutputStream bos = new ByteArrayOutputStream();
- staxProcessor.write(composite, outputFactory.createXMLStreamWriter(bos));
-
- // Read written JMSBinding to a different JMSBinding model.
- XMLStreamReader reader2 = inputFactory.createXMLStreamReader(new StringReader(bos.toString()));
- Composite composite2 = (Composite)staxProcessor.read(reader2);
- JMSBinding binding2 = (JMSBinding)composite2.getComponents().get(0).getServices().get(0).getBindings().get(0);
- assertNotNull(binding2);
-
- // Compare initial binding to written binding.
- assertEquals(binding, binding2);
- }
-
- public void testConfiguredOperations() throws Exception {
- XMLStreamReader reader =
- inputFactory.createXMLStreamReader(new StringReader(JMSBindingProcessorTestCase.CONFIGURED_OPERATIONS));
- Composite composite = (Composite)staxProcessor.read(reader);
- JMSBinding binding = (JMSBinding)composite.getComponents().get(0).getServices().get(0).getBindings().get(0);
- assertNotNull(binding);
-
- // Write out JMSBinding model to stream.
- ByteArrayOutputStream bos = new ByteArrayOutputStream();
- staxProcessor.write(composite, outputFactory.createXMLStreamWriter(bos));
-
- // Read written JMSBinding to a different JMSBinding model.
- XMLStreamReader reader2 = inputFactory.createXMLStreamReader(new StringReader(bos.toString()));
- Composite composite2 = (Composite)staxProcessor.read(reader2);
- JMSBinding binding2 = (JMSBinding)composite2.getComponents().get(0).getServices().get(0).getBindings().get(0);
- assertNotNull(binding2);
-
- // Compare initial binding to written binding.
- assertEquals(binding, binding2);
- }
-
- public void testWireFormat() throws Exception {
- XMLStreamReader reader =
- inputFactory.createXMLStreamReader(new StringReader(JMSBindingProcessorTestCase.WIRE_FORMAT));
- Composite composite = (Composite)staxProcessor.read(reader);
- JMSBinding binding = (JMSBinding)composite.getComponents().get(0).getServices().get(0).getBindings().get(0);
- assertNotNull(binding);
-
- // Write out JMSBinding model to stream.
- ByteArrayOutputStream bos = new ByteArrayOutputStream();
- staxProcessor.write(composite, outputFactory.createXMLStreamWriter(bos));
-
- // Read written JMSBinding to a different JMSBinding model.
- XMLStreamReader reader2 = inputFactory.createXMLStreamReader(new StringReader(bos.toString()));
- Composite composite2 = (Composite)staxProcessor.read(reader2);
- JMSBinding binding2 = (JMSBinding)composite2.getComponents().get(0).getServices().get(0).getBindings().get(0);
- assertNotNull(binding2);
-
- // Compare initial binding to written binding.
- assertEquals(binding, binding2);
- }
-
- // TUSCANY-3120
- // Checking we don't write out values unless the use has specified them on input
- public void testDefault() throws Exception {
- XMLStreamReader reader =
- inputFactory.createXMLStreamReader(new StringReader(DEFAULT));
- Composite composite = (Composite)staxProcessor.read(reader);
- JMSBinding binding = (JMSBinding)composite.getComponents().get(0).getServices().get(0).getBindings().get(0);
- assertNotNull(binding);
-
- ByteArrayOutputStream bos = new ByteArrayOutputStream();
- staxProcessor.write(composite, outputFactory.createXMLStreamWriter(bos));
-
- System.out.println(bos.toString());
- assertEquals(bos.toString(),
- "<?xml version=\'1.0\' encoding=\'UTF-8\'?>" +
- "<composite targetNamespace=\"http://binding-jms\" name=\"binding-jms\" xmlns=\"http://www.osoa.org/xmlns/sca/1.0\">" +
- "<component name=\"HelloWorldComponent\">" +
- "<service name=\"HelloWorldService\">" +
- "<binding.jms><operationProperties name=\"JKL\" /> " +
- "<destination name=\"AAA\">" +
- "<property name=\"AAAProp\" type=\"string\"></property>" +
- "</destination> " +
- "<connectionFactory name=\"ABC\" /> "+
- "<resourceAdapter name=\"GHI\" /> " +
- "</binding.jms>" +
- "</service>" +
- "</component>" +
- "</composite>");
- }
-
- public void testOperationPropertiesName() throws Exception {
- XMLStreamReader reader =
- inputFactory.createXMLStreamReader(new StringReader(JMSBindingProcessorTestCase.OP_PROP_NAME));
- Composite composite = (Composite)staxProcessor.read(reader);
- JMSBinding binding = (JMSBinding)composite.getComponents().get(0).getServices().get(0).getBindings().get(0);
- assertNotNull(binding);
-
- // Write out JMSBinding model to stream.
- ByteArrayOutputStream bos = new ByteArrayOutputStream();
- staxProcessor.write(composite, outputFactory.createXMLStreamWriter(bos));
-
- // Read written JMSBinding to a different JMSBinding model.
- XMLStreamReader reader2 = inputFactory.createXMLStreamReader(new StringReader(bos.toString()));
- Composite composite2 = (Composite)staxProcessor.read(reader2);
- JMSBinding binding2 = (JMSBinding)composite2.getComponents().get(0).getServices().get(0).getBindings().get(0);
- assertNotNull(binding2);
-
- // Compare initial binding to written binding.
- assertEquals("foo", binding2.getOperationPropertiesName().getLocalPart());
- }
-}