Disable resource reference¶
Database objects and procedures¶
The following database objects are created when the file ingestion/resource_management.sql is executed.
PUBLIC.DISABLE_ RESOURCE(resource_ ingestion_ definition_ id VARCHAR)¶
Entry point procedure available to the ADMIN role. This procedure invokes the Java function DisableResourceHandler.disableResource.
PUBLIC.PRE_ DISABLE_ RESOURCE(resource_ ingestion_ definition_ id VARCHAR)¶
Procedure used for adding connector specific logic which is invoked before a resource is disabled.
By default, it returns 'response_code': 'OK'.
It is invoked by DefaultPreDisableResourceCallback. Can be overwritten both in SQL and Java.
PUBLIC.POST_ DISABLE_ RESOURCE(resource_ ingestion_ definition_ id VARCHAR)¶
Procedure used for adding connector specific logic which is invoked after a resource is disabled.
By default, it returns 'response_code': 'OK'.
It is invoked by DefaultPostDisableResourceCallback. Can be overwritten both in SQL and Java.
Related Java objects¶
The following Java objects from the com.snowflake.connectors.application.ingestion.disable package and some common components are tightly connected with the above procedures:
DisableResourceHandlerDisableResourceHandlerBuilderPreDisableResourceCallbackPostDisableResourceCallbackConnectorErrorHelper
Custom handler¶
The handler and its internals can be customized using the following approaches.
Procedure replacement approach¶
The following components can be replaced using SQL.
Handler¶
To provide a custom implementation of DisableResourceHandler, replace the PUBLIC.DISABLE_RESOURCE procedure.
For example:
Internal procedures¶
Internal procedures PRE_DISABLE_RESOURCE and POST_DISABLE_RESOURCE can be also customized through the SQL. These procedures can also invoke other Java handlers:
Builder approach¶
DisableResourceHandler can be customized using DisableResourceHandlerBuilder. This builder allows user to provide custom implementations of the following interfaces:
PreDisableResourceCallbackPostDisableResourceCallbackConnectorErrorHelper
When a function is not provided the default implementation provided by the SDK is used.