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

 1 karl  1.17 //%2006////////////////////////////////////////////////////////////////////////
 2 mike  1.2  //
 3 karl  1.14 // Copyright (c) 2000, 2001, 2002 BMC Software; Hewlett-Packard Development
 4            // Company, L.P.; IBM Corp.; The Open Group; Tivoli Systems.
 5            // Copyright (c) 2003 BMC Software; Hewlett-Packard Development Company, L.P.;
 6 karl  1.11 // IBM Corp.; EMC Corporation, The Open Group.
 7 karl  1.14 // Copyright (c) 2004 BMC Software; Hewlett-Packard Development Company, L.P.;
 8            // IBM Corp.; EMC Corporation; VERITAS Software Corporation; The Open Group.
 9 karl  1.15 // Copyright (c) 2005 Hewlett-Packard Development Company, L.P.; IBM Corp.;
10            // EMC Corporation; VERITAS Software Corporation; The Open Group.
11 karl  1.17 // Copyright (c) 2006 Hewlett-Packard Development Company, L.P.; IBM Corp.;
12            // EMC Corporation; Symantec Corporation; The Open Group.
13 mike  1.2  //
14            // Permission is hereby granted, free of charge, to any person obtaining a copy
15            // of this software and associated documentation files (the "Software"), to
16            // deal in the Software without restriction, including without limitation the
17            // rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
18            // sell copies of the Software, and to permit persons to whom the Software is
19            // furnished to do so, subject to the following conditions:
20 karl  1.17 // 
21 mike  1.2  // THE ABOVE COPYRIGHT NOTICE AND THIS PERMISSION NOTICE SHALL BE INCLUDED IN
22            // ALL COPIES OR SUBSTANTIAL PORTIONS OF THE SOFTWARE. THE SOFTWARE IS PROVIDED
23            // "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT
24            // LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
25            // PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
26            // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
27            // ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
28            // WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
29            //
30            //==============================================================================
31            //
32            // Author: Mike Brasher (mbrasher@bmc.com)
33            //
34            // Modified By: Nitin Upasani, Hewlett-Packard Company (Nitin_Upasani@hp.com)
35            //              Nag Boranna, Hewlett-Packard Company (nagaraja_boranna@hp.com)
36 kumpf 1.10 //              Yi Zhou, Hewlett-Packard Company (yi_zhou@hp.com)
37 a.arora 1.12 //              Amit K Arora, (amita@in.ibm.com) for PEP101
38 david.dillard 1.16 //              David Dillard, VERITAS Software Corp.
39                    //                  (david.dillard@veritas.com)
40 mike          1.2  //
41                    //%/////////////////////////////////////////////////////////////////////////////
42                    
43                    #ifndef Pegasus_CIMExportRequestEncoder_h
44                    #define Pegasus_CIMExportRequestEncoder_h
45                    
46                    #include <Pegasus/Common/Config.h>
47 kumpf         1.10 #include <Pegasus/Common/MessageQueue.h>
48 mike          1.2  #include <Pegasus/Common/CIMMessage.h>
49 a.arora       1.12 #include <Pegasus/Common/AutoPtr.h>
50 mike          1.2  #include <Pegasus/Client/ClientAuthenticator.h>
51                    #include <Pegasus/ExportClient/Linkage.h>
52                    
53                    PEGASUS_NAMESPACE_BEGIN
54                    
55                    /** This class receives CIM Operation Request messages on its input queue
56                        and encodes them into HTTP messages which it places on its output queue.
57                    */
58 david.dillard 1.16 class PEGASUS_EXPORT_CLIENT_LINKAGE CIMExportRequestEncoder
59 kumpf         1.10    : public MessageQueue
60 mike          1.2  {
61 mday          1.4     public:
62                          /** Constuctor.
63 david.dillard 1.16           @param outputQueue queue to receive encoded HTTP messages.
64 kumpf         1.13           @param hostName Name of the target host for the encoded requests.
65                                              I.e., the value of the HTTP Host header.
66 david.dillard 1.16           @param authenticator client authenticator.
67 mday          1.4        */
68                          CIMExportRequestEncoder(
69 kumpf         1.13          MessageQueue* outputQueue,
70                             const String& hostName,
71                             ClientAuthenticator* authenticator);
72 mday          1.4  
73                          /** Destructor. */
74                          ~CIMExportRequestEncoder();
75                    
76                          /** This method is called when a message is enqueued on this queue. */
77                          virtual void handleEnqueue();
78                    
79                       private:
80                    
81                          void _encodeExportIndicationRequest(
82 david.dillard 1.16             CIMExportIndicationRequestMessage* message);
83 mday          1.4  
84                          MessageQueue* _outputQueue;
85 kumpf         1.9        CString _hostName;
86 a.arora       1.12       AutoPtr<ClientAuthenticator> _authenticator; //PEP101
87 mike          1.2  };
88                    
89                    PEGASUS_NAMESPACE_END
90                    
91                    #endif /* Pegasus_CIMExportRequestEncoder_h */

No CVS admin address has been configured
Powered by
ViewCVS 0.9.2