#include <coherence/net/AddressProvider.hpp>
Inherits Object.
Inherited by ConfigurableAddressProvider [virtual], and SingleAddressProvider [virtual].
Simple implementations could be backed by a static list; more complex ones could use dynamic discovery protocols.
Public Types | |
| typedef spec::Handle | Handle | 
| AddressProvider Handle definition.  | |
| typedef spec::View | View | 
| AddressProvider View definition.  | |
| typedef spec::Holder | Holder | 
| AddressProvider Holder definition.  | |
Public Member Functions | |
| virtual  InetSocketAddress::View  | getNextAddress ()=0 | 
| Obtain a next available address to use.   | |
| virtual void | accept ()=0 | 
| This method should be called by the client immediately after it determines that it can successfully use an address returned by the getNextAddress method.  | |
| virtual void | reject (Exception::Holder oheCause)=0 | 
| This method should be called by the client immediately after it determines that an attempt to use an address returned by the getNextAddress method has failed.   | |
| virtual InetSocketAddress::View getNextAddress | ( | ) |  [pure virtual] | 
        
Obtain a next available address to use.
If the caller can successfully use the returned address (e.g. a connection was established), it should call the AddressProvider's accept()
Implemented in ConfigurableAddressProvider, and SingleAddressProvider.
| virtual void reject | ( | Exception::Holder | oheCause | ) |  [pure virtual] | 
        
This method should be called by the client immediately after it determines that an attempt to use an address returned by the getNextAddress method has failed.
| oheCause | (optional) an exception that carries the reason why the the caller rejected the previously returned address | 
Implemented in ConfigurableAddressProvider, and SingleAddressProvider.