holdZonesFor

fun holdZonesFor(holder: ZoneHolderIfc, zones: List<Zone>, duration: Double, action: ZoneHoldActionIfc, onOverlap: ZoneOverlap = ZoneOverlap.RAISE): ZoneRequest(source)

Takes a set of zones together for a stated duration, and gives them back without being asked.

requestZones for the all-or-nothing rule, holdZoneFor for why the duration runs from the instant the hold begins rather than from the request.

Return

the request, whose ZoneRequest.isGranted says whether the hold began at once

Parameters

holder

who is taking the space

zones

the zones to take, all on this guide path, distinct, at least one

duration

how long to hold them once the hold begins, strictly positive

action

told when the hold begins and when the clock gives it back