启用资源

“启用资源”用于开始为给定资源引入数据。PUBLIC.ENABLE_RESOURCE 过程是从 UI 或工作表来启用资源的入口点。它可以在资源禁用后使用,也可以在资源以禁用状态创建且现在需要启用时使用。

要调用此过程,用户需要已获得 ADMIN 应用程序角色。各阶段如下:

  1. 初步验证

  2. 自定义验证

  3. 资源启用前的自定义逻辑

  4. 将资源引入定义标记为“已启用”并创建新的引入进程

  5. 资源创建后的自定义逻辑

初步验证

初始验证在“启用资源”进程的最开始执行,并检查:

  • 指定 ID 的资源是否存在

  • 指定 ID 的资源是否已启用

当资源已启用时,不执行任何操作并返回成功响应。

自定义验证

自定义验证在初步验证之后执行,旨在支持特定于连接器的自定义逻辑。例如,它可用于验证给定资源在源系统中是否仍然存在。

默认情况下,它会调用 PUBLIC.ENABLE_RESOURCE_VALIDATE(resource_ingestion_definition_id),返回 'response_code': 'OK'。可以通过 EnableResourceValidator 脚本或使用 EnableResourceHandlerBuilder 提供 接口的自定义实现来将其覆盖。

如果自定义验证返回错误,则不执行后续步骤,并且 ENABLE_RESOURCE 过程返回给定的错误响应。

资源启用前的自定义逻辑

在资源启用之前可以指定并执行自定义逻辑。

默认情况下,它会调用 PUBLIC.PRE_ENABLE_RESOURCE(resource_ingestion_definition_id VARCHAR),返回 'response_code': 'OK'。可以通过 SQL 脚本或使用 EnableResourceHandlerBuilder 提供 PreEnableResourceCallback 接口的自定义实现来将其覆盖。

如果自定义逻辑返回错误,则不执行后续步骤,并且 ENABLE_RESOURCE 过程返回错误响应。

将资源引入定义标记为“已启用”并创建新的引入进程

在此步骤中,资源引入定义的 enabled 标志更改为 true,然后为每个引入配置创建一个新的引入进程。引入进程以 SCHEDULED 状态创建,意味着引入将在一段时间后开始。在创建新的引入进程时,元数据列将从具有给定引入配置 ID 的最后完成进程继承。

资源启用后的自定义逻辑

可以将自定义逻辑定义为在资源启用后执行。

默认情况下,它会调用 PUBLIC.POST_ENABLE_RESOURCE(resource_ingestion_definition_id VARCHAR),返回 'response_code': 'OK'。可以通过 SQL 脚本或使用 EnableResourceHandlerBuilder 提供 PostEnableResourceCallback 接口的自定义实现来将其覆盖。

如果自定义逻辑返回错误,则 ENABLE_RESOURCE 将返回给定的错误响应,但不会回滚用于将资源引入定义标记为“已启用”并创建新的引入进程的进程。

响应

成功响应

一旦进程成功,就会返回类似下面的响应:

{
  "response_code": "OK"
}
Copy

错误响应

当进程发生错误时,将返回类似下面的响应:

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

可能的错误代码包括:

  • INVALID_INPUT – 具有给定资源引入定义 ID 的资源不存在。

  • ENABLE_RESOURCE_ERROR – 更新资源引入定义或创建引入进程时发生了意外事情。所有更改均已回滚。

语言: 中文