java.lang.Object
net.i2p.router.JobImpl
net.i2p.router.client.ClientConnectionRunner.MessageDeliveryStatusUpdate
- All Implemented Interfaces:
Job
- Enclosing class:
ClientConnectionRunner
Sends a message status update to the client.
Field Summary
FieldsModifier and TypeFieldDescriptionprivate longWhen the update was last queued.private final MessageIdThe message being updated.private final longNonce the client matches the update to.private intTimes the update has been requeued.private final SessionIdThe session the message belongs to.private final intThe status code to report.Constructor Summary
ConstructorsConstructorDescriptionMessageDeliveryStatusUpdate(SessionId sid, MessageId id, long messageNonce, int status) Do not use for status = STATUS_SEND_ACCEPTED; use ackSendMessage() for that.Method Summary
All MethodsMethods inherited from class JobImpl
dropped, getContext, getJobId, getMadeReadyOn, getTiming, madeReady, requeue, toStringModifier and TypeMethodDescriptionvoiddropped()Default implementation does nothing.final RouterContextThe router context that this job belongs to.longgetJobId()The unique job ID for this job.longThe timestamp when this job was last made ready for execution.The timing object for this job.voidmadeReady(long now) For JobQueue only, not for external use.protected voidrequeue(long delayMs) Requeue this job to run after the specified delay.toString()
Field Details
_sessId
The session the message belongs to._messageId
The message being updated._messageNonce
private final long _messageNonceNonce the client matches the update to._status
private final int _statusThe status code to report._lastTried
private long _lastTriedWhen the update was last queued._requeueCount
private int _requeueCountTimes the update has been requeued.
Constructor Details
MessageDeliveryStatusUpdate
Do not use for status = STATUS_SEND_ACCEPTED; use ackSendMessage() for that.- Parameters:
sid- the session the message belongs toid- the router's ID for this messagemessageNonce- the client's ID for this messagestatus- see I2CP MessageStatusMessage for success/failure codes
Method Details
getName
runJob
public void runJob()Note that this sends the Guaranteed status codes, even though we only support best effort.