Added: 
tuscany/branches/sca-java-1.x/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmstext/runtime/WireFormatJMSTextServiceProvider.java
URL: 
http://svn.apache.org/viewvc/tuscany/branches/sca-java-1.x/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmstext/runtime/WireFormatJMSTextServiceProvider.java?rev=721811&view=auto
==============================================================================
--- 
tuscany/branches/sca-java-1.x/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmstext/runtime/WireFormatJMSTextServiceProvider.java
 (added)
+++ 
tuscany/branches/sca-java-1.x/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmstext/runtime/WireFormatJMSTextServiceProvider.java
 Sun Nov 30 05:46:51 2008
@@ -0,0 +1,91 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ * 
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT 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.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.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.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.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 overried 
+        // any message processors specied in the SCDL in this case
+        
this.binding.setRequestMessageProcessorName(JMSBindingConstants.TEXT_MP_CLASSNAME);
+        
this.binding.setResponseMessageProcessorName(JMSBindingConstants.TEXT_MP_CLASSNAME);
+        
+        // just point to the reference interface contract so no 
+        // databinding transformation takes place
+        interfaceContract = service.getInterfaceContract();
+    }
+    
+    public InterfaceContract getWireFormatInterfaceContract() {
+        return interfaceContract;
+    }
+
+    /**
+     */
+    public Interceptor createInterceptor() {
+        return new WireFormatJMSTextServiceInterceptor((JMSBinding)binding,
+                                                         null,
+                                                        
service.getRuntimeWire(binding));
+    }
+
+    /**
+     */
+    public String getPhase() {
+        return Phase.SERVICE_BINDING_WIREFORMAT;
+    }
+
+}

Propchange: 
tuscany/branches/sca-java-1.x/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmstext/runtime/WireFormatJMSTextServiceProvider.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: 
tuscany/branches/sca-java-1.x/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmstext/runtime/WireFormatJMSTextServiceProvider.java
------------------------------------------------------------------------------
    svn:keywords = Rev Date

Added: 
tuscany/branches/sca-java-1.x/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmstextxml/runtime/WireFormatJMSTextXMLProviderFactory.java
URL: 
http://svn.apache.org/viewvc/tuscany/branches/sca-java-1.x/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmstextxml/runtime/WireFormatJMSTextXMLProviderFactory.java?rev=721811&view=auto
==============================================================================
--- 
tuscany/branches/sca-java-1.x/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmstextxml/runtime/WireFormatJMSTextXMLProviderFactory.java
 (added)
+++ 
tuscany/branches/sca-java-1.x/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmstextxml/runtime/WireFormatJMSTextXMLProviderFactory.java
 Sun Nov 30 05:46:51 2008
@@ -0,0 +1,72 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ * 
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT 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;
+    }
+
+}

Propchange: 
tuscany/branches/sca-java-1.x/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmstextxml/runtime/WireFormatJMSTextXMLProviderFactory.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: 
tuscany/branches/sca-java-1.x/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmstextxml/runtime/WireFormatJMSTextXMLProviderFactory.java
------------------------------------------------------------------------------
    svn:keywords = Rev Date

Added: 
tuscany/branches/sca-java-1.x/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmstextxml/runtime/WireFormatJMSTextXMLReferenceInterceptor.java
URL: 
http://svn.apache.org/viewvc/tuscany/branches/sca-java-1.x/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmstextxml/runtime/WireFormatJMSTextXMLReferenceInterceptor.java?rev=721811&view=auto
==============================================================================
--- 
tuscany/branches/sca-java-1.x/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmstextxml/runtime/WireFormatJMSTextXMLReferenceInterceptor.java
 (added)
+++ 
tuscany/branches/sca-java-1.x/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmstextxml/runtime/WireFormatJMSTextXMLReferenceInterceptor.java
 Sun Nov 30 05:46:51 2008
