package tech.easyflow.common.constant;

public interface CacheKey {

    String DOC_NODE_CONTENT_KEY = "docNode:content:";
    String CHAIN_SUSPEND_KEY = "chain:suspend:";

    String CHAIN_STATUS_CACHE_KEY = "chain:status:";

    String CHAIN_CACHE_KEY = "chainState:";
    /**
     * 工作流实例状态 CAS key 前缀；同实例状态使用 hash tag 保持同槽。
     */
    String CHAIN_STATE_CAS_KEY = "workflowState:";
    String CHAIN_DEFINITION_SNAPSHOT_CACHE_KEY = "chainDefinitionSnapshot:";
    String CHAIN_LOCK_KEY = "chainLock:";
    String NODE_CACHE_KEY = "nodeState:";
    String LOOP_RESULT_CACHE_KEY = "loopResult:";
    String TRIGGER_DATA_KEY = "workflowTrigger:data:";
    String TRIGGER_CLAIM_KEY = "workflowTrigger:claim:";
    String TRIGGER_DEAD_LETTER_KEY = "workflowTrigger:dead:";
    String TRIGGER_PENDING_KEY = "workflowTrigger:pending";
    String WORKFLOW_DEFINITION_VERSION_KEY = "workflowDefinition:version:";

    String OAUTH_STATE_KEY = "oauth:state:";
}
