mirror of
https://github.com/deavmi/doap
synced 2024-07-04 15:10:11 +02:00
CoapRequest
- Removed `getAndReset()`, replaced it with `hasTimedOut(Duration)` CoapClient - The `watch()` now uses `CoapRequest`'s new `hasTimedOut(Duration)` method
This commit is contained in:
parent
31b5d13943
commit
ed97a2a3b4
|
@ -253,7 +253,7 @@ public class CoapClient
|
||||||
requestsLock.lock();
|
requestsLock.lock();
|
||||||
foreach(CoapRequest curReq; outgoingRequests)
|
foreach(CoapRequest curReq; outgoingRequests)
|
||||||
{
|
{
|
||||||
if(curReq.getAndReset() >= retransmitTimeout)
|
if(curReq.hasTimedOut(retransmitTimeout))
|
||||||
{
|
{
|
||||||
// TODO: Retransmit
|
// TODO: Retransmit
|
||||||
}
|
}
|
||||||
|
|
|
@ -73,17 +73,28 @@ package class CoapRequest
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Gets the current elapsed time and
|
* Checks if this request has expired
|
||||||
* then resets it
|
* according to the given timeout
|
||||||
|
* threshold
|
||||||
*
|
*
|
||||||
* Returns: the elapsed time
|
* If timed out then the timer
|
||||||
|
* restarts.
|
||||||
|
*
|
||||||
|
* Returns: `true` if timed out,
|
||||||
|
* `false` if not
|
||||||
*/
|
*/
|
||||||
package Duration getAndReset()
|
package bool hasTimedOut(Duration timeoutThreshold)
|
||||||
{
|
{
|
||||||
// Get the value and restart timer
|
// Check if the threshold has been reached
|
||||||
Duration elapsed = timer.peek();
|
if(timer.peek() >= timeoutThreshold)
|
||||||
timer.reset();
|
{
|
||||||
return elapsed;
|
timer.reset();
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
return false;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue
Block a user