@@ -0,0 +1,125 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ * 
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT 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 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.binding.jms.wireformat.jmstextxml.WireFormatJMSTextXML;
+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 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){
+            Object[] response = 
(Object[])responseMessageProcessor.extractPayloadFromJMSMessage((javax.jms.Message)msg.getBody());
+            if (response != null && response.length > 0){
+                msg.setBody(response[0]);
+            } else {
+                msg.setBody(null);
+            }
+        }
+
+        return msg;
+    }    
+
+    public Invoker getNext() {
+        return next;
+    }
+
+    public void setNext(Invoker next) {
+        this.next = next;
+    }    
+}

Propchange: 
tuscany/branches/sca-java-1.x/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmstextxml/runtime/WireFormatJMSTextXMLReferenceInterceptor.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: 
tuscany/branches/sca-java-1.x/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmstextxml/runtime/WireFormatJMSTextXMLReferenceInterceptor.java
------------------------------------------------------------------------------
    svn:keywords = Rev Date

Added: 
tuscany/branches/sca-java-1.x/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmstextxml/runtime/WireFormatJMSTextXMLReferenceProvider.java
URL: 
http://svn.apache.org/viewvc/tuscany/branches/sca-java-1.x/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmstextxml/runtime/WireFormatJMSTextXMLReferenceProvider.java?rev=721811&view=auto
==============================================================================
--- 
tuscany/branches/sca-java-1.x/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmstextxml/runtime/WireFormatJMSTextXMLReferenceProvider.java
 (added)
+++ 
tuscany/branches/sca-java-1.x/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmstextxml/runtime/WireFormatJMSTextXMLReferenceProvider.java
 Sun Nov 30 05:46:51 2008
@@ -0,0 +1,110 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ * 
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT 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 java.util.List;
+
+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.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.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.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.getRequestMessageProcessorName().equals(JMSBindingConstants.XML_MP_CLASSNAME)
 ){
+            
this.binding.setRequestMessageProcessorName(JMSBindingConstants.XML_MP_CLASSNAME);
+            
this.binding.setResponseMessageProcessorName(JMSBindingConstants.XML_MP_CLASSNAME);
+        }
+        
+        // set the binding interface contract to represent the WSDL for the 
+        // xml messages that will be sent
+        if (reference.getInterfaceContract() != null &&
+            !isOnMessage()) {
+            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());  
+        } else {
+            interfaceContract = reference.getInterfaceContract();
+        }
+    }
+    
+    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 getWireFormatInterfaceContract() {
+        return interfaceContract;
+    }
+    
+    public Interceptor createInterceptor() {
+        return new 
WireFormatJMSTextXMLReferenceInterceptor((JMSBinding)binding, 
+                                                            null, 
+                                                            
reference.getRuntimeWire(binding));
+    }
+
+    public String getPhase() {
+        return Phase.REFERENCE_BINDING_WIREFORMAT;
+    }
+
+}

Propchange: 
tuscany/branches/sca-java-1.x/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmstextxml/runtime/WireFormatJMSTextXMLReferenceProvider.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: 
tuscany/branches/sca-java-1.x/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmstextxml/runtime/WireFormatJMSTextXMLReferenceProvider.java
------------------------------------------------------------------------------
    svn:keywords = Rev Date

Added: 
tuscany/branches/sca-java-1.x/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmstextxml/runtime/WireFormatJMSTextXMLServiceInterceptor.java
URL: 
http://svn.apache.org/viewvc/tuscany/branches/sca-java-1.x/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmstextxml/runtime/WireFormatJMSTextXMLServiceInterceptor.java?rev=721811&view=auto
==============================================================================
--- 
tuscany/branches/sca-java-1.x/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmstextxml/runtime/WireFormatJMSTextXMLServiceInterceptor.java
 (added)
+++ 
tuscany/branches/sca-java-1.x/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmstextxml/runtime/WireFormatJMSTextXMLServiceInterceptor.java
 Sun Nov 30 05:46:51 2008
