Application Delivery Management
ご意見をお寄せいただきありがとうございました

この記事は機械翻訳されています.免責事項

プロパティ-デフォルトソース構成

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

上記の例では、componentsセクションで定義されているすべてのプロパティの値は$parameters.lbオブジェクトから取得されていることに注目してください。これらのプロパティは1つのソースから取得されますが、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

上の例では、properties-default-sources構造を使用することでコンポーネント定義のサイズが小さくなり、そのためにコンポーネントを簡潔に定義できています。さらに、コンポーネントのプロパティのソースが変更されるたびに、変更内容が自動的に反映されます。たとえば、「persistesetype」という名前の新しいプロパティが$parameters.lbオブジェクトに追加された場合、persistencetypeはlbvserverのプロパティであるため、デフォルトでlb-compの構成に追加されます。このように、properties-default-sources構造は、コンポーネントのプロパティのソースに対して行われる変更を気にすることなくコンポーネントを定義できる動的なインターフェイスを提供します。

コンポーネントのプロパティの計算

このセクションでは、コンポーネントでproperties-default-sources構造を使用した場合にプロパティがどのように取得されるかについて説明します。はじめに、StyleBooksコンパイラがコンポーネントの種類(上の例ではlbvserver)に基づいてコンポーネントのプロパティの一覧を識別します。次に、コンパイラはこれらのプロパティを複数のソースから(コンポーネントのproperties-default-sourcesセクションに )定義されている順に取得します。プロパティが複数のソースに存在する場合は、最後のソースに出現するプロパティがほかのプロパティより優先されます。最後に、properties-default-sources構造を使用して取得されたプロパティは、コンポーネントのpropertiesセクションで上書きすることができます。componentセクションの定義は、少なくともproperties-default-sourcesセクションまたはpropertiesセクションを持つ必要があることに気付くことが重要です。両方のセクションを持つこともできます。

このコンテンツの正式なバージョンは英語で提供されています。Cloud Software Groupドキュメントのコンテンツの一部は、お客様の利便性のみを目的として機械翻訳されています。Cloud Software Groupは機械翻訳されたコンテンツを管理していないため、誤り、不正確な情報、不適切な用語が含まれる場合があります。英語の原文から他言語への翻訳について、精度、信頼性、適合性、正確性、またはお使いのCloud Software Group製品またはサービスと機械翻訳されたコンテンツとの整合性に関する保証、該当するライセンス契約書またはサービス利用規約、あるいはCloud Software Groupとのその他すべての契約に基づき提供される保証、および製品またはサービスのドキュメントとの一致に関する保証は、明示的か黙示的かを問わず、かかるドキュメントの機械翻訳された範囲には適用されないものとします。機械翻訳されたコンテンツの使用に起因する損害または問題について、Cloud Software Groupは責任を負わないものとします。
プロパティ-デフォルトソース構成