public abstract class ClientManagerFacade extends Object implements Service
| Modifier and Type | Field and Description |
|---|---|
static String |
PROP_CLIENT_ONLY |
| Constructor and Description |
|---|
ClientManagerFacade() |
| Modifier and Type | Method and Description |
|---|---|
abstract FloodfillNetworkDatabaseFacade |
getClientFloodfillNetworkDatabaseFacade(Hash destHash)
get the FloodfillNetworkDatabaseFacade associated with a particular client destination.
|
abstract SessionConfig |
getClientSessionConfig(Destination dest)
Return the client's current config, or null if not connected
|
abstract SessionKeyManager |
getClientSessionKeyManager(Hash dest) |
abstract Set<Hash> |
getPrimaryHashes()
get a set of all primary hashes
|
boolean |
isAlive() |
abstract boolean |
isLocal(Destination dest)
Determine if the destination specified is managed locally.
|
abstract boolean |
isLocal(Hash destHash)
Determine if the destination hash specified is managed locally.
|
Set<Destination> |
listClients()
Return the list of locally connected clients
|
abstract void |
messageDeliveryStatusUpdate(Destination fromDest,
MessageId id,
long messageNonce,
int status) |
abstract void |
messageReceived(ClientMessage msg) |
void |
registerMetaDest(Destination dest)
Declare that we're going to publish a meta LS for this destination.
|
void |
renderStatusHTML(Writer out) |
abstract void |
reportAbuse(Destination dest,
String reason,
int severity)
Instruct the client (or all clients) that they are under attack.
|
abstract 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.
|
abstract void |
requestLeaseSet(Hash dest,
LeaseSet set) |
boolean |
shouldPublishLeaseSet(Hash destinationHash)
Does the client specified want their leaseSet published?
|
abstract void |
shutdown(String msg) |
void |
unregisterMetaDest(Destination dest)
Declare that we're no longer going to publish a meta LS for this destination.
|
boolean |
verifyClientLiveliness() |
public static final String PROP_CLIENT_ONLY
public abstract FloodfillNetworkDatabaseFacade getClientFloodfillNetworkDatabaseFacade(Hash destHash)
destHash - destination hash associated with the client who's subDb we're looking forpublic abstract SessionConfig getClientSessionConfig(Destination dest)
public abstract SessionKeyManager getClientSessionKeyManager(Hash dest)
public abstract Set<Hash> getPrimaryHashes()
public boolean isAlive()
public abstract boolean isLocal(Destination dest)
dest - Destination to be checkedpublic abstract boolean isLocal(Hash destHash)
destHash - Hash of Destination to be checkedpublic Set<Destination> listClients()
public abstract void messageDeliveryStatusUpdate(Destination fromDest, MessageId id, long messageNonce, int status)
id - the router's ID for this messagemessageNonce - the client's ID for this messagestatus - see I2CP MessageStatusMessage for success/failure codespublic abstract void messageReceived(ClientMessage msg)
public void registerMetaDest(Destination dest) throws I2PSessionException
I2PSessionException - on duplicate destpublic void renderStatusHTML(Writer out) throws IOException
renderStatusHTML in interface ServiceIOExceptionpublic abstract void reportAbuse(Destination dest, String reason, int severity)
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 abstract void requestLeaseSet(Destination dest, LeaseSet set, long timeout, Job onCreateJob, Job onFailedJob)
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)timeout - ms to wait before failingonCreateJob - Job to run after the LeaseSet is authorizedonFailedJob - Job to run after the timeout passes without receiving authorizationpublic boolean shouldPublishLeaseSet(Hash destinationHash)
public abstract void shutdown(String msg)
public void unregisterMetaDest(Destination dest)
public boolean verifyClientLiveliness()