summaryrefslogtreecommitdiff
path: root/apps/Gateway/Gateway/Proxy_Handler_Connector.h
blob: 3baea75934abe31558a36b533aaf2e8ba6e5fa70 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
/* -*- C++ -*- */
// $Id$

// ============================================================================
//
// = LIBRARY
//    apps
// 
// = FILENAME
//    Proxy_Handler_Connector.h
//
// = AUTHOR
//    Doug Schmidt 
// 
// ============================================================================

#if !defined (_IO_HANDLER_CONNECTOR)
#define _IO_HANDLER_CONNECTOR

#include "ace/Connector.h"
#include "Thr_Proxy_Handler.h"

class Proxy_Handler_Connector : public ACE_Connector<Proxy_Handler, ACE_SOCK_CONNECTOR>
  // = TITLE
  //    A concrete factory class that setups connections to peerds 
  //    and produces a new Proxy_Handler object to do the dirty work...
{
public:
  Proxy_Handler_Connector (void);

  // Initiate (or reinitiate) a connection on the Proxy_Handler.
  int initiate_connection (Proxy_Handler *, 
			   ACE_Synch_Options & = ACE_Synch_Options::synch);

protected:  
  // Override the connection-failure method to add timer support.
  virtual int handle_close (ACE_HANDLE sd, ACE_Reactor_Mask);
};

#endif /* _IO_HANDLER_CONNECTOR */