addFunctionHook method

String addFunctionHook({
  1. required String sessionId,
  2. required HookEvent event,
  3. required String matcher,
  4. required Future<bool> callback(
    1. List, {
    2. Object? signal,
    }),
  5. required String errorMessage,
  6. int? timeout,
  7. String? id,
})

Add a function hook to the session. Returns the hook ID.

Implementation

String addFunctionHook({
  required String sessionId,
  required HookEvent event,
  required String matcher,
  required Future<bool> Function(List<dynamic>, {Object? signal}) callback,
  required String errorMessage,
  int? timeout,
  String? id,
}) {
  final hookId =
      id ??
      'function-hook-${DateTime.now().millisecondsSinceEpoch}-'
          '${(DateTime.now().microsecond / 1000).toStringAsFixed(3)}';
  final hook = FunctionHook(
    id: hookId,
    timeout: timeout ?? 5000,
    callback: callback,
    errorMessage: errorMessage,
  );
  _addHookToSession(
    sessionId: sessionId,
    event: event,
    matcher: matcher,
    hook: hook,
  );
  return hookId;
}