def METHOD_NAME(unused1, unused2, msg_handle, opaque_handle):
    del unused1, unused2  # unused arguments
    watcher = ffi.from_handle(opaque_handle)
    try:
        watcher.callback(
            watcher.flux_handle,
            watcher,
            Message(handle=msg_handle),
            watcher.args,
        )
    # pylint: disable=broad-except
    except Exception as exc:
        type(watcher.flux_handle).set_exception(exc)
        watcher.flux_handle.reactor_stop_error()