예제 #1
0
def my_callback_fn(extra_callback_context, future: Future):
    """
    Will be invoked on every process completion
    """
    print("[i] Process running ?:", future.running())
    print("[i] Process completed ?:", future.done())
    print("[+] Result: ", future.result())
    # future.result() returns a dictionary
    print("[+] Context: ", extra_callback_context)
def intercept_result(context, future: Future):
    """
    Will be invoked on every process completion
    """
    data = None
    if future.done():
        fname = context.get("read_result_from", None)
        with open(fname) as f:
            data = f.read()
        # 1. get current result object
        res = future.result()  # this returns a dictionary
        # 2. update the report variable,
        # you may update only these: report,error,status
        res["report"] = data
        if context.get("force_success", False):
            res["status"] = "success"
        # 3. set new result
        future._result = res
def my_callback_fn(extra_callback_context, future: Future):
    """
    Will be invoked on every process completion
    """
    print("Process completed ?:", future.done())
    print("Result: ", future.result())