#include <transport_inet.h>
Inheritance diagram for MPS::InetTransport:
Static Public Methods | |
void | initialise (string const &hostName, int portNumber) |
ref<FileDescriptorManager> const& | getFdMgr () |
Protected Methods | |
virtual ref<Connection> | connectTo (Address const &connectionSpec) |
virtual string | registerServer (Server *server, Address const &spec) |
virtual string | deregisterServer (Server *server, Address const &spec) |
ref<FileDescriptor> | socketFor (Address const &connectionSpec) |
Private Types | |
typedef map< string, ref<InetDemux> > | demuxMap_t |
Private Methods | |
InetTransport (string const &hostName, int portNumber) | |
ref<InetDemux> | registerServerSocket (ref< ServerSocketDescriptor > const &serverSock) |
Private Attributes | |
ref<FileDescriptorManager> | fdMgr |
demuxMap_t | clientMap |
demuxMap_t | serverMap |
ref<InetDemux> | defaultDemux |
int | nextOid |
Static Private Attributes | |
InetTransport* | instance |
Manages all server and client sockets for this process. Dispatches incoming work to the appropriate objects.
Definition at line 49 of file transport_inet.h.
|
Map of inet addr -> demux.
Definition at line 60 of file transport_inet.h. |
|
Referenced by initialise(). |
|
Returns a message source/sink that can be used for communication with the object at the address described by the connectionSpec. The connectionSpec is the broken-down resolved name of the remote object, and must match the address format that this transport expects.
Reimplemented from MPS::Transport. |
|
Attempt to deregister a server interface.
Reimplemented from MPS::Transport. |
|
Once you have access to the FileDescriptorManager, you can call the mainloop(), processFdSet() or poll() methods on it to service requests managed by this Transport.
Definition at line 105 of file transport_inet.h. Referenced by main(). |
|
Creates the single per-application instance of InetTransport, and registers it using Transport::registerTransport().
Definition at line 93 of file transport_inet.h. Referenced by main(). |
|
Attempt to register a server interface for access using this transport.
Reimplemented from MPS::Transport. |
|
|
|
|
|
Find a client demux for a given ipaddr:port.
Definition at line 66 of file transport_inet.h. |
|
Demultiplexor for the server socket.
Definition at line 68 of file transport_inet.h. |
|
All FileDescriptors we are responsible for.
Definition at line 64 of file transport_inet.h. |
|
The single, per-application instance of InetTransport.
Definition at line 51 of file transport_inet.h. |
|
Next OID available for registration here.
Definition at line 69 of file transport_inet.h. |
|
Find a server demux for a given ipaddr:port.
Definition at line 67 of file transport_inet.h. |