クラス YamlProcessor
java.lang.ObjectSE
org.springframework.beans.factory.config.YamlProcessor
- 既知の直属サブクラス
YamlMapFactoryBean
,YamlPropertiesFactoryBean
YAML ファクトリの基本クラス。
Spring Framework 6.1 以降、SnakeYAML 2.0 以降が必要です。
- 導入:
- 4.1
- 作成者:
- Dave Syer, Juergen Hoeller, Sam Brannen, Brian Clozel
ネストされたクラスのサマリー
ネストされたクラス修飾子と型クラス説明static interface
プロパティが一致するかどうかをテストするために使用される戦略インターフェース。static interface
YAML 解析結果の処理に使用されるコールバックインターフェース。static enum
static enum
リソースを解決するために使用するメソッド。コンストラクターのサマリー
コンストラクターメソッドのサマリー
修飾子と型メソッド説明protected org.yaml.snakeyaml.Yaml
使用するYaml
インスタンスを作成します。getFlattenedMap
(MapSE<StringSE, ObjectSE> source) 指定されたマップのフラットバージョンを返します。ネストされたマップまたはコレクションの値を再帰的にたどります。protected void
process
(YamlProcessor.MatchCallback callback) 提供されたリソースから解析された Yaml をサブクラスが処理する機会を提供します。void
setDocumentMatchers
(YamlProcessor.DocumentMatcher... matchers) 発信者が YAML リソース内の一部のドキュメントのみを選択的に使用できるようにするドキュメントマッチャーのマップ。void
setMatchDefault
(boolean matchDefault) それでも、すべてのdocument matchers
棄権が一致するドキュメントが一致することを示すフラグ。void
setResolutionMethod
(YamlProcessor.ResolutionMethod resolutionMethod) リソースを解決するために使用するメソッド。void
setResources
(Resource... resources) ロードする YAMLresources
の場所を設定します。void
setSupportedTypes
(ClassSE<?>... supportedTypes) YAML ドキュメントからロードできるサポートされている型を設定します。
コンストラクターの詳細
YamlProcessor
public YamlProcessor()
メソッドの詳細
setDocumentMatchers
発信者が YAML リソース内の一部のドキュメントのみを選択的に使用できるようにするドキュメントマッチャーのマップ。YAML では、ドキュメントは---
行で区切られ、一致する前に各ドキュメントがプロパティに変換されます。例:environment: dev url: https://dev.bar.com name: Developer Setup --- environment: prod url:https://foo.bar.com name: My Cool App
とマップされたときsetDocumentMatchers(properties -> ("prod".equals(properties.getProperty("environment")) ? MatchStatus.FOUND : MatchStatus.NOT_FOUND));
最終的にenvironment=prod url=https://foo.bar.com name=My Cool App
setMatchDefault
public void setMatchDefault(boolean matchDefault) それでも、すべてのdocument matchers
棄権が一致するドキュメントが一致することを示すフラグ。デフォルトはtrue
です。setResolutionMethod
リソースを解決するために使用するメソッド。各リソースはマップに変換されるため、このプロパティは、このファクトリからの最終出力に保持するマップエントリを決定するために使用されます。デフォルトはYamlProcessor.ResolutionMethod.OVERRIDE
です。setResources
ロードする YAMLresources
の場所を設定します。setSupportedTypes
YAML ドキュメントからロードできるサポートされている型を設定します。サポートされる型が構成されていない場合は、YAML ドキュメント内で検出される Java 標準クラス (
SafeConstructor
で定義されている) のみがサポートされます。サポートされていない型が見つかった場合、対応する YAML ノードが処理されるときにComposerException
がスローされます。- パラメーター:
supportedTypes
- サポートされている型、またはサポートされている型をクリアする空の配列- 導入:
- 5.1.16
- 関連事項:
process
サブクラスが提供されたリソースから解析された Yaml を処理する機会を提供します。各リソースは順番に解析され、内部のドキュメントがmatchers
に対してチェックされます。ドキュメントが一致する場合、プロパティとしての表現とともにコールバックに渡されます。setResolutionMethod(ResolutionMethod)
によっては、すべてのドキュメントが解析されるわけではありません。- パラメーター:
callback
- 一致するドキュメントが見つかったら委譲するコールバック- 関連事項:
createYaml
protected org.yaml.snakeyaml.Yaml createYaml()使用するYaml
インスタンスを作成します。デフォルトの実装では、"allowDuplicateKeys" フラグが
false
に設定され、組み込みの重複キー処理が有効になります。カスタムのサポートされる型が構成されている場合、デフォルトの実装では、YAML ドキュメントで検出されたサポートされていない型をフィルターで除外する
Yaml
インスタンスが作成されます。サポートされていない型が見つかった場合、ノードの処理時にComposerException
がスローされます。- 関連事項:
LoaderOptions.setAllowDuplicateKeys(boolean)
getFlattenedMap
指定されたマップのフラットバージョンを返します。ネストされたマップまたはコレクションの値を再帰的にたどります。結果のマップのエントリは、ソースと同じ順序を保持します。YamlProcessor.MatchCallback
からマップを使用して呼び出すと、結果にはYamlProcessor.MatchCallback
プロパティと同じ値が含まれます。- パラメーター:
source
- ソースマップ- 戻り値:
- 平坦化された地図
- 導入:
- 4.1.3