Serviceparameterdefinitionen und Beispiele
Service-Parameter werden verwendet, um zusätzliche Datenpunkte für einen Anruf zu sammeln und hinzuzufügen, wenn ein IBM Cloud Kunde eine Service-Instanz erstellt. Die folgenden Abschnitte enthalten Beispiele und Definitionen für die Verwendung von Serviceparametern. Informationen zum Hinzufügen angepasster Serviceparameter für Ihr Produkt finden Sie unter Angepasste Serviceparameter für Ihren Service hinzufügen.
Beispiele für Serviceparameter
Das folgende Beispiel veranschaulicht, wie ein angepasster Serviceparameter für ein erforderliches Textfeld angegeben wird.
In den umgebenden metadata-und service-JSON-Strukturen gibt der Schlüssel parameters ein JSON-Array mit angepassten Serviceparametern an. In diesem Beispiel enthält das Array nur einen benutzerdefinierten
Parameter mit der Kennung subscription_id. Es handelt sich um ein erforderliches Textfeld mit der Bezeichnung Subscription ID und der Beschreibung Subscription ID that will be used when provisioning the service instance.
Dieser benutzerdefinierte Parameter wird in der Benutzeroberfläche angezeigt, wenn der Benutzer einen der beiden zugehörigen Preispläne, 068f8a20-8b27-4049-91fe-a3ff5f505352 oder 45333bd7-79f5-475f-9b14-9fe99734592a,
auswählt:
{
"metadata": {
//...
"service": {
//...
"parameters": [{
"associations": {
"plan": {
"showFor": [
"068f8a20-8b27-4049-91fe-a3ff5f505352",
"45333bd7-79f5-475f-9b14-9fe99734592a"
]
}
},
"description": "Subscription ID that will be used when provisioning the service instance",
"displayname": "Subscription ID",
"name": "subscription_id",
"required": true,
"type": "text"
}]
}
}
Dieser angepasste Parameter muss nicht nur dem Objekt Service hinzugefügt werden, sondern auch allen Deployment-Objekten für die beiden Servicepläne, denen der Parameter zugeordnet ist. Außerdem müssen die Implementierungen für die Implementierungsobjekte aktualisiert werden, um den angepassten Parameter zu verarbeiten.
Testen Sie Ihre Parameter immer in der Konsole IBM Cloud, um zu überprüfen, ob die von Ihnen angegebenen Änderungen korrekt funktionieren.
Serviceparameterdefinition
Die Struktur parameters definiert ein JSON-Array mit angepassten Serviceparametern. Wenn eine Serviceinstanz erstellt wird, verwendet sie die Informationen im Array, um die angepassten Serviceparameter zu verwalten. Ein Beispiel
finden Sie im vorherigen Unterabschnitt in diesem Abschnitt.
Jeder angepasste Serviceparameter in der Struktur parameters hat das folgende Layout. Viele der Attribute sind optional:
parameters.name- Der Schlüssel des Parameters.
parameters.displayname- Der Parametername, der angezeigt wird.
parameters.type- Der Typ des Put-Feldes, der auf der Benutzeroberfläche IBM Cloud angezeigt wird. Der Wert kann
text,password,dropdown,check box, oderradiosein.
Dieser Wert ist erforderlich.
Der folgende Codeblock enthält Beispiele für die Parameter name, displayname und type:
{
"name": "pwd",
"displayname": "Password",
"type": "password"
}
parameters.options- Eine JSON-Struktur zur Angabe der verfügbaren Werte für die Eingabetypen
dropdown,check boxundradio. parameters.options.displayname- Der Name der Dropdown-Liste, des Kontrollkästchens oder des Optionsfelds, die bzw. das Sie in der Benutzerschnittstelle anzeigen möchten.
parameters.options.value- Der Wert des Parameters, der beim Erstellen des Service an den Service-Broker gesendet werden soll.
{
"options": [
{
"displayname": "HDFS",
"value": "hdfs"
},
{
"displayname": "YARN",
"value": "yarn"
},
]
}
parameters.value- Der Standardwert des Parameters. Bei dem Eingabeelement 'Kontrollkästchen' kann dies ein Wertebereich sein.
{
["hfs","yarn"]
}
parameters.layout- Gibt das Layout für das Eingabeelement 'Kontrollkästchen' oder 'Optionsfeld' an. Wenn diese Angabe fehlt, wird das horizontale Standardlayout verwendet.
parameters.associations- Eine JSON-Struktur zum Beschreiben der Interaktionen mit Preisstrukturplänen und/oder anderen angepassten Parametern.
Dieser Wert ist optional, und alle nachfolgenden Werte, die an parameters.associations.<value> angehängt werden, sind optional.
{
"type": "text",
"associations": {
"plan": {
"showFor": ["apsMyserviceParametersDemo-entry","apsMyserviceParametersDemo-enterprise"]
}
}
}
parameters.associations.plan- Eine JSON-Struktur zum Beschreiben der Interaktion mit Preistarifen.
parameters.associations.plan.showFor- Ein Bereich der Plan-IDs für Preistarife. Falls der Parameter angegeben ist, wird er in der Benutzerschnittstelle angezeigt, wenn der betreffende Preisstrukturplan ausgewählt wird.
parameters.associations.plan.optionsRefresh- Ist diese Option angegeben, wird die Option
optionsUrlaufgerufen, wenn der zugeordnete Preistarif ausgewählt wird. parameters.associations.parameters- Ein JSON-Array zum Beschreiben der Interaktion mit anderen angepassten Parametern.
parameters.associations.parameters.name- Der Name des anderen benutzerdefinierten Parameters, mit dem Sie interagieren möchten.
Erforderlich, wenn parameters.associations.parameters verwendet wird.
parameters.associations.parameters.showFor- Ein Array ausgewählter Werte, die mit dem benutzerdefinierten Parameter verbunden sind, mit dem Sie interagieren möchten. Dieser Parameter wird in der Benutzerschnittstelle angezeigt, wenn einer dieser Werte ausgewählt ist.
parameters.associations.parameters.optionsRefresh- Wenn dieser Parameter auf true gesetzt ist, wird
optionsUrlaufgerufen, wenn der zugehörige Parameterwert geändert wird und dieser Parameter in der Benutzeroberfläche sichtbar ist. parameters.optionsUrl- Die API, die von der Konsole aufgerufen wird, um eine Liste der Optionen für ein Eingabeelement des Typs 'Dropdown-Liste', 'Kontrollkästchen' oder 'Optionsfeld' abzurufen. Die Antwort ist eine JSON-Struktur, die zwei Felder enthält:
parameters.optionsUrl.options- Ein Array von JSON, das
parameters.optionszurückgibt; für weitere Details siehe den Eintrag fürparameters.options. parameters.optionsUrl.value- Der neue Standardwert des Parameters. Weitere Details finden Sie im Eintrag für
parameters.value.
Die Konsole übergibt den Abfrageparameter ace_config, der die GUID der aktuellen Organisation, die GUID des Bereichs, die aktuelle Werte aller angepassten Parameter und die ID des aktuellen Preisstrukturplans enthält. Das Trägertoken
wird im Header weitergegeben.
parameters.invalidmessage- Die Nachricht, die ausgegeben wird, wenn der Inhalt des Textfelds ungültig ist.
parameters.description- Die Beschreibung des Parameters, die angezeigt wird, um die Benutzern beim Eingeben des Werts für diesen Parameter zu unterstützen.
parameters.required- Ein boolescher Wert, der angibt, ob der Parameter in die IBM Cloud-Benutzerschnittstelle eingegeben werden muss.
parameters.pattern- Ein regulärer Ausdruck, mit dem der Wert abgeglichen wird.
parameters.placeholder- Ein kurzer Hinweis, der den erwarteten Wert beschreibt.
parameters.readonly- Ein boolescher Wert, der angibt, ob der Wert des Parameters lediglich angezeigt und von Benutzern nicht geändert werden kann. Der Standardwert ist 'false'.
parameters.hidden- Ein boolescher Wert, der angibt ob das Schlüssel/Wert-Paar für Benutzer ausgeblendet ist. Der Standardwert ist 'false'.