66 lines
1.8 KiB
C++

///----------------------------------------------------------------------------
//
// Copyright (C) Intel Corporation, 2006 - 2007.
//
// File: connector.h
//
// Contents: Connector that handles connection to peers
//
// Notes:
//----------------------------------------------------------------------------
#ifndef _MPS_CONNECTOR_H__
#define _MPS_CONNECTOR_H__
//===================================================
// INCLUDES
//===================================================
#include <ace/ACE.h>
#if !defined (ACE_LACKS_PRAGMA_ONCE)
# pragma once
#endif /* ACE_LACKS_PRAGMA_ONCE */
#include <ace/Connector.h>
#include <ace/SOCK_Connector.h>
#include "TcpSvcHandler.h"
/*
#if !defined (ACE_LACKS_PRAGMA_ONCE)
# pragma once
#endif /* ACE_LACKS_PRAGMA_ONCE */
//========================================================
// Connection_Handler_Connector
// A concrete factory class that setups connections to peers
// and produces a new Connection_Handler object to do the dirty
// work...
//========================================================
class Connection_Handler_Connector : public ACE_Connector<Tcp_Svc_Handler, ACE_SOCK_CONNECTOR>
{
private:
//===================================================
// CTOR / DTOR
//===================================================
Connection_Handler_Connector (void);
public:
static Connection_Handler_Connector& instance() {
static Connection_Handler_Connector c;
return c;
}
//-------------------------------------------------------
// Initiate (or reinitiate) a connection on the
// Connection_Handler.
//-------------------------------------------------------
int initiate_connection (Tcp_Svc_Handler *,
ACE_Synch_Options & = ACE_Synch_Options::synch);
};
#endif /* _MPS_CONNECTOR_H__ */