(file) Return to WSMANExportResponseDecoder.h CVS log (file) (dir) Up to [Pegasus] / pegasus / src / Pegasus / ExportClient

 1 anusha.kandepu 1.1 //%LICENSE////////////////////////////////////////////////////////////////
 2                    //
 3                    // Licensed to The Open Group (TOG) under one or more contributor license
 4                    // agreements.  Refer to the OpenPegasusNOTICE.txt file distributed with
 5                    // this work for additional information regarding copyright ownership.
 6                    // Each contributor licenses this file to you under the OpenPegasus Open
 7                    // Source License; you may not use this file except in compliance with the
 8                    // License.
 9                    //
10                    // Permission is hereby granted, free of charge, to any person obtaining a
11                    // copy of this software and associated documentation files (the "Software"),
12                    // to deal in the Software without restriction, including without limitation
13                    // the rights to use, copy, modify, merge, publish, distribute, sublicense,
14                    // and/or sell copies of the Software, and to permit persons to whom the
15                    // Software is furnished to do so, subject to the following conditions:
16                    //
17                    // The above copyright notice and this permission notice shall be included
18                    // in all copies or substantial portions of the Software.
19                    //
20                    // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
21                    // OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
22 anusha.kandepu 1.1 // MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
23                    // IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
24                    // CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
25                    // TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
26                    // SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
27                    //
28                    //////////////////////////////////////////////////////////////////////////
29                    //
30                    //%/////////////////////////////////////////////////////////////////////////////
31                    
32                    #ifndef Pegasus_WSMANExportResponseDecoder_h
33                    #define Pegasus_WSMANExportResponseDecoder_h
34                    
35                    #include <Pegasus/Common/MessageQueue.h>
36                    #include <Pegasus/Common/AutoPtr.h>
37                    #include <Pegasus/Client/ClientAuthenticator.h>
38                    #include <Pegasus/ExportClient/HTTPExportResponseDecoder.h>
39                    
40                    PEGASUS_NAMESPACE_BEGIN
41                    
42                    /**
43 anusha.kandepu 1.1     The WSMANExportResponseDecoder class receives HTTP messages and decodes them
44                        into WSMAN Export Response messages which it places on its output queue.
45                    */
46                    class PEGASUS_EXPORT_CLIENT_LINKAGE WSMANExportResponseDecoder :
47                        public MessageQueue
48                    {
49                    
50                       public:
51                    
52                          /** Constructor.
53                              @param outputQueue queue to receive decoded HTTP messages.
54                              @param encoderQueue queue to receive WSMAN Export Response messages.
55                              @param authenticator client authenticator.
56                          */
57                          WSMANExportResponseDecoder(
58                             MessageQueue* outputQueue,
59                             MessageQueue* encoderQueue,
60                             ClientAuthenticator* authenticator);
61                    
62                          /** Destructor. */
63                          ~WSMANExportResponseDecoder();
64 anusha.kandepu 1.1 
65                          void setEncoderQueue(MessageQueue* encoderQueue);
66                    
67                          /** This method is called when a message is enqueued on this queue. */
68                          virtual void handleEnqueue();
69                          
70                          void setContentLanguages(const ContentLanguageList & contentLanguages);
71                          void setWsmRequest(WsmRequest* request);
72                         
73                    
74                       private:
75                    
76                          void _handleHTTPMessage(HTTPMessage* message);
77                    
78                          AutoPtr<MessageQueue> _outputQueue;
79                          AutoPtr<MessageQueue> _encoderQueue;
80                          AutoPtr<ClientAuthenticator> _authenticator;
81                          ContentLanguageList _contentLanguages; 
82                          WsmRequest * _request;
83                    };
84                    
85 anusha.kandepu 1.1 PEGASUS_NAMESPACE_END
86                    
87                    #endif /* Pegasus_WSMANExportResponseDecoder_h */

No CVS admin address has been configured
Powered by
ViewCVS 0.9.2