@@ -0,0 +1,117 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ * 
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT 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.naming.NamingException;
+
+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.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;
+
+/**
+ * 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 (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();
+        
+        if ("onMessage".equals(msg.getOperation().getName())) {
+            msg.setBody(new Object[]{jmsMsg});
+        } else {
+            Object requestPayload = 
requestMessageProcessor.extractPayloadFromJMSMessage(jmsMsg);
+            msg.setBody(requestPayload);
+        }
+                
+        return msg;
+    }
+    
+    public Message invokeResponse(Message msg) {
+        
+        // get the jms context
+        JMSBindingContext context = msg.getBindingContext();
+        Session session = context.getJmsSession();
+
+        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;
+    }
+}

Propchange: 
tuscany/branches/sca-java-1.x/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmstextxml/runtime/WireFormatJMSTextXMLServiceInterceptor.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: 
tuscany/branches/sca-java-1.x/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmstextxml/runtime/WireFormatJMSTextXMLServiceInterceptor.java
------------------------------------------------------------------------------
    svn:keywords = Rev Date

Added: 
tuscany/branches/sca-java-1.x/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmstextxml/runtime/WireFormatJMSTextXMLServiceProvider.java
URL: 
http://svn.apache.org/viewvc/tuscany/branches/sca-java-1.x/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmstextxml/runtime/WireFormatJMSTextXMLServiceProvider.java?rev=721811&view=auto
==============================================================================
--- 
tuscany/branches/sca-java-1.x/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmstextxml/runtime/WireFormatJMSTextXMLServiceProvider.java
 (added)
+++ 
tuscany/branches/sca-java-1.x/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmstextxml/runtime/WireFormatJMSTextXMLServiceProvider.java
 Sun Nov 30 05:46:51 2008
@@ -0,0 +1,113 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ * 
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT 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 java.util.List;
+
+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.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.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.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.getRequestMessageProcessorName().equals(JMSBindingConstants.XML_MP_CLASSNAME)
 ){
+            
this.binding.setRequestMessageProcessorName(JMSBindingConstants.XML_MP_CLASSNAME);
+            
this.binding.setResponseMessageProcessorName(JMSBindingConstants.XML_MP_CLASSNAME);
+        }
+        
+        // set the binding interface contract to represent the WSDL for the 
+        // xml messages that will be sent
+        if (service.getInterfaceContract() != null &&
+            !isOnMessage()) {
+            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());   
+        } else {
+            interfaceContract = service.getInterfaceContract();
+        }
+    }
+    
+    protected boolean isOnMessage() {
+        InterfaceContract ic = service.getInterfaceContract();
+        if (ic.getInterface().getOperations().size() != 1) {
+            return false;
+        }
+        return 
"onMessage".equals(ic.getInterface().getOperations().get(0).getName());
+    }
+        
+    public InterfaceContract getWireFormatInterfaceContract() {
+        return interfaceContract;
+    }
+
+    public Interceptor createInterceptor() {
+        return new WireFormatJMSTextXMLServiceInterceptor((JMSBinding)binding,
+                                                          jmsResourceFactory,
+                                                          
service.getRuntimeWire(binding));
+    }
+
+    public String getPhase() {
+        return Phase.SERVICE_BINDING_WIREFORMAT;
+    }
+
+}

Propchange: 
tuscany/branches/sca-java-1.x/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmstextxml/runtime/WireFormatJMSTextXMLServiceProvider.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: 
tuscany/branches/sca-java-1.x/modules/binding-jms-runtime/src/main/java/org/apache/tuscany/sca/binding/jms/wireformat/jmstextxml/runtime/WireFormatJMSTextXMLServiceProvider.java
------------------------------------------------------------------------------
    svn:keywords = Rev Date

Modified: 
tuscany/branches/sca-java-1.x/modules/binding-jms-runtime/src/main/resources/META-INF/services/org.apache.tuscany.sca.provider.OperationSelectorProviderFactory
URL: 
http://svn.apache.org/viewvc/tuscany/branches/sca-java-1.x/modules/binding-jms-runtime/src/main/resources/META-INF/services/org.apache.tuscany.sca.provider.OperationSelectorProviderFactory?rev=721811&r1=721810&r2=721811&view=diff
==============================================================================
--- 
tuscany/branches/sca-java-1.x/modules/binding-jms-runtime/src/main/resources/META-INF/services/org.apache.tuscany.sca.provider.OperationSelectorProviderFactory
 (original)
+++ 
tuscany/branches/sca-java-1.x/modules/binding-jms-runtime/src/main/resources/META-INF/services/org.apache.tuscany.sca.provider.OperationSelectorProviderFactory
 Sun Nov 30 05:46:51 2008
@@ -16,4 +16,4 @@
 # under the License. 
 
 # Implementation class for the binding extension
-org.apache.tuscany.sca.binding.jms.operationselector.jmsdefault.OperationSelectorJMSDefaultProviderFactory;model=org.apache.tuscany.sca.binding.jms.operationselector.jmsdefault.OperationSelectorJMSDefault
+org.apache.tuscany.sca.binding.jms.operationselector.jmsdefault.runtime.OperationSelectorJMSDefaultProviderFactory;model=org.apache.tuscany.sca.binding.jms.operationselector.jmsdefault.OperationSelectorJMSDefault

Modified: 
tuscany/branches/sca-java-1.x/modules/binding-jms-runtime/src/main/resources/META-INF/services/org.apache.tuscany.sca.provider.WireFormatProviderFactory
URL: 
http://svn.apache.org/viewvc/tuscany/branches/sca-java-1.x/modules/binding-jms-runtime/src/main/resources/META-INF/services/org.apache.tuscany.sca.provider.WireFormatProviderFactory?rev=721811&r1=721810&r2=721811&view=diff
==============================================================================
--- 
tuscany/branches/sca-java-1.x/modules/binding-jms-runtime/src/main/resources/META-INF/services/org.apache.tuscany.sca.provider.WireFormatProviderFactory
 (original)
+++ 
tuscany/branches/sca-java-1.x/modules/binding-jms-runtime/src/main/resources/META-INF/services/org.apache.tuscany.sca.provider.WireFormatProviderFactory
 Sun Nov 30 05:46:51 2008
@@ -16,7 +16,7 @@
 # under the License. 
 
 # Implementation class for the binding extension
-org.apache.tuscany.sca.binding.jms.wireformat.jmstextxml.WireFormatJMSTextXMLProviderFactory;model=org.apache.tuscany.sca.binding.jms.wireformat.jmstextxml.WireFormatJMSTextXML
-org.apache.tuscany.sca.binding.jms.wireformat.jmsbytes.WireFormatJMSBytesProviderFactory;model=org.apache.tuscany.sca.binding.jms.wireformat.jmsbytes.WireFormatJMSBytes
-org.apache.tuscany.sca.binding.jms.wireformat.jmstext.WireFormatJMSTextProviderFactory;model=org.apache.tuscany.sca.binding.jms.wireformat.jmstext.WireFormatJMSText
-org.apache.tuscany.sca.binding.jms.wireformat.jmsobject.WireFormatJMSObjectProviderFactory;model=org.apache.tuscany.sca.binding.jms.wireformat.jmsobject.WireFormatJMSObject
+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.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

Modified: 
tuscany/branches/sca-java-1.x/modules/binding-ws-axis2-policy/src/main/java/org/apache/tuscany/sca/binding/ws/axis2/policy/authentication/token/Axis2TokenAuthenticationServicePolicyInterceptor.java
URL: 
http://svn.apache.org/viewvc/tuscany/branches/sca-java-1.x/modules/binding-ws-axis2-policy/src/main/java/org/apache/tuscany/sca/binding/ws/axis2/policy/authentication/token/Axis2TokenAuthenticationServicePolicyInterceptor.java?rev=721811&r1=721810&r2=721811&view=diff
==============================================================================
--- 
tuscany/branches/sca-java-1.x/modules/binding-ws-axis2-policy/src/main/java/org/apache/tuscany/sca/binding/ws/axis2/policy/authentication/token/Axis2TokenAuthenticationServicePolicyInterceptor.java
 (original)
+++ 
tuscany/branches/sca-java-1.x/modules/binding-ws-axis2-policy/src/main/java/org/apache/tuscany/sca/binding/ws/axis2/policy/authentication/token/Axis2TokenAuthenticationServicePolicyInterceptor.java
 Sun Nov 30 05:46:51 2008
@@ -71,7 +71,7 @@
         Axis2SOAPHeaderString header = 
(Axis2SOAPHeaderString)Axis2HeaderPolicyUtil.getHeader(msg, 
policy.getTokenName());
         
         if (header != null) {
-            System.out.println("Token: " + header.getHeaderString());
+            System.out.println("Web service received token: " + 
header.getHeaderString());
             
             // call out here to some 3rd party system to do whatever you 
             // need to turn header credentials into an authenticated principal 
 

Modified: 
tuscany/branches/sca-java-1.x/modules/core-spi/src/main/java/org/apache/tuscany/sca/invocation/Message.java
URL: 
http://svn.apache.org/viewvc/tuscany/branches/sca-java-1.x/modules/core-spi/src/main/java/org/apache/tuscany/sca/invocation/Message.java?rev=721811&r1=721810&r2=721811&view=diff
==============================================================================
--- 
tuscany/branches/sca-java-1.x/modules/core-spi/src/main/java/org/apache/tuscany/sca/invocation/Message.java
 (original)
+++ 
tuscany/branches/sca-java-1.x/modules/core-spi/src/main/java/org/apache/tuscany/sca/invocation/Message.java
 Sun Nov 30 05:46:51 2008
@@ -113,4 +113,15 @@
      * @return
      */
     List<Object> getHeaders();
+
+    /**
+     * Returns the binding context in force for this message
+     */
+    <T> T getBindingContext();
+
+    /**
+     * Set the binding context that is in force for this message
+     * @param bindingContext
+     */
+    <T> void setBindingContext(T bindingContext);
 }

Modified: 
tuscany/branches/sca-java-1.x/modules/core/src/main/java/org/apache/tuscany/sca/core/assembly/RuntimeWireImpl.java
URL: 
http://svn.apache.org/viewvc/tuscany/branches/sca-java-1.x/modules/core/src/main/java/org/apache/tuscany/sca/core/assembly/RuntimeWireImpl.java?rev=721811&r1=721810&r2=721811&view=diff
==============================================================================
--- 
tuscany/branches/sca-java-1.x/modules/core/src/main/java/org/apache/tuscany/sca/core/assembly/RuntimeWireImpl.java
 (original)
+++ 
tuscany/branches/sca-java-1.x/modules/core/src/main/java/org/apache/tuscany/sca/core/assembly/RuntimeWireImpl.java
 Sun Nov 30 05:46:51 2008
@@ -238,7 +238,7 @@
                 if (p instanceof PolicyProviderRRB) {
                     Interceptor interceptor = 
((PolicyProviderRRB)p).createBindingInterceptor();
                     if (interceptor != null) {
-                        bindingInvocationChain.addInterceptor(p.getPhase(), 
interceptor);
+                        
bindingInvocationChain.addInterceptor(Phase.REFERENCE_BINDING_POLICY, 
interceptor);
                     }
                 }
             }
@@ -263,13 +263,12 @@
                 if (p instanceof PolicyProviderRRB) {
                     Interceptor interceptor = 
((PolicyProviderRRB)p).createBindingInterceptor();
                     if (interceptor != null) {
-                        bindingInvocationChain.addInterceptor(p.getPhase(), 
interceptor);
+                        
bindingInvocationChain.addInterceptor(Phase.SERVICE_BINDING_POLICY, 
interceptor);
                     }
                 }
             }
         }        
         
-        
         // TODO - add something on the end of the wire to invoke the 
         //        invocation chain. Need to split out the runtime
         //        wire invoker into conversation, callback interceptors etc

Modified: 
tuscany/branches/sca-java-1.x/modules/core/src/main/java/org/apache/tuscany/sca/core/invocation/MessageImpl.java
URL: 
http://svn.apache.org/viewvc/tuscany/branches/sca-java-1.x/modules/core/src/main/java/org/apache/tuscany/sca/core/invocation/MessageImpl.java?rev=721811&r1=721810&r2=721811&view=diff
==============================================================================
--- 
tuscany/branches/sca-java-1.x/modules/core/src/main/java/org/apache/tuscany/sca/core/invocation/MessageImpl.java
 (original)
+++ 
tuscany/branches/sca-java-1.x/modules/core/src/main/java/org/apache/tuscany/sca/core/invocation/MessageImpl.java
 Sun Nov 30 05:46:51 2008
@@ -32,6 +32,7 @@
  * @version $Rev $Date$
  */
 public class MessageImpl implements Message { 
+       private Object bindingContext;
     private List<Object> headers = new ArrayList<Object>();
     private Object body;
     private Object messageID;
@@ -99,6 +100,14 @@
     
     public List<Object> getHeaders() {
         return headers;
-    }    
+    } 
+    
+    @SuppressWarnings("unchecked")
+    public <T> T getBindingContext() {
+        return (T)bindingContext;
+    }
 
+    public <T> void setBindingContext(T bindingContext) {
+        this.bindingContext = bindingContext;
+    }
 }

Modified: 
tuscany/branches/sca-java-1.x/modules/core/src/main/java/org/apache/tuscany/sca/core/invocation/NonBlockingInterceptor.java
URL: 
http://svn.apache.org/viewvc/tuscany/branches/sca-java-1.x/modules/core/src/main/java/org/apache/tuscany/sca/core/invocation/NonBlockingInterceptor.java?rev=721811&r1=721810&r2=721811&view=diff
==============================================================================
--- 
tuscany/branches/sca-java-1.x/modules/core/src/main/java/org/apache/tuscany/sca/core/invocation/NonBlockingInterceptor.java
 (original)
+++ 
tuscany/branches/sca-java-1.x/modules/core/src/main/java/org/apache/tuscany/sca/core/invocation/NonBlockingInterceptor.java
 Sun Nov 30 05:46:51 2008
@@ -189,6 +189,13 @@
         
         public List<Object> getHeaders() {
             return null;
+        }   
+        
+        public <T> T getBindingContext() {
+            return null;
+        }
+
+        public <T> void setBindingContext(T bindingContext) {
         }        
     }
 

Modified: 
tuscany/branches/sca-java-1.x/modules/implementation-notification/src/main/java/org/apache/tuscany/sca/implementation/notification/ImmutableMessage.java
URL: 
http://svn.apache.org/viewvc/tuscany/branches/sca-java-1.x/modules/implementation-notification/src/main/java/org/apache/tuscany/sca/implementation/notification/ImmutableMessage.java?rev=721811&r1=721810&r2=721811&view=diff
==============================================================================
--- 
tuscany/branches/sca-java-1.x/modules/implementation-notification/src/main/java/org/apache/tuscany/sca/implementation/notification/ImmutableMessage.java
 (original)
+++ 
tuscany/branches/sca-java-1.x/modules/implementation-notification/src/main/java/org/apache/tuscany/sca/implementation/notification/ImmutableMessage.java
 Sun Nov 30 05:46:51 2008
@@ -94,5 +94,12 @@
     public List<Object> getHeaders() {
         return null;
     }
+    
+    public <T> T getBindingContext() {
+        return null;
+    }
+
+    public <T> void setBindingContext(T bindingContext) {
+    }    
 
 }


Reply via email to