net.i2p.router.networkdb.kademlia

## Class SingleSearchJob

- java.lang.Object
- - net.i2p.router.JobImpl
  - - net.i2p.router.networkdb.kademlia.FloodSearchJob
    - - net.i2p.router.networkdb.kademlia.FloodOnlySearchJob
      - - net.i2p.router.networkdb.kademlia.SingleSearchJob

All Implemented Interfaces:
  Job

     class SingleSearchJob
    extends FloodOnlySearchJob

Ask a single peer for a single key. This isn't really a flood-only search job at all, but we extend FloodOnlySearchJob so we can use the same selectors, etc.

### Field Summary

Fields
`(package private) OutNetMessage` `_onm`
`(package private) Hash` `_to`

### Fields inherited from class net.i2p.router.networkdb.kademlia.FloodOnlySearchJob

`_onReply, _onTimeout, _replySelector`

### Fields inherited from class net.i2p.router.networkdb.kademlia.FloodSearchJob

`_expiration, _facade, _isLease, _key, _log, _lookupsRemaining, _onFailed, _onFind, _origExpiration, _timeoutMs`

### Constructor Summary

Constructors
Constructor and Description
`SingleSearchJob(RouterContext ctx, Hash key, Hash to)`

### Method Summary

Methods
`(package private) void` `failed()`
`String` `getName()` Descriptive name of the task
`void` `runJob()` Actually perform the task.
`boolean` `shouldProcessDSRM()`
`(package private) void` `success()`

### Methods inherited from class net.i2p.router.networkdb.kademlia.FloodOnlySearchJob

`decrementRemaining, getCreated`

### Methods inherited from class net.i2p.router.networkdb.kademlia.FloodSearchJob

`addDeferred, decrementRemaining, getExpiration, getKey, getLookupsRemaining`

### Methods inherited from class net.i2p.router.JobImpl

`dropped, getAddedBy, getContext, getJobId, getMadeReadyOn, getTiming, madeReady, requeue, toString`

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

### Field Detail

#### _to

    Hash _to

#### _onm

    OutNetMessage _onm

### Constructor Detail

#### SingleSearchJob

    public SingleSearchJob(RouterContext ctx,
                   Hash key,
                   Hash to)

### Method Detail

#### getName

    public String getName()

Description copied from interface: `Job`
Descriptive name of the task

Specified by:
  `getName` in interface `Job`
Overrides:
  `getName` in class `FloodOnlySearchJob`

#### shouldProcessDSRM

    public boolean shouldProcessDSRM()

Overrides:
  `shouldProcessDSRM` in class `FloodOnlySearchJob`

#### runJob

    public void runJob()

Description copied from interface: `Job`
Actually perform the task. This call blocks until the Job is complete.

Specified by:
  `runJob` in interface `Job`
Overrides:
  `runJob` in class `FloodOnlySearchJob`

#### failed

    void failed()

Overrides:
  `failed` in class `FloodOnlySearchJob`

#### success

    void success()

Overrides:
  `success` in class `FloodOnlySearchJob`