Class HandleGarlicMessageJob

java.lang.Object
net.i2p.router.JobImpl
net.i2p.router.message.HandleGarlicMessageJob
All Implemented Interfaces:
Job, GarlicMessageReceiver.CloveReceiver

public class HandleGarlicMessageJob extends JobImpl implements GarlicMessageReceiver.CloveReceiver
Unencrypt a garlic message and handle each of the cloves - locally destined messages are tossed into the inbound network message pool so they're handled as if they arrived locally. Other instructions are not yet implemented (but need to be. soon) This is the handler for garlic message not received down a tunnel, which is the case for floodfills receiving netdb messages. It is not the handler for garlic messages received down a tunnel, as InNetMessagePool short circuits tunnel messages, and those garlic messages are handled in InboundMessageDistributor. Public for JobQueue as these jobs may be dropped.
  • Constructor Details

  • Method Details

    • getName

      public String getName()
      Description copied from interface: Job
      Descriptive name of the task
      Specified by:
      getName in interface Job
    • 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
    • handleClove

      public void handleClove(DeliveryInstructions instructions, I2NPMessage data)
      Specified by:
      handleClove in interface GarlicMessageReceiver.CloveReceiver
    • dropped

      public void dropped()
      Description copied from interface: Job
      the router is extremely overloaded, so this job has been dropped. if for some reason the job *must* do some cleanup / requeueing of other tasks, it should do so here.
      Specified by:
      dropped in interface Job
      Overrides:
      dropped in class JobImpl