timeout function

PollStrategy timeout(
  1. int milliseconds
)

Implementation

PollStrategy timeout(int milliseconds) {
  final end = DateTime.now().millisecondsSinceEpoch + milliseconds;
  return (
    Principal canisterId,
    RequestId requestId,
    RequestStatusResponseStatus status,
  ) async {
    if (DateTime.now().millisecondsSinceEpoch > end) {
      throw TimeoutException(
        'Request timed out after $milliseconds milliseconds:\n'
        '  Request ID: ${requestIdToHex(requestId)}\n'
        '  Request status: $status\n',
        Duration(milliseconds: milliseconds),
      );
    }
  };
}