This content has been machine translated dynamically.
Dieser Inhalt ist eine maschinelle Übersetzung, die dynamisch erstellt wurde. (Haftungsausschluss)
Cet article a été traduit automatiquement de manière dynamique. (Clause de non responsabilité)
Este artículo lo ha traducido una máquina de forma dinámica. (Aviso legal)
此内容已经过机器动态翻译。 放弃
このコンテンツは動的に機械翻訳されています。免責事項
이 콘텐츠는 동적으로 기계 번역되었습니다. 책임 부인
Este texto foi traduzido automaticamente. (Aviso legal)
Questo contenuto è stato tradotto dinamicamente con traduzione automatica.(Esclusione di responsabilità))
This article has been machine translated.
Dieser Artikel wurde maschinell übersetzt. (Haftungsausschluss)
Ce article a été traduit automatiquement. (Clause de non responsabilité)
Este artículo ha sido traducido automáticamente. (Aviso legal)
この記事は機械翻訳されています.免責事項
이 기사는 기계 번역되었습니다.책임 부인
Este artigo foi traduzido automaticamente.(Aviso legal)
这篇文章已经过机器翻译.放弃
Questo articolo è stato tradotto automaticamente.(Esclusione di responsabilità))
Translation failed!
Properties-default-sources コンストラクト
properties-default-sources コンストラクトは、parameters-default-sources コンストラクトに類似しています。parameters-default-sources コンストラクトが既存のパラメータ(他のStyleBookからのもの)をStyleBook内で再利用できるようにするのに対し、properties-default-sources コンストラクトは、既存のソースに基づいてコンポーネントのプロパティを指定することを可能にします。
コンポーネントのプロパティは、StyleBookのさまざまなセクションに分散している場合があります。たとえば、プロパティはオブジェクトパラメータ、オブジェクトを返す置換、他のコンポーネントのプロパティ、または他のコンポーネントの出力から取得されることがあります。このような場合、StyleBookの他のセクションに存在するプロパティを、コンポーネントの定義内で再定義する必要があります。これは明らかに冗長であり、エラーにつながる可能性があります。この問題に対処するために、properties-default-sources コンストラクトを使用できます。properties-default-sources コンストラクトは、コンポーネントのいくつかのプロパティのソースを識別する各項目を含むリストです。
たとえば、lbvserver 設定を作成するコンポーネントを考えてみましょう。このコンポーネントは、lbvserver のプロパティを次のように定義する必要があります。
parameters:
-
name: lb
type: ns::lbvserver
components:
-
name: lb-comp
type: ns::lbvserver
properties:
name: $parameters.lb.name
ipv46: $parameters.lb.ipv46
port: $parameters.lb.port
servicetype: $parameters.lb.servicetype
lbmethod: $parameters.lb.lbmethod
<!--NeedCopy-->
上記の例では、components セクションで定義されているすべてのプロパティの値が $parameters.lb オブジェクトから取得されていることに注目してください。これらは単一のソースから取得されていますが、プロパティはStyleBook内で再度定義されています。さらに、lbvserver の設定に関連する新しいサブパラメータが $parameters.lb オブジェクトに追加された場合、新しいサブパラメータに対応する新しいプロパティを追加するために lb-comp コンポーネントを更新する必要があります。
プロパティの再定義を避け、properties セクションに明示的にリストすることなく、コンポーネントのすべての関連プロパティを取得するために、properties-default-sources コンストラクトを使用できます。上記の例は次のように記述できます。
parameters:
-
name: lb
type: ns::lbvserver
components:
-
name: lb-comp
type: ns::lbvserver
properties-default-sources:
- $parameters.lb
<!--NeedCopy-->
上記の例では、properties-default-sources コンストラクトを使用することで、コンポーネント定義のサイズが削減され、コンポーネントを簡潔に定義できるようになります。さらに、コンポーネントのプロパティのソースが変更されるたびに、その変更が自動的に反映されます。たとえば、$parameters.lb オブジェクトに「persistencetype」という新しいプロパティが追加された場合、persistencetype は lbvserver のプロパティであるため、このプロパティはデフォルトで lb-comp の設定に追加されます。したがって、properties-default-sources コンストラクトは、コンポーネントのプロパティのソースで発生する変更を気にすることなく、コンポーネントを定義するための動的なインターフェースを提供します。
コンポーネントのプロパティの計算
このセクションでは、properties-default-sources コンストラクトがコンポーネントで使用された場合に、プロパティがどのように取得されるかについて説明します。まず、StyleBooksコンパイラは、そのタイプ(上記の例では lbvserver)に基づいてコンポーネントのプロパティのリストを識別します。次に、コンパイラは、定義された順序(コンポーネントの properties-default-sources セクション内)で複数のソースからこれらのプロパティを取得します。プロパティが複数のソースに存在する場合、最後のソースに現れるプロパティが他のプロパティよりも優先されます。最後に、properties-default-sources コンストラクトを使用して取得されたプロパティは、コンポーネントの properties セクションで上書きできます。コンポーネントセクションの定義には、少なくとも properties-default-sources セクションまたは properties セクションのいずれかが必要です。両方を持つことも可能です。
共有
共有
This Preview product documentation is Cloud Software Group Confidential.
You agree to hold this documentation confidential pursuant to the terms of your Cloud Software Group Beta/Tech Preview Agreement.
The development, release and timing of any features or functionality described in the Preview documentation remains at our sole discretion and are subject to change without notice or consultation.
The documentation is for informational purposes only and is not a commitment, promise or legal obligation to deliver any material, code or functionality and should not be relied upon in making Cloud Software Group product purchase decisions.
If you do not agree, select I DO NOT AGREE to exit.