public class ClientManagerFacadeImpl extends ClientManagerFacade implements InternalClientManager
Modifier and Type | Field and Description |
---|---|
static String |
DEFAULT_HOST |
static int |
DEFAULT_PORT |
static String |
PROP_CLIENT_HOST
note that this is different than the property the client side uses, i2cp.tcp.host
|
static String |
PROP_CLIENT_PORT
note that this is different than the property the client side uses, i2cp.tcp.port
|
PROP_CLIENT_ONLY
Constructor and Description |
---|
ClientManagerFacadeImpl(RouterContext context) |
Modifier and Type | Method and Description |
---|---|
I2CPMessageQueue |
connect()
The InternalClientManager interface.
|
SessionConfig |
getClientSessionConfig(Destination dest)
Return the client's current config, or null if not connected
|
SessionKeyManager |
getClientSessionKeyManager(Hash dest)
Return the client's current manager or null if not connected
|
boolean |
isAlive() |
boolean |
isLocal(Destination dest)
Determine if the destination specified is managed locally.
|
boolean |
isLocal(Hash destHash)
Determine if the destination specified is managed locally.
|
Set<Destination> |
listClients()
Return the list of locally connected clients
|
void |
messageDeliveryStatusUpdate(Destination fromDest,
MessageId id,
long messageNonce,
int status) |
void |
messageReceived(ClientMessage msg) |
void |
renderStatusHTML(Writer out)
Deprecated.
unused
|
void |
reportAbuse(Destination dest,
String reason,
int severity)
Instruct the client (or all clients) that they are under attack.
|
void |
requestLeaseSet(Destination dest,
LeaseSet set,
long timeout,
Job onCreateJob,
Job onFailedJob)
Request that a particular client authorize the Leases contained in the
LeaseSet, after which the onCreateJob is queued up.
|
void |
requestLeaseSet(Hash dest,
LeaseSet set)
Request that a particular client authorize the Leases contained in the
LeaseSet.
|
void |
restart()
Perform a soft restart.
|
boolean |
shouldPublishLeaseSet(Hash destinationHash)
Does the client specified want their leaseSet published?
|
void |
shutdown()
Instruct the service that the router is shutting down and that it should do
whatever is necessary to go down gracefully.
|
void |
shutdown(String msg) |
void |
startup()
Instruct the service that it should start normal operation.
|
boolean |
verifyClientLiveliness() |
public static final String PROP_CLIENT_PORT
public static final int DEFAULT_PORT
public static final String PROP_CLIENT_HOST
public static final String DEFAULT_HOST
public ClientManagerFacadeImpl(RouterContext context)
public void startup()
Service
public void shutdown()
Service
public void shutdown(String msg)
shutdown
in class ClientManagerFacade
msg
- message to send to the clientspublic void restart()
Service
public boolean isAlive()
isAlive
in class ClientManagerFacade
public boolean verifyClientLiveliness()
verifyClientLiveliness
in class ClientManagerFacade
public void requestLeaseSet(Destination dest, LeaseSet set, long timeout, Job onCreateJob, Job onFailedJob)
requestLeaseSet
in class ClientManagerFacade
dest
- Destination from which the LeaseSet's authorization should be requestedset
- LeaseSet with requested leases - this object must be updated to contain the
signed version (as well as any changed/added/removed Leases)
The LeaseSet contains Leases only; it is unsigned and does not have the destination set.timeout
- ms to wait before failingonCreateJob
- Job to run after the LeaseSet is authorizedonFailedJob
- Job to run after the timeout passes without receiving authorizationpublic void requestLeaseSet(Hash dest, LeaseSet set)
requestLeaseSet
in class ClientManagerFacade
dest
- Destination from which the LeaseSet's authorization should be requestedset
- LeaseSet with requested leases - this object must be updated to contain the
signed version (as well as any changed/added/removed Leases).
The LeaseSet contains Leases only; it is unsigned and does not have the destination set.public void reportAbuse(Destination dest, String reason, int severity)
reportAbuse
in class ClientManagerFacade
dest
- Destination under attack, or null if all destinations are affectedreason
- Why the router thinks that there is abusive behaviorseverity
- How severe the abuse is, with 0 being not severe and 255 is the maxpublic boolean isLocal(Destination dest)
isLocal
in class ClientManagerFacade
dest
- Destination to be checkedpublic boolean isLocal(Hash destHash)
isLocal
in class ClientManagerFacade
destHash
- Hash of Destination to be checkedpublic boolean shouldPublishLeaseSet(Hash destinationHash)
ClientManagerFacade
shouldPublishLeaseSet
in class ClientManagerFacade
public void messageDeliveryStatusUpdate(Destination fromDest, MessageId id, long messageNonce, int status)
messageDeliveryStatusUpdate
in class ClientManagerFacade
id
- the router's ID for this messagemessageNonce
- the client's ID for this messagestatus
- see I2CP MessageStatusMessage for success/failure codespublic void messageReceived(ClientMessage msg)
messageReceived
in class ClientManagerFacade
public SessionConfig getClientSessionConfig(Destination dest)
getClientSessionConfig
in class ClientManagerFacade
public SessionKeyManager getClientSessionKeyManager(Hash dest)
getClientSessionKeyManager
in class ClientManagerFacade
@Deprecated public void renderStatusHTML(Writer out) throws IOException
renderStatusHTML
in interface Service
renderStatusHTML
in class ClientManagerFacade
IOException
public Set<Destination> listClients()
listClients
in class ClientManagerFacade
public I2CPMessageQueue connect() throws I2PSessionException
connect
in interface InternalClientManager
I2PSessionException
- if the router isn't ready