diff options
Diffstat (limited to 'ACE/protocols/ace/HTBP/HTBP_ID_Requestor.h')
-rw-r--r-- | ACE/protocols/ace/HTBP/HTBP_ID_Requestor.h | 63 |
1 files changed, 63 insertions, 0 deletions
diff --git a/ACE/protocols/ace/HTBP/HTBP_ID_Requestor.h b/ACE/protocols/ace/HTBP/HTBP_ID_Requestor.h new file mode 100644 index 00000000000..97a1f04f1f8 --- /dev/null +++ b/ACE/protocols/ace/HTBP/HTBP_ID_Requestor.h @@ -0,0 +1,63 @@ +// -*- C++ -*- +// $Id$ + +#ifndef HTID_REQUESTOR_H +#define HTID_REQUESTOR_H +#include /**/ "ace/pre.h" + +#include "HTBP_Export.h" +#include "ace/SString.h" +#include "ace/Synch_Traits.h" + +#if !defined (ACE_LACKS_PRAGMA_ONCE) +# pragma once +#endif /* ACE_LACKS_PRAGMA_ONCE */ + +ACE_BEGIN_VERSIONED_NAMESPACE_DECL + +// Forward declarations +class ACE_SOCK_Stream; + +namespace ACE +{ + namespace HTBP + { + // Forward declarations + class Environment; + + /** + * ACE_HTBP_ID_Requestor + * + * @brief This singleton class is to be used to get a HTID + */ + class HTBP_Export ID_Requestor + { + public: + /// Constructor. + ID_Requestor (Environment * = 0); + + /// Accessor to HTID + ACE_TCHAR *get_HTID (); + + private: + /// Connects to the remote host + int connect_to_server (ACE_SOCK_Stream *cli_stream); + + /// Send HTTP GET request to the server. + int send_request (ACE_SOCK_Stream *cli_stream); + + unsigned port_; + ACE_TString host_; + ACE_TString url_; + + static ACE_TString htid_; + static ACE_SYNCH_MUTEX htid_lock_; + }; + + } +} + +ACE_END_VERSIONED_NAMESPACE_DECL + +#include /**/ "ace/post.h" +#endif /* HTID_REQUESTOR_H */ |