Sets the limiting range on requests. If the managed range is not set (empty) requests get the rmOutOfRange result. Also for when the requested range is outside the managed range.
This function is called by a derived server class to as a reply to an event. The function will return all ranges and owners in an owned range list which request are satisfied/fulfilled with the passed ranges.
Determines if the managed range is automatically determined and set when setAccessible is called. Making a call to setManaged unnecessary when set to true.
This class manages range requests made by clients identified by ID's in the ranges.
A server sets the range which is managed.
Multiple clients make requests for ranges passing a unique ID (Range::setId).
The requested ranges are reduced to actual requests for the server by excluding ranges that are available already.
A server retrieves the actual requests (getActualRequests) and translates those to multiples of the used block size.
When the blocks finished processing the server tells the range manager by calling setAccessible .
The manager updates the accessible ranges and rearrange them. This means that overlapped and each other extending ranges are merged and sorted.
At the same time the fulfilled client requests are extracted and removed from the manager.
The server notifies clients identified by Range::getId.
This function is called by a derived server class to as a reply to an event. The function will return all ranges and owners in an owned range list which request are satisfied/fulfilled with the passed ranges.
Parameters
rl
New ranges that are accessible.
rl_req
Requested and fulfilled ranges becoming accessible now.
Determines if the managed range is automatically determined and set when setAccessible is called. Making a call to setManaged unnecessary when set to true.
Sets the limiting range on requests. If the managed range is not set (empty) requests get the rmOutOfRange result. Also for when the requested range is outside the managed range.