Class DummyClientManagerFacade

  • All Implemented Interfaces:
    Service

    public class DummyClientManagerFacade
    extends ClientManagerFacade
    Manage all interactions with clients
    Author:
    jrandom
    • Constructor Detail

      • DummyClientManagerFacade

        public DummyClientManagerFacade​(RouterContext ctx)
    • Method Detail

      • isLocal

        public boolean isLocal​(Hash destHash)
        Description copied from class: ClientManagerFacade
        Determine if the destination hash specified is managed locally. This call DOES block.
        Specified by:
        isLocal in class ClientManagerFacade
        Parameters:
        destHash - Hash of Destination to be checked
      • isLocal

        public boolean isLocal​(Destination dest)
        Description copied from class: ClientManagerFacade
        Determine if the destination specified is managed locally. This call DOES block.
        Specified by:
        isLocal in class ClientManagerFacade
        Parameters:
        dest - Destination to be checked
      • reportAbuse

        public void reportAbuse​(Destination dest,
                                String reason,
                                int severity)
        Description copied from class: ClientManagerFacade
        Instruct the client (or all clients) that they are under attack. This call does not block.
        Specified by:
        reportAbuse in class ClientManagerFacade
        Parameters:
        dest - Destination under attack, or null if all destinations are affected
        reason - Why the router thinks that there is abusive behavior
        severity - How severe the abuse is, with 0 being not severe and 255 is the max
      • requestLeaseSet

        public void requestLeaseSet​(Destination dest,
                                    LeaseSet set,
                                    long timeout,
                                    Job onCreateJob,
                                    Job onFailedJob)
        Description copied from class: ClientManagerFacade
        Request that a particular client authorize the Leases contained in the LeaseSet, after which the onCreateJob is queued up. If that doesn't occur within the timeout specified, queue up the onFailedJob. This call does not block.
        Specified by:
        requestLeaseSet in class ClientManagerFacade
        Parameters:
        dest - Destination from which the LeaseSet's authorization should be requested
        set - 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 failing
        onCreateJob - Job to run after the LeaseSet is authorized
        onFailedJob - Job to run after the timeout passes without receiving authorization
      • startup

        public void startup()
        Description copied from interface: Service
        Instruct the service that it should start normal operation. This call DOES block until the service is ready.
      • stopAcceptingClients

        public void stopAcceptingClients()
      • shutdown

        public void shutdown()
        Description copied from interface: Service
        Instruct the service that the router is shutting down and that it should do whatever is necessary to go down gracefully. It should not depend on other components at this point. This call DOES block.
      • restart

        public void restart()
        Description copied from interface: Service
        Perform a soft restart.
      • messageDeliveryStatusUpdate

        public void messageDeliveryStatusUpdate​(Destination fromDest,
                                                MessageId id,
                                                long msgNonce,
                                                int status)
        Specified by:
        messageDeliveryStatusUpdate in class ClientManagerFacade
        id - the router's ID for this message
        msgNonce - the client's ID for this message
        status - see I2CP MessageStatusMessage for success/failure codes