io.enterpriseai.resources.PluginsClient
Source : sdks/java/enterprise-ai-java/src/main/java/io/enterpriseai/resources/PluginsClient.java. Retour à l'index de la référence du SDK Java.
Cette page est générée par tools/docs/gen_sdk_reference.py depuis les sources du SDK et les dossiers de textes OpenAPI. Ne la modifiez pas à la main : changez la source et régénérez.
Classe PluginsClient
Plugins. Registre et cycle de vie d'exécution des plugins : des images OCI signées exécutées par la plateforme dans une sandbox (classe de runtime gVisor, Kata ou Wasm), avec un Deployment et une NetworkPolicy Kubernetes générés à partir du manifeste.
Constructeur PluginsClient
PluginsClient(Transport transport)
Crée le client sur le transport partagé ; EnterpriseAIClient le construit, on y accède par l'accesseur du même nom.
| Nom | Type | Défaut | Requis | Description |
|---|---|---|---|---|
transport | Transport | oui | Transport partagé par les sous-clients d'un même client. |
PluginsClient.create
JsonNode create(Object body)
Enregistrer un plugin. Applique un manifeste Plugin : crée le plugin ou le met à jour (retour à registered, un plugin bloqué reste blocked), avec la signature vérifiée et enregistrée. Refus : 422 pack_requires_marketplace pour un pack, 422 invalid_manifest quand l'empreinte de oci_ref diffère de artifact.digest, qu'une liste d'autorisation manque pour egress_allowlist ou que les limites dépassent le maximum de la plateforme (4 CPU, 8Gi de mémoire, 3600 s, 1 GPU) ; 409 plugin_installed tant qu'il est installé. Demande tenant_admin, developer ou application_owner ; l'appelant devient propriétaire ReBAC. Audité sous plugin.apply.
Route : /v1/plugins (POST).
| Nom | Type | Défaut | Requis | Description |
|---|---|---|---|---|
body | Object | oui | Manifeste Plugin (kind: Plugin, metadata, spec avec description, artefact, signature et sandbox). |
Retour : JsonNode. Réponse JSON décodée de l'opération « Enregistrer un plugin ».
Erreurs levées : les erreurs typées du transport (Erreurs).
PluginsClient.create
JsonNode create(Object body, RequestOptions options)
Enregistrer un plugin. Applique un manifeste Plugin : crée le plugin ou le met à jour (retour à registered, un plugin bloqué reste blocked), avec la signature vérifiée et enregistrée. Refus : 422 pack_requires_marketplace pour un pack, 422 invalid_manifest quand l'empreinte de oci_ref diffère de artifact.digest, qu'une liste d'autorisation manque pour egress_allowlist ou que les limites dépassent le maximum de la plateforme (4 CPU, 8Gi de mémoire, 3600 s, 1 GPU) ; 409 plugin_installed tant qu'il est installé. Demande tenant_admin, developer ou application_owner ; l'appelant devient propriétaire ReBAC. Audité sous plugin.apply.
Route : /v1/plugins (POST).
| Nom | Type | Défaut | Requis | Description |
|---|---|---|---|---|
body | Object | oui | Manifeste Plugin (kind: Plugin, metadata, spec avec description, artefact, signature et sandbox). | |
options | RequestOptions | oui | Options de l'appel (clé d'idempotence, traceparent, en-têtes, signal d'annulation). |
Retour : JsonNode. Réponse JSON décodée de l'opération « Enregistrer un plugin ».
Erreurs levées : les erreurs typées du transport (Erreurs).
PluginsClient.get
JsonNode get(String name)
Lire un plugin. Renvoie le plugin avec son manifeste, son résultat de vérification et son déploiement généré. Demande la relation ReBAC viewer. 404 plugin_not_found.
Route : /v1/plugins/{name} (GET).
| Nom | Type | Défaut | Requis | Description |
|---|---|---|---|---|
name | String | oui | Nom du plugin. |
Retour : JsonNode. Réponse JSON décodée de l'opération « Lire un plugin ».
Erreurs levées : les erreurs typées du transport (Erreurs).
PluginsClient.install
JsonNode install(String name)
Installer un plugin. Installe le plugin dans sa sandbox. Demande tenant_admin et la relation ReBAC owner. Étapes : 1. Un plugin blocked répond 403 plugin_blocked ; un plugin déjà installé est renvoyé tel quel. 2. La signature est revérifiée (403 plugin_unsigned en cas d'échec, audité comme refus). 3. Le Deployment (classe de runtime de la sandbox, système de fichiers racine en lecture seule par défaut) et la NetworkPolicy sont générés, puis appliqués quand Kubernetes est configuré (status: failed avec l'erreur si l'application échoue). Renvoie l'état d'exécution. Audité sous plugin.install.
Route : /v1/plugins/{name}/install (POST).
| Nom | Type | Défaut | Requis | Description |
|---|---|---|---|---|
name | String | oui | Nom du plugin. |
Retour : JsonNode. Réponse JSON décodée de l'opération « Installer un plugin ».
Erreurs levées : les erreurs typées du transport (Erreurs).
PluginsClient.list
Page<JsonNode> list()
Lister les plugins. Plugins du tenant dans l'ordre des noms, avec version, empreinte, vérification et statut. Une seule page.
Route : /v1/plugins (GET).
Cet élément ne prend aucun paramètre.
Retour : Page<JsonNode>. Réponse JSON décodée de l'opération « Lister les plugins ».
Erreurs levées : les erreurs typées du transport (Erreurs).
PluginsClient.status
JsonNode status(String name)
Lire l'état d'exécution d'un plugin. Vue d'exécution : statut, indicateur de vérification, empreinte, date d'installation, classe de runtime, objets rendered (générés) ou applied (appliqués) sur Kubernetes, Deployment et NetworkPolicy et dernière erreur. Demande la relation ReBAC viewer.
Route : /v1/plugins/{name}/status (GET).
| Nom | Type | Défaut | Requis | Description |
|---|---|---|---|---|
name | String | oui | Nom du plugin. |
Retour : JsonNode. Réponse JSON décodée de l'opération « Lire l'état d'exécution d'un plugin ».
Erreurs levées : les erreurs typées du transport (Erreurs).
PluginsClient.uninstall
JsonNode uninstall(String name)
Désinstaller un plugin. Supprime le Deployment et la NetworkPolicy de Kubernetes s'il est configuré (502 upstream_error en cas d'échec) et passe le plugin à uninstalled. Seulement pour un plugin installed, installing ou failed (sinon 409 plugin_not_installed). Demande tenant_admin et la relation ReBAC owner. Audité sous plugin.uninstall.
Route : /v1/plugins/{name}/uninstall (POST).
| Nom | Type | Défaut | Requis | Description |
|---|---|---|---|---|
name | String | oui | Nom du plugin. |
Retour : JsonNode. Réponse JSON décodée de l'opération « Désinstaller un plugin ».
Erreurs levées : les erreurs typées du transport (Erreurs).