one other option is to have the interface separate and wrap the message context with a adapter.
I neutral (in apache votes 0 :) ) on making our message context implement this Thanks Srinath On 11/11/05, Paul Fremantle <[EMAIL PROTECTED]> wrote: > 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 > > >