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

Diff for /pegasus/src/Pegasus/Common/HTTPConnector.h between version 1.4 and 1.23

version 1.4, 2002/02/25 23:57:07 version 1.23, 2006/09/13 21:08:55
Line 1 
Line 1 
 //%////-*-c++-*-////////////////////////////////////////////////////////////////  //%2006////////////////////////////////////////////////////////////////////////
 // //
 // Copyright (c) 2000, 2001 BMC Software, Hewlett-Packard Company, IBM,  // Copyright (c) 2000, 2001, 2002 BMC Software; Hewlett-Packard Development
 // The Open Group, Tivoli Systems  // Company, L.P.; IBM Corp.; The Open Group; Tivoli Systems.
   // Copyright (c) 2003 BMC Software; Hewlett-Packard Development Company, L.P.;
   // IBM Corp.; EMC Corporation, The Open Group.
   // Copyright (c) 2004 BMC Software; Hewlett-Packard Development Company, L.P.;
   // IBM Corp.; EMC Corporation; VERITAS Software Corporation; The Open Group.
   // Copyright (c) 2005 Hewlett-Packard Development Company, L.P.; IBM Corp.;
   // EMC Corporation; VERITAS Software Corporation; The Open Group.
   // Copyright (c) 2006 Hewlett-Packard Development Company, L.P.; IBM Corp.;
   // EMC Corporation; Symantec Corporation; The Open Group.
 // //
 // Permission is hereby granted, free of charge, to any person obtaining a copy // Permission is hereby granted, free of charge, to any person obtaining a copy
 // of this software and associated documentation files (the "Software"), to // of this software and associated documentation files (the "Software"), to
Line 23 
Line 31 
 // //
 // Author: Mike Brasher (mbrasher@bmc.com) // Author: Mike Brasher (mbrasher@bmc.com)
 // //
 // Modified By:  // Modified By: Carol Ann Krug Graves, Hewlett-Packard Company
   //                (carolann_graves@hp.com)
   //              Dan Gorey, IBM (djgorey@us.ibm.com)
   //              Roger Kumpf, Hewlett-Packard Company (roger_kumpf@hp.com)
 // //
 //%///////////////////////////////////////////////////////////////////////////// //%/////////////////////////////////////////////////////////////////////////////
  
Line 31 
Line 42 
 #define Pegasus_HTTPConnector_h #define Pegasus_HTTPConnector_h
  
 #include <Pegasus/Common/Config.h> #include <Pegasus/Common/Config.h>
 #include <Pegasus/Common/MessageQueueService.h>  #include <Pegasus/Common/MessageQueue.h>
 #include <Pegasus/Common/Monitor.h> #include <Pegasus/Common/Monitor.h>
 #include <Pegasus/Common/String.h> #include <Pegasus/Common/String.h>
 #include <Pegasus/Common/TLS.h> #include <Pegasus/Common/TLS.h>
   #include <Pegasus/Common/Linkage.h>
  
 PEGASUS_NAMESPACE_BEGIN PEGASUS_NAMESPACE_BEGIN
  
 struct HTTPConnectorRep; struct HTTPConnectorRep;
   
 class HTTPConnection; class HTTPConnection;
  
 /** This class is used by clients to establish a connection with a /** This class is used by clients to establish a connection with a
     server. For each established connection, a HTTPConnection object     server. For each established connection, a HTTPConnection object
     is created.     is created.
 */ */
 class PEGASUS_COMMON_LINKAGE HTTPConnector : public MessageQueueService  class PEGASUS_COMMON_LINKAGE HTTPConnector : public MessageQueue
 { {
    public:    public:
  
       typedef MessageQueueService Base;        typedef MessageQueue Base;
  
       /** Constructor.       /** Constructor.
           @param monitor pointer to monitor object which this class uses to           @param monitor pointer to monitor object which this class uses to
Line 71 
Line 84 
       virtual void handleEnqueue(Message *);       virtual void handleEnqueue(Message *);
       virtual void handleEnqueue();       virtual void handleEnqueue();
  
       virtual const char* getQueueName() const;        /** Establishes a new connection and creates an HTTPConnection object
             to represent it.
   
             @param host indicates host to connect to
             @param portNumber indicates port number to use
             @param outputMessageQueue output message queue for the HTTPConnection
             that will be created.
             @exception InvalidLocatorException
             @exception CannotCreateSocketException
             @exception CannotConnectException
         */
         inline HTTPConnection* connect(
            const String& host,
            const Uint32 portNumber,
            MessageQueue* outputMessageQueue)
         {
             return connect(host, portNumber, NULL, outputMessageQueue);
         }
  
       /** Establishes a new connection and creates an HTTPConnection object       /** Establishes a new connection and creates an HTTPConnection object
           to represent it.           to represent it.
  
           @param locator indicates which server to connect to (of the form            @param host indicates host to connect to
           host:port).            @param portNumber indicates port number to use
             @param sslContext Specifies the SSL context to use for this connection
           @param outputMessageQueue output message queue for the HTTPConnection           @param outputMessageQueue output message queue for the HTTPConnection
           that will be created.           that will be created.
           @exception InvalidLocator            @exception InvalidLocatorException
           @exception CannotCreateSocket            @exception CannotCreateSocketException
           @exception CannotConnect            @exception CannotConnectException
           @exception UnexpectedFailure  
       */       */
       HTTPConnection* connect(       HTTPConnection* connect(
          const String& locator,           const String& host,
            const Uint32 portNumber,
            SSLContext * sslContext,
          MessageQueue* outputMessageQueue);          MessageQueue* outputMessageQueue);
  
       /** Destroys all the connections created by this connector. */       /** Destroys all the connections created by this connector. */
       void destroyConnections();       void destroyConnections();
  
         /** Close the specified connection. */
         void disconnect(HTTPConnection* connection);
   
    private:    private:
  
         /** Delete the specified connection. */
         void _deleteConnection(HTTPConnection* httpConnection);
   
       Monitor* _monitor;       Monitor* _monitor;
       HTTPConnectorRep* _rep;       HTTPConnectorRep* _rep;
  
       SSLContext * _sslcontext;       SSLContext * _sslcontext;
         int _entry_index;
   
 }; };
  
 PEGASUS_NAMESPACE_END PEGASUS_NAMESPACE_END


Legend:
Removed from v.1.4  
changed lines
  Added in v.1.23

No CVS admin address has been configured
Powered by
ViewCVS 0.9.2