重置配置

只有在向导阶段能够重置配置,并且可以通过调用 PUBLIC.RESET_CONFIGURATION() 过程来完成。此过程将所有先决条件重置为未完成,删除以前保存的配置,并将连接器状态设置为 INSTALLED。如果需要重新配置连接器(即再次执行 先决条件连接配置连接器配置 步骤),可以使用此过程。只有当您未完成 完成配置 步骤时,才能重新配置连接器。可以使用 SQL 或 ResetConfigurationHandlerBuilder 自定义连接器重新配置。

只有分配了 ADMIN 应用程序角色的用户才能调用 PUBLIC.RESET_CONFIGURATION() 过程。

重置配置由以下可配置阶段组成,默认情况下不会工作:

  1. 状态验证

  2. 状态验证

  3. 内部回调

  4. SDK 回调

  5. 状态更新

要求

配置重置需要在原生应用程序安装期间执行以下 SQL 文件:

  • core.sql

  • configuration/app_config.sql

  • configuration/prerequisites.sql

  • configuration/connector_configuration.sql

  • configuration/connection_configuration.sql

  • configuration/reset_configuration.sql

状态验证

要重置配置,连接器需要处于 CONFIGURING 状态。配置状态需要等于以下值之一:INSTALLEDPREREQUISITES_DONECONFIGUREDCONNECTED。有关状态转换的完整示意图,请参阅 连接器流

不能通过使用 ResetConfigurationHandlerBuilder 或覆盖存储过程来覆盖验证。但是,也可以实现一个自定义处理程序,它不会进行这种验证。

状态验证

状态验证阶段是可自定义的,默认情况下,将执行 PUBLIC.RESET_CONFIGURATION_VALIDATE() 过程,返回 'response_code': 'OK'。可以通过使用 SQL 替换过程或实施 ResetConfigurationValidator 接口来自定义此过程。

内部回调

内部回调阶段是可自定义的,默认情况下,将执行 PUBLIC.RESET_CONFIGURATION_INTERNAL() 过程,返回 'response_code': 'OK'。此过程支持执行重置配置时所需的自定义逻辑。例如,删除自定义配置。可以通过使用 SQL 替换过程或实施 ResetConfigurationCallback 接口来自定义此过程。

SDK 回调

SDK 回调用于更新 SDK 控制的组件。此步骤由以下流程组成,这些流程作为单个事务执行:

  1. 将所有先决条件设置为未完成

  2. 删除连接器配置

  3. 删除连接配置

将所有先决条件设置为未完成

在此步骤中,对于内部 PREREQUISITES 表中的所有记录,IS_COMPLETED 列设置为 false。

删除连接器配置

在此步骤中,将从内部 APP_CONFIG 表中删除 connector_configuration

删除连接器配置

在此步骤中,将从内部 APP_CONFIG 表中删除 connection_configuration

不能通过使用 ResetConfigurationHandlerBuilder 或覆盖存储过程来覆盖 SDK 回调。可以实施不会进行此回调的自定义处理程序。

备注

PUBLIC.CONNECTOR_CONFIGURATION 视图从内部 APP_CONFIG 表返回当前配置。PUBLIC.PREREQUISITES 视图从内部 PREREQUISITES 表返回先决条件。ADMINVIEWER 应用程序角色均可使用这两种视图。

状态更新

完成后,此步骤将连接器的内部状态设置为:

{
    "status": "CONFIGURING",
    "configurationStatus": "INSTALLED"
}
Copy

响应

成功响应

如果过程成功完成,则返回 OK 响应代码,如下所示:

{
  "response_code": "OK"
}
Copy

错误响应

出错时,返回以下响应:

{
  "response_code": "<ERROR_CODE>",
  "message": "<error message>"
}
Copy

可能的错误代码包括:

  • INVALID_CONNECTOR_STATUS – 连接器状态无效。预期状态:[CONFIGURING]

  • INVALID_CONNECTOR_CONFIGURATION_STATUS – 连接器状态无效。预期状态:[INSTALLED, PREREQUISITES_DONE, CONFIGURED, CONNECTED]

  • INTERNAL_ERROR – 内部出现问题,消息应具有描述性。

  • PROCEDURE_NOT_FOUND – 调用的过程不存在。

  • UNKNOWN_SQL_ERROR – 如果调用内部过程时发生意外情况,则会出现此错误。

  • INVALID_RESPONSE – 如果从内部过程接收的响应不包含 response_code 或错误响应不包含 message,但包含 response_code,则会发生此错误。

  • UNKNOWN_ERROR – 这表示出现了意外错误(转发引发异常的消息)。

  • RESET_CONFIGURATION_INTERNALRESET_CONFIGURATION_VALIDATE 过程接收的自定义错误代码 – 由连接器开发者定义。

语言: 中文