Package net.i2p.router.message
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.
-
Field Summary
-
Constructor Summary
Constructors Constructor Description HandleGarlicMessageJob(RouterContext context, GarlicMessage msg, RouterIdentity from, Hash fromHash)
-
Method Summary
Modifier and Type Method Description void
dropped()
the router is extremely overloaded, so this job has been dropped.String
getName()
Descriptive name of the taskvoid
handleClove(DeliveryInstructions instructions, I2NPMessage data)
void
runJob()
Actually perform the task.Methods inherited from class net.i2p.router.JobImpl
getAddedBy, getContext, getJobId, getMadeReadyOn, getTiming, madeReady, requeue, toString
-
Constructor Details
-
HandleGarlicMessageJob
public HandleGarlicMessageJob(RouterContext context, GarlicMessage msg, RouterIdentity from, Hash fromHash)- Parameters:
from
- ignoredfromHash
- ignored
-
-
Method Details
-
getName
Description copied from interface:Job
Descriptive name of the task -
runJob
public void runJob()Description copied from interface:Job
Actually perform the task. This call blocks until the Job is complete. -
handleClove
- Specified by:
handleClove
in interfaceGarlicMessageReceiver.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.
-