## Uses of Class
net.i2p.data.LeaseSet

- Packages that use LeaseSet
  Package | Description
  --- | ---
  net.i2p.client | Implements the base I2P SDK for developing applications that communicate through I2P.
  net.i2p.data.i2cp | The Invisible Internet Client Protocol (I2CP) allows applications simplified access to the I2P network without requiring them to deal with the issues involved with the Invisible Internet Network Protocol (I2NP).
  net.i2p.router | The I2P router application handles the I2P network communication.
  net.i2p.router.client |
  net.i2p.router.message |
  net.i2p.router.networkdb.kademlia |

- - ### Uses of LeaseSet in net.i2p.client

    Methods in net.i2p.client that return LeaseSet
    Modifier and Type | Method and Description
    --- | ---
    `(package private) LeaseSet` | I2PSessionImpl.`getLeaseSet()`

    Methods in net.i2p.client with parameters of type LeaseSet
    Modifier and Type | Method and Description
    --- | ---
    `void` | I2CPMessageProducer.`createLeaseSet(I2PSessionImpl session, LeaseSet leaseSet, SigningPrivateKey signingPriv, PrivateKey priv)` Create a new signed leaseSet in response to a request to do so and send it to the router
    `(package private) void` | I2PSessionImpl.`setLeaseSet(LeaseSet ls)`

  - ### Uses of LeaseSet in net.i2p.data.i2cp

    Methods in net.i2p.data.i2cp that return LeaseSet
    Modifier and Type | Method and Description
    --- | ---
    `LeaseSet` | CreateLeaseSetMessage.`getLeaseSet()`

    Methods in net.i2p.data.i2cp with parameters of type LeaseSet
    Modifier and Type | Method and Description
    --- | ---
    `void` | CreateLeaseSetMessage.`setLeaseSet(LeaseSet leaseSet)`

  - ### Uses of LeaseSet in net.i2p.router

    Methods in net.i2p.router that return LeaseSet
    Modifier and Type | Method and Description
    --- | ---
    `LeaseSet` | DummyNetworkDatabaseFacade.`lookupLeaseSetLocally(Hash key)`
    `abstract LeaseSet` | NetworkDatabaseFacade.`lookupLeaseSetLocally(Hash key)`
    `LeaseSet` | DummyNetworkDatabaseFacade.`store(Hash key, LeaseSet leaseSet)`
    `abstract LeaseSet` | NetworkDatabaseFacade.`store(Hash key, LeaseSet leaseSet)` return the leaseSet if another leaseSet already existed at that key

    Methods in net.i2p.router that return types with arguments of type LeaseSet
    Modifier and Type | Method and Description
    --- | ---
    `Set<LeaseSet>` | NetworkDatabaseFacade.`getLeases()` public for NetDbRenderer in routerconsole

    Methods in net.i2p.router with parameters of type LeaseSet
    Modifier and Type | Method and Description
    --- | ---
    `void` | DummyNetworkDatabaseFacade.`publish(LeaseSet localLeaseSet)`
    `abstract void` | NetworkDatabaseFacade.`publish(LeaseSet localLeaseSet)`
    `abstract void` | ClientManagerFacade.`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` | DummyClientManagerFacade.`requestLeaseSet(Destination dest, LeaseSet set, long timeout, Job onCreateJob, Job onFailedJob)`
    `abstract void` | ClientManagerFacade.`requestLeaseSet(Hash dest, LeaseSet set)`
    `void` | DummyClientManagerFacade.`requestLeaseSet(Hash dest, LeaseSet set)`
    `LeaseSet` | DummyNetworkDatabaseFacade.`store(Hash key, LeaseSet leaseSet)`
    `abstract LeaseSet` | NetworkDatabaseFacade.`store(Hash key, LeaseSet leaseSet)` return the leaseSet if another leaseSet already existed at that key
    `void` | DummyNetworkDatabaseFacade.`unpublish(LeaseSet localLeaseSet)`
    `abstract void` | NetworkDatabaseFacade.`unpublish(LeaseSet localLeaseSet)`

  - ### Uses of LeaseSet in net.i2p.router.client

    Methods in net.i2p.router.client that return LeaseSet
    Modifier and Type | Method and Description
    --- | ---
    `LeaseSet` | LeaseRequestState.`getGranted()` created lease set from client
    `LeaseSet` | ClientConnectionRunner.`getLeaseSet()` currently allocated leaseSet
    `LeaseSet` | LeaseRequestState.`getRequested()` lease set that is being requested

    Methods in net.i2p.router.client with parameters of type LeaseSet
    Modifier and Type | Method and Description
    --- | ---
    `(package private) void` | ClientConnectionRunner.`leaseSetCreated(LeaseSet ls)` called after a new leaseSet is granted by the client, the NetworkDb has been updated.
    `void` | ClientManagerFacadeImpl.`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` | ClientManager.`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` | ClientManagerFacadeImpl.`requestLeaseSet(Hash dest, LeaseSet set)`
    `void` | ClientManager.`requestLeaseSet(Hash dest, LeaseSet ls)`
    `(package private) void` | ClientConnectionRunner.`requestLeaseSet(LeaseSet set, long expirationTime, Job onCreateJob, Job onFailedJob)` Request that a particular client authorize the Leases contained in the LeaseSet, after which the onCreateJob is queued up.
    `void` | LeaseRequestState.`setGranted(LeaseSet ls)`
    `(package private) void` | ClientConnectionRunner.`setLeaseSet(LeaseSet ls)`
    `void` | LeaseRequestState.`setRequested(LeaseSet ls)`

    Constructors in net.i2p.router.client with parameters of type LeaseSet
    Constructor and Description
    `LeaseRequestState(Job onGranted, Job onFailed, long expiration, LeaseSet requested)`
    `RequestLeaseSetJob(RouterContext ctx, ClientConnectionRunner runner, LeaseSet set, long expiration, Job onCreate, Job onFail, LeaseRequestState state)`

  - ### Uses of LeaseSet in net.i2p.router.message

    Methods in net.i2p.router.message with parameters of type LeaseSet
    Modifier and Type | Method and Description
    --- | ---
    `(package private) static PayloadGarlicConfig` | OutboundClientMessageJobHelper.`buildLeaseSetClove(RouterContext ctx, long expiration, LeaseSet replyLeaseSet)` Build a clove that stores the leaseSet locally
    `(package private) static GarlicMessage` | OutboundClientMessageJobHelper.`createGarlicMessage(RouterContext ctx, long replyToken, long expiration, PublicKey recipientPK, PayloadGarlicConfig dataClove, Hash from, Destination dest, TunnelInfo replyTunnel, SessionKey wrappedKey, Set<SessionTag> wrappedTags, boolean requireAck, LeaseSet bundledReplyLeaseSet)` Allow the app to specify the data clove directly, which enables OutboundClientMessage to resend the same payload (including expiration and unique id) in different garlics (down different tunnels) This is called from OCMOSJ
    `(package private) static GarlicMessage` | OutboundClientMessageJobHelper.`createGarlicMessage(RouterContext ctx, long replyToken, long expiration, PublicKey recipientPK, Payload data, Hash from, Destination dest, TunnelInfo replyTunnel, SessionKey wrappedKey, Set<SessionTag> wrappedTags, boolean requireAck, LeaseSet bundledReplyLeaseSet)` Build a garlic message that will be delivered to the router on which the target is located.

  - ### Uses of LeaseSet in net.i2p.router.networkdb.kademlia

    Methods in net.i2p.router.networkdb.kademlia that return LeaseSet
    Modifier and Type | Method and Description
    --- | ---
    `LeaseSet` | KademliaNetworkDatabaseFacade.`lookupLeaseSetLocally(Hash key)`
    `LeaseSet` | KademliaNetworkDatabaseFacade.`store(Hash key, LeaseSet leaseSet)` Store the leaseSet

    Methods in net.i2p.router.networkdb.kademlia that return types with arguments of type LeaseSet
    Modifier and Type | Method and Description
    --- | ---
    `Set<LeaseSet>` | KademliaNetworkDatabaseFacade.`getLeases()` public for NetDbRenderer in routerconsole

    Methods in net.i2p.router.networkdb.kademlia with parameters of type LeaseSet
    Modifier and Type | Method and Description
    --- | ---
    `void` | KademliaNetworkDatabaseFacade.`publish(LeaseSet localLeaseSet)`
    `LeaseSet` | KademliaNetworkDatabaseFacade.`store(Hash key, LeaseSet leaseSet)` Store the leaseSet
    `void` | KademliaNetworkDatabaseFacade.`unpublish(LeaseSet localLeaseSet)`
    `(package private) String` | KademliaNetworkDatabaseFacade.`validate(Hash key, LeaseSet leaseSet)` Determine whether this leaseSet will be accepted as valid and current given what we know now.