C++ Code Generated for WSDL Operation Input/Output/Fault

Control classes are generated for WSDL Operation input/output/fault bindings. The purpose of a control class is to act as a control interface for encoding or decoding complete XML documents or messages. This class allows a message buffer or stream object to be associated with a WSDL Operation input/ output/fault type class. Once this association is made, methods can be invoked from within the class to serialize data to and from the type class and the buffer or stream.

A sample WSDL Operation Input/Output section is as follows:

   class EXTERN Add_Fault_CC : public OSXSDGlobalElement {
   protected:
      Add_Fault* mpValue;
      Add_Fault_CC& operator= (const Add_Fault_CC&);

   public:
      Add_Fault_CC (Add_Fault* pvalue=0);
      Add_Fault_CC (Add_Fault& value);
      Add_Fault_CC (OSRTMessageBufferIF& msgbuf, Add_Fault* pvalue=0);
      Add_Fault_CC (OSRTMessageBufferIF& msgbuf, Add_Fault& value);
      ~Add_Fault_CC();

      // standard encode/decode methods (defined in base class):
      // int encode ();
      // int decode ();

      // stream encode/decode methods:
      int encodeTo (OSRTMessageBufferIF& msgbuf);

      inline Add_Fault* getValue() { return mpValue; }
      inline void setValue (Add_Fault* pvalue) { mpValue = pvalue; }

      void genTestInstance();
      void print (const char* name);
   } ;

   class EXTERN Add_Input_CC : public OSXSDGlobalElement {
   protected:
      Add_Input* mpValue;
      Add_Input_CC& operator= (const Add_Input_CC&);

   public:
      Add_Input_CC (Add_Input* pvalue=0);
      Add_Input_CC (Add_Input& value);
      Add_Input_CC (OSRTMessageBufferIF& msgbuf, Add_Input* pvalue=0);
      Add_Input_CC (OSRTMessageBufferIF& msgbuf, Add_Input& value);
      ~Add_Input_CC();

      // standard encode/decode methods (defined in base class):
      // int encode ();
      // int decode ();

      // stream encode/decode methods:
      int encodeTo (OSRTMessageBufferIF& msgbuf);
      int decodeFrom (OSRTMessageBufferIF& msgbuf);

      inline Add_Input* getValue() { return mpValue; }
      inline void setValue (Add_Input* pvalue) { mpValue = pvalue; }

      void genTestInstance();
      void print (const char* name);
   } ;

   class EXTERN Add_Output_CC : public OSXSDGlobalElement {
   protected:
      Add_Output* mpValue;
      Add_Fault* mpFault;
      Add_Output_CC& operator= (const Add_Output_CC&);
   public:
      Add_Output_CC (Add_Output* pvalue=0, Add_Fault* pfault=0);
      Add_Output_CC (Add_Output& value);
      Add_Output_CC (Add_Output& value, Add_Fault& fault);
      Add_Output_CC (OSRTMessageBufferIF& msgbuf, Add_Output* pvalue=0,
                     Add_Fault* pfault=0);
      Add_Output_CC (OSRTMessageBufferIF& msgbuf, Add_Output&
value);
      Add_Output_CC (OSRTMessageBufferIF& msgbuf, Add_Output&
value,
                     Add_Fault& fault);
      ~Add_Output_CC();

      // standard encode/decode methods (defined in base class):
      // int encode ();
      // int decode ();

      // stream encode/decode methods:
      int encodeTo (OSRTMessageBufferIF& msgbuf);
      int decodeFrom (OSRTMessageBufferIF& msgbuf);

      // stream validate method:
      int validateFrom (OSRTMessageBufferIF& msgbuf);

      inline Add_Output* getValue() { return mpValue; }
      inline void setValue (Add_Output* pvalue) { mpValue = pvalue; }

      void genTestInstance();
      void print (const char* name);
   } ;