Ressource freigeben¶
Die Aktivierung einer Ressource wird verwendet, um mit der Datenaufnahme für eine bestimmte Ressource zu beginnen. Die PUBLIC.ENABLE_RESOURCE
-Prozedur ist der Einstiegspunkt von UI oder einem Arbeitsblatt, um eine Ressource zu aktivieren. Es kann verwendet werden, nachdem eine Ressource deaktiviert wurde oder wenn eine Ressource als deaktiviert erstellt wurde und nun aktiviert werden soll.
Der Aufruf dieser Prozedur setzt voraus, dass dem Benutzer die Anwendungsrolle ADMIN
zugewiesen wurde. Die Phasen sind:
Erstvalidierung
Benutzerdefinierte Validierung
Benutzerdefinierte Logik vor Aktivierung einer Ressource
Markieren einer Datenaufnahmedefinition der Ressource als aktiviert und Erstellen neuer Aufnahmeprozesse
Benutzerdefinierte Logik nach der Erstellung einer Ressource
Erstvalidierung¶
Die Erstvalidierung wird gleich zu Beginn des Prozesses zur Aktivierung von Ressourcen durchgeführt, und es wird überprüft:
ob eine Ressource mit der angegebenen ID existiert
ob eine Ressource mit der angegebenen ID bereits aktiviert ist
Wenn eine Ressource bereits aktiviert ist, wird nichts unternommen und eine Erfolgs-Antwort zurückgegeben.
Benutzerdefinierte Validierung¶
Die benutzerdefinierte Validierung wird nach der Erstvalidierung ausgeführt und ist so konzipiert, dass sie die kundenspezifische Logik des Konnektors unterstützt. So können Sie z. B. überprüfen, ob eine bestimmte Ressource in einem Quellsystem noch vorhanden ist.
Standardmäßig wird PUBLIC.ENABLE_RESOURCE_VALIDATE(resource_ingestion_definition_id)
aufgerufen, das 'response_code': 'OK'
zurückgibt. Die Prozedur kann über das SQL-Skript oder durch Verwendung von EnableResourceHandlerBuilder
überschrieben werden, um eine kundenspezifische Implementierung der EnableResourceValidator
-Schnittstelle bereitzustellen.
Wenn die benutzerdefinierte Validierung einen Fehler ergibt, werden die nächsten Schritte nicht ausgeführt, und die angegebene Antwort wird von der ENABLE_RESOURCE
-Prozedur zurückgegeben.
Benutzerdefinierte Logik vor Aktivierung einer Ressource¶
Eine benutzerdefinierte Logik kann angegeben und ausgeführt werden, bevor eine Ressource aktiviert wird.
Standardmäßig wird PUBLIC.PRE_ENABLE_RESOURCE(resource_ingestion_definition_id VARCHAR)
aufgerufen, das 'response_code': 'OK'
zurückgibt. Die Prozedur kann über das SQL-Skript oder durch Verwendung von EnableResourceHandlerBuilder
überschrieben werden, um eine kundenspezifische Implementierung der PreEnableResourceCallback
-Schnittstelle bereitzustellen.
Wenn die benutzerdefinierte Logik einen Fehler ausgibt, werden die folgenden Schritte nicht ausgeführt, und es wird eine Fehlerantwort von der ENABLE_RESOURCE
-Prozedur zurückgegeben.
Markieren einer Datenaufnahmedefinition der Ressource als aktiviert und Erstellen neuer Aufnahmeprozesse¶
In diesem Schritt wird das enabled
-Flag für die Datenaufnahmedefinition der Ressource in true
geändert, und es wird ein neuer Aufnahmeprozess für jede Aufnahmekonfiguration erstellt. Aufnahmeprozesse werden mit dem SCHEDULED
-Status erstellt, was bedeutet, dass die Aufnahme eine Weile später beginnt. Wenn ein neuer Aufnahmeprozess wird, wird die Spalte mit den Metadaten vom zuletzt beendeten Prozess mit der gegebenen Aufnahmekonfigurations-ID geerbt.
Benutzerdefinierte Logik nach Aktivierung einer Ressource¶
Es kann eine benutzerdefinierte Logik definiert werden, die ausgeführt wird, nachdem eine Ressource aktiviert wurde.
Standardmäßig wird PUBLIC.POST_ENABLE_RESOURCE(resource_ingestion_definition_id VARCHAR)
aufgerufen, das 'response_code': 'OK'
zurückgibt. Die Prozedur kann über das SQL-Skript oder durch Verwendung von EnableResourceHandlerBuilder
überschrieben werden, um eine kundenspezifische Implementierung der PostEnableResourceCallback
-Schnittstelle bereitzustellen.
Wenn die benutzerdefinierte Logik einen Fehler zurückgibt, wird die gegebene Fehlerantwort von der ENABLE_RESOURCE
-Prozedur zurückgegeben, aber der Prozess, der eine Datenaufnahmedefinition der Ressource als aktiviert markiert und neue Aufnahmeprozesse erstellt, wird nicht zurückgesetzt.
Antwort¶
Erfolgreiche Antwort¶
Bei erfolgreicher Prozedur erhalten Sie eine Antwort, die der Folgenden ähnelt:
{ "response_code": "OK" }
Fehlerantwort¶
Bei einem Fehler in der Prozedur erhalten Sie eine Antwort, die der Folgenden ähnelt:
{ "response_code": "<ERROR_CODE>", "message": "<error message>" }
Mögliche Fehlercodes sind:
INVALID_INPUT
- Ressource mit der angegebenen ID der Datenaufnahmedefinition der Ressource existiert nicht.ENABLE_RESOURCE_ERROR
- Bei der Aktualisierung der Datenaufnahmedefinition der Ressource oder beim Erstellen von Aufnahmeprozessen ist etwas Unerwartetes aufgetreten. Alle Änderungen werden rückgängig gemacht.