memorize_cache#
[CN]
该 Script Filter 的功能是根据 key 随机生成一个 1 ~ 1000 之间的 value. 这个 value 的值 将会被缓存 5 秒. 5 秒内查询同一个 key 的结果将会是一样的. 该例子用来展示如何使用 time to live 缓存.
在 Alfred Workflow 的 Canvas 界面中 Script Filter 的设置如下:
Keyword: afwf-example-memorize-cache, Argument Required
Language: /bin/bash
Script: python main.py ‘memorize_cache {query}’
- class afwf_example.handlers.memorize_cache.Handler(id)[source]#
- main(key: str) ScriptFilter[source]#
[CN]
用来处理 Script Filter 的具体业务逻辑的主方法. 是一个抽象方法. 你需要 override 这个方法 并给予具体的实现.
该方法可以接收任何自定义的参数, 并必须返回一个
ScriptFilter对象, 里面包含了Alfred 对话框里的 Drop Down Menu 中的Item对象.在设计上, 这个方法应该着眼于核心业务逻辑, 并且可以被单元测试充分覆盖. 在单元测试中, 你可以调用这个方法传入各种可能得参数组合, 并返回一个
ScriptFilter, 然后检查里面的 items 是否符合预期.