Brady,

These changes look fine to me.

Cheers,

On 03/07/07, Brady Johnson <[EMAIL PROTECTED]> wrote:
Currently there is no way to obtain WSDL Operation Message information
as defined in a WSDL. The WSDLOperation class does have 2 attributes
that seem to help serve this purpose, but they are never populated.
   commonj::sdo::DataObjectPtr inputMessage;
   commonj::sdo::DataObjectPtr outputMessage;

I created a JIRA for this:
   https://issues.apache.org/jira/browse/TUSCANY-1402

I would like to propose adding several methods related to the
input/output messages as follows:

   // Called from WSDLDefinition, populates std::map<std::string,
tuscany::sca::model::WSDLMessagePart> partMap
   // which will map part names to message parts
   void WSDLOperation::setInputMessage( commonj::sdo::DataObjectPtr msg
);
   void WSDLOperation::setOutputMessage( commonj::sdo::DataObjectPtr
msg );

   // Allows you to iterate over the input/output message parts
   // Initially for Document wrapped, there will only be one part
   std::list<std::string> WSDLOperation::getInputMessagePartNames();
   std::list<std::string> WSDLOperation::getOutputMessagePartNames();

   // Allows you to get the actual input/output message part
   // Initially for Document wrapped, there will only be one part
   tuscany::sca::model::WSDLMessagePart
WSDLOperation::getInputMessagePart( std::string msgPartName );
   tuscany::sca::model::WSDLMessagePart
WSDLOperation::getOutputMessagePart( std::string msgPartName );

   // Currently WSDLOperation specfies encoding for the entire
operation, when actually
   // it should be specified seperately for both the input AND the
output message
   void WSDLMessagePart::setInputEncoded( bool ); // replaces
setEncoded
   void WSDLMessagePart::setOutputEncoded( bool ); // replaces
setEncoded
   bool WSDLMessagePart::isInputEncoded(); // replaces isEncoded
   bool WSDLMessagePart::isOutputEncoded(); // replaces isEncoded

The WSDLMessagePart class would have the following API:
   WSDLMessagePart::WSDLMessagePart( std::string partName, std::string
partType, std::string partUri );

   std::string WSDLMessagePart::getPartName();
   void WSDLMessagePart::setPartName( std::string uri );

   std::string WSDLMessagePart::getPartType();
   void WSDLMessagePart::setPartType( std::string name );

   std::string WSDLMessagePart::getPartUri();
   void WSDLMessagePart::setPartUri( std::string uri );

This would be a good step towards making Tuscany support both Document
AND RPC SOAP message binding styles.

If everyone agrees with these changes, I can provide a patch shortly.

--------------------
Brady Johnson
Lead Software Developer - HydraSCA
Rogue Wave Software - [EMAIL PROTECTED]




--
Pete

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to