VOS::LocalVipSiteExtension Class Reference
[libvos]
#include <vos/vos/localvipsite.hh>
Inheritance diagram for VOS::LocalVipSiteExtension:

Detailed Description
This class sets up the actual vip that the VOS site will listen on and manages a list of the remote sites we are connected to.
Definition at line 56 of file localvipsite.hh.
Public Member Functions
- LocalVipSiteExtension ()
- LocalVipSiteExtension (const std::string &defaultHostname, unsigned short int port)
- LocalVipSiteExtension (const std::string &defaultHostname)
- LocalVipSiteExtension (unsigned short int port)
- virtual ~LocalVipSiteExtension ()
- virtual void addRemoteSite (VOS::RemoteSiteExtension *rs)
- virtual void removeRemoteSite (VOS::RemoteSiteExtension *rs)
- RVSEIterator getRemoteSites ()
- virtual void siteExtensionAttachedTo (Site *st)
- Called by the Site object indicating that this extension has been attached to that site.
- Called by the Site object indicating that this extension has been attached to that site.
- VUtil::vRef< VIP::SocketMultiplexer > getSocketMultiplexer ()
- virtual void notifyNewConnection (VIP::Connection *m, bool inbound)
Static Public Attributes
- static LocalVipSiteExtension * defaultLocalVipSite
Constructor & Destructor Documentation
| VOS::LocalVipSiteExtension::LocalVipSiteExtension | ( | ) |
Default constructor.
This will attempt to autodetect your hostname. It will listen on the first available port it finds, starting from 4231 and working its way upward. This will use the VOS_HOSTNAME environment variable (in the form hostname:port) to define the hostname and port.
| VOS::LocalVipSiteExtension::LocalVipSiteExtension | ( | const std::string & | defaultHostname, | |
| unsigned short int | port | |||
| ) |
Use the supplied hostname and port.
- Parameters:
-
defaultHostname the canonical hostname for this site port the TCP port for the site to listen on
- Exceptions:
-
PortBindingError if the port is not available.
| VOS::LocalVipSiteExtension::LocalVipSiteExtension | ( | const std::string & | defaultHostname | ) |
Use the supplied hostname.
Will use the first available port, starting from 4231 and working upward.
- Parameters:
-
defaultHostname the canonical hostname for this site
| VOS::LocalVipSiteExtension::LocalVipSiteExtension | ( | unsigned short int | port | ) |
Use the supplied port.
Will autodetect hostname, or take the canonical hostname from VOS_HOSTNAME (ignoring the port!)
- Parameters:
-
port the TCP port to listen on
- Exceptions:
-
PortBindingError if the port is not available.
| virtual VOS::LocalVipSiteExtension::~LocalVipSiteExtension | ( | ) | [virtual] |
Destructor.
Member Function Documentation
| virtual void VOS::LocalVipSiteExtension::addRemoteSite | ( | VOS::RemoteSiteExtension * | rs | ) | [virtual] |
Add a remote site that we're peered with.
- Parameters:
-
rs the RemoteVipSiteExtension object representing the connection to the remote site
Implements VOS::LocalSiteExtension.
| RVSEIterator VOS::LocalVipSiteExtension::getRemoteSites | ( | ) |
- Returns:
- the remote sites we are peered with
| VUtil::vRef<VIP::SocketMultiplexer> VOS::LocalVipSiteExtension::getSocketMultiplexer | ( | ) | [inline] |
Definition at line 126 of file localvipsite.hh.
| virtual void VOS::LocalVipSiteExtension::notifyNewConnection | ( | VIP::Connection * | m, | |
| bool | inbound | |||
| ) | [virtual] |
Implements VIP::NewConnectionCallback.
| virtual void VOS::LocalVipSiteExtension::removeRemoteSite | ( | VOS::RemoteSiteExtension * | rs | ) | [virtual] |
Remove a remote site that we're peered with.
- Parameters:
-
rs the RemoteVipSiteExtension object representing the connection to the remote site
Implements VOS::LocalSiteExtension.
| virtual void VOS::LocalVipSiteExtension::siteExtensionAttachedTo | ( | Site * | st | ) | [virtual] |
Called by the Site object indicating that this extension has been attached to that site.
Reimplemented from VOS::LocalSiteExtension.
Member Data Documentation
When creating an outgoing connection, the remote site will be peered with this local site.
Definition at line 71 of file localvipsite.hh.
The documentation for this class was generated from the following file:
- /home/tetron/hack/vos/libs/vos/vos/localvipsite.hh