存储API

存储插件是一个node.js模块,它在其module.exports上暴露以下函数。

功能 描述
Storage.init(settings) 初始化存储系统
Storage.getFlows() 获取流程配置
Storage.saveFlows(flows) 保存流程配置
Storage.getCredentials() 获取流程凭证
Storage.saveCredentials(credentials) 保存流程凭证
Storage.getSettings() 获取用户设置
Storage.saveSettings(settings) 保存用户设置
Storage.getSessions() 获取用户会话
Storage.saveSessions(sessions) 保存用户会话
Storage.getLibraryEntry(type,name) 获取特定类型的库条目
Storage.saveLibraryEntry(type,name,meta,body) 保存特定类型的库条目

Storage.init(settings)

初始化存储系统。

参数 描述
settings 运行时设置

返回一个Promise,当存储系统初始化完成时解析。

Storage.getFlows()

返回一个承诺,该承诺会在运行时流程配置就绪时解析。

Storage.saveFlows(flows)

参数 描述
flows 流程配置对象,可序列化为JSON格式。

返回一个在流程配置保存后解析的Promise。

Storage.getCredentials()

返回一个承诺,该承诺在运行时流程凭证解析时兑现。

Storage.saveCredentials(凭证)

参数 描述
credentials 凭证对象,可序列化为JSON格式。

返回一个Promise,当流程凭证保存完成时该Promise会解析。

Storage.getSettings()

返回一个解析为用户设置的Promise。

Storage.saveSettings(设置参数)

参数 描述
settings 设置对象,可序列化为JSON格式。

返回一个在设置保存后解析的Promise。

Storage.getSessions()

返回一个解析为会话对象的Promise。

Storage.saveSessions(会话)

参数 描述
sessions 会话对象,可序列化为JSON格式。

返回一个在会话保存完成后解析的Promise。

库函数

注册为库类型的节点允许用户在本地库中保存和检索内容。存储模块的以下功能用于访问这些内容。

条目可能包含与之关联的元数据,例如,function条目包含的元数据标识了该函数提供多少个输出。

Storage.getLibraryEntry(类型,名称)

参数 描述
type the type of library entry, eg flows, functions, templates
name 要返回的条目路径名

返回一个解析为结果的Promise。

如果name表示单个条目,则结果为该条目的内容。 例如,某个函数的代码。

如果name表示一个逻辑目录,结果将是一个目录列表数组。 数组中的每个元素要么是一个字符串(表示可浏览的子目录),要么是一个带有fn属性的对象,该属性提供条目的文件名, 以及与该条目关联的任何其他元数据。

[ 'directory1',
  'directory2',
  { fn: 'File-1.js', outputs: 3 },
  { fn: 'File-2.js', outputs: 1 },
  { fn: 'File-3.js', outputs: 2 }
]

Storage.saveLibraryEntry(类型,名称,元数据,主体)

参数 描述
type the type of library entry, eg flows, functions, templates
name 条目的路径名称
meta 一个包含要随条目保存的额外元数据的对象
body 条目的正文内容

返回一个在条目保存完成后解析的Promise。

已弃用的库函数

在0.10.7版本之前,以下函数也被存储模块使用。

该接口的新实现不应实现这些函数。

运行时将使用它们以保持向后兼容性(如果存在的话),否则将使用getLibraryEntry/saveLibraryEntry函数,并将其type参数设置为'flows'

Storage.getAllFlows()

返回一个Promise对象,该对象解析后包含库中所有流程的完整列表。

Storage.getFlow(名称)

返回一个解析为流程内容的Promise。

Storage.saveFlow(名称,流程)

返回一个在流程保存到库时解析的Promise。