Constructs a new request
Returns the elapsed time of this request thus far
Gets the message ID from the original request that was made
Gets the original request made
Gets the token from the original request that was made
Checks if this request has expired according to the given timeout threshold
Starts the timer
The future which we can fill up with the response and then wake up the receiver
Represents a request that has been made. This is normally stored inside the CoapClient and used to find matching responses that come through in the messaging layer.
It is composed of the token and the future which was created. Therefore when the messaging layer receives a new CoAP packet it can then try match it to one of these requests, in the event it finds a match it can retrieve the future, place the received CoapPacket into it and then wake up anyone doing a blocking get() on it.