StyleBook-Konfiguration

Verschachtelte Wiederholungen

麻省理工学院的民主党verschachtelten Wiederholungskonstrukt今敏nen Sie je nach Definition der Komponente mehr als ein Wiederholungskonstrukt in jeder Komponente haben. Betrachten Sie eine verschachtelte Wiederholung von zwei Ebenen. Für jedes Element in der äußeren Liste (erste Wiederholungsliste) können Sie eine Wiederholungsliste für alle Elemente der inneren Liste erstellen (zweite Wiederholungsliste). Der StyleBook-Compiler unterstützt bis zu drei verschachtelte Wiederholungen. Jeder Wiederholungsebene sind mit den Attributen repeat-item und repeat-index verknüpft. Sowohl repeat-item als auch repeat-index Attribute sind optional. Darüber hinaus kann jede Wiederholung auch eine Wiederholungsbedingung angeben.

Beispiel:

parameters: - name: vips type: ipaddress[] - name: vip-ports type: tcp-port[] components: - name: lbvservers-comp type: ns::lbvserver repeat: repeat-list: $parameters.vips repeat-item: ip repeat: repeat-list: $parameters.vip-ports repeat-item: port properties: name: str("lb-") + str($ip) + '-' + str($port) servicetype: HTTP ipv46: $ip port: $port 

In diesem Beispiel iterieren wir für jedes Element in$parameters.vipsalle Elemente von$parameters.vip-ports. Daher erstellen wir für jedes inipaddressangegebene inlbvserverKonfigurationsobjekte für alle Ports$parameters.vips, die in $ parameters.vip-Ports angegeben sind. Der Eigenschaftenabschnitt definiert den Namen des Objekts mit “lb” als Präfix für die Kombination der IP-Adresse und des Ports.$ip + $portDefiniert daher für jede Iteration eine eindeutige Kombination der IP-Adresse und der Portnummer.

Wenn dasrepeat-itemAttribut nicht angegeben wird, generiert der Compiler einen Standardwert dafür. Die Standardwerte für Wiederholungselement sind:$repeat-item$repeat-item-1,$repeat-item-2bzw. für jede Wiederholungsstufe. Wenn dasrepeat-indexAttribut nicht angegeben wird, generiert der Compiler einen Standardwert dafür. Die Standardwerte für repeat-index sind: $repeat-index, $repeat-index-1 und $repeat-index-2 jeweils für jede Wiederholungsebene.

Im folgenden Beispiel wird die Benennungskonvention in Abwesenheit von repeat-item und repeat-index Attributen in einem verschachtelten Wiederholungsobjekt beschrieben.

Beispiel:

components: - name: lbvservers-comp type: ns::lbvserver repeat: repeat-list: $parameters.vips repeat: repeat-list: $parameters.vip-ports properties: name: str("lb-") + str($repeat-item) + '-' + str($repeat-item-1) servicetype: HTTP ipv46: $repeat-item port: $repeat-item-1 
Verschachtelte Wiederholungen

In diesem Artikel