Paul, Ant and all,
Good suggestion. Well I like to see both Axis2 and Synapse co-exist
without a problem. Its true that Axis2 doesn't depend on Synapse, but
from Axis2 point of view, if we can do something useful for one of the
main projects that depends on Axis2, I think that will be good.
But, On the other hand, we are trying to add something to Axis2, which
within Axis2 we might not use at all. This is not that good.
But all in all, I'm ok with adding this interface, which Paul proposed,
to message context. BUT, I don't want the message context to have a
flag to get isResponse( ). This is completely out of Axis2. So lets try
to find a solution for this in Synapse, BUT NOT IN AXIS2.
And if the name of the interface is SOAPMessageContext then I think the
methods
public void setProcessingFault(boolean b);
public boolean isProcessingFault();
doesn't belong to that interface.
Comments ??
-- Chinthaka
Anthony Elder wrote:
>With respect to Synapse, (and assuming the axis guys give us the
>interface...)
>
>Do we need these:setInFaultFlow(boolean b);b);
>or could it just be isFault/setFault?
>
>Is there a reason some methods have WSA in the method name and others don't
>- getWSAMessageId and getWSAAction vs. getTo, getFrom etc?
>
>Should MessageInformationHeaders be here? The only thing it adds thats not
>already on this interface is the referenceParameters so could there just be
>a get/set for that instead?
>
>Not sure about the properties, i'd thought Synapse would have its own place
>for storing properties, using the Axis2 MC getProperties brings in all the
>axis2 context hierarchy stuff.
>
> ...ant
>
>Paul Fremantle <[EMAIL PROTECTED]> on 11/11/2005 10:45:58
>
>Please respond to [email protected]
>
>To: [email protected]
>cc:
>Subject: [Axis2] SOAPMessageContext
>
>
>Folks
>
>The synapse-dev team have a request for Axis2. We would like an interface
>SOAPMessageContext that is a subset of the MessageContext model. The subset
>we would like is just the getters/setters for the envelope, message
>addressing properties and the property bag. We would also like the
>MessageContext to implement SOAPMessageContext.
>
>The reason is that we want to expose a subset of the MC to programmers.
>There are a lot of Axis2 engine specific aspects in MC. For example
>setAxisService().
>
>We also think that an interface that exposes just those aspects would be
>useful more widely than just Synapse.
>
>Here is the proposed interface:
>
>/*
> * Copyright 2004,2005 The Apache Software Foundation.
> *
> * 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.
> */
>
>package org.apache.axis2.context;
>
>import org.apache.axis2.AxisFault;
>import org.apache.axis2.addressing.EndpointReference;
>import org.apache.axis2.addressing.MessageInformationHeaders ;
>import org.apache.axis2.addressing.miheaders.RelatesTo;
>import org.apache.axis2.soap.SOAPEnvelope;
>
>
>public interface SOAPMessageContext {
>
> public EndpointReference getFaultTo();
> public void setFaultTo(EndpointReference reference);
>
> public EndpointReference getFrom();
> public void setFrom(EndpointReference reference);
>
> public boolean isInFaultFlow();
> public void setInFaultFlow(boolean b);
>
> public SOAPEnvelope getEnvelope();
> public void setEnvelope(SOAPEnvelope envelope) throws AxisFault;
>
> public String getMessageID();
> public void setMessageID(String string);
>
> public RelatesTo getRelatesTo();
> public void setRelatesTo(RelatesTo reference);
>
> public EndpointReference getReplyTo();
> public void setReplyTo(EndpointReference reference);
>
> public EndpointReference getTo();
> public void setTo(EndpointReference reference);
>
> public void setProcessingFault(boolean b);
> public boolean isProcessingFault() {
>
> public void setWSAAction(String actionURI);
> public String getWSAAction();
>
> public void setWSAMessageId(String messageID);
> public String getWSAMessageId();
>
> public MessageInformationHeaders getMessageInformationHeaders();
> public void setMessageInformationHeaders(MessageInformationHeaders
>collection);
>
> public Object getProperty(String key);
> public void setProperty(String key, Object value);
>
> public String getSoapAction();
> public void setSoapAction(String string);
>
> public boolean isDoingMTOM();
> public void setDoingMTOM(boolean b);
>
> public boolean isDoingREST();
> public void setDoingREST(boolean b);
>
> public boolean isSOAP11();
>}
>
>It also might be good to add a property which indicates the direction of
>the message (e.g. isResponse()). If we did that it would need to be in the
>main MC class.
>
>Comments?
>
>Paul
>
>
>
>
>
>
>