插件预处理器扩展点

描述

这个扩展点缩写为p3。

它的作用是在加载完插件之后,率先对插件数据进行一轮处理。

插件需要通过register返回p3字段,这个字段要求的数据类型是dict,格式是{plugin_name:{pet:func}}。

上述格式 pet 就是各种扩展点缩写,比如:bep、tep、tcp,不过p3除外。

另外,需要注意 func ,它接收一个参数,类型随着pet的不同而不同,不是list就是dict,要求返回类型与接收类型一致。

Flask-PluginKit通过 _p3_handler() 加载p3,这个方法会检测p3规则及其内容。

示例

  • 注册p3

def update_tcp(param):
    # your code: operate `param` and the return type must be consistent.
    print(type(param), param)
    return param

def register():
    # p3 format: {"Target plugin_name": {"pet": "processing_function"}, }
    return dict(p3=dict(a_plugin_name=dict(tcp=update_tcp)))