Class FlowRuntimeScriptLocalCache

java.lang.Object
com.codingapi.flow.cache.FlowRuntimeScriptLocalCache

public class FlowRuntimeScriptLocalCache extends Object
流程运行时脚本线程级缓存。

在一次流程操作内缓存当前运行时的脚本快照(脚本key -> 脚本内容), 供脚本代理(FlowScriptRuntimeContext)优先读取,从而隔离流程设计阶段 对脚本内容的修改对已经在运行的流程造成的影响。

使用约定与 FlowOperatorLocalThreadCache 一致: 在 FlowService 各入口及延迟任务执行前调用 clear() 清理, 各 FlowXxxService 加载运行时快照后调用 set(Map) 装载。

  • Method Details

    • getInstance

      public static FlowRuntimeScriptLocalCache getInstance()
    • clear

      public void clear()
      清理当前线程的脚本快照缓存
    • set

      public void set(Map<String,String> scripts)
      装载当前运行时的脚本快照
      Parameters:
      scripts - 脚本key到脚本内容的映射,为 null 时清理缓存
    • get

      public String get(String key)
      获取运行时快照中的脚本内容
      Parameters:
      key - 脚本key
      Returns:
      快照中的脚本内容,无运行时快照或无该key时返回 null