クラス BeanDefinitionParserDelegate
java.lang.ObjectSE
org.springframework.beans.factory.xml.BeanDefinitionParserDelegate
XML Bean 定義の解析に使用されるステートフルデリゲートクラス。メインパーサーと拡張機能
BeanDefinitionParsers
または BeanDefinitionDecorators
の両方での使用を目的としています。- 導入:
- 2.0
- 作成者:
- Rob Harrop, Juergen Hoeller, Rod Johnson, Mark Fisher, Gary Russell
- 関連事項:
フィールドサマリー
修飾子と型フィールド説明static final StringSE
static final StringSE
static final StringSE
static final StringSE
static final StringSE
static final StringSE
static final StringSE
static final StringSE
static final StringSE
static final StringSE
static final StringSE
static final StringSE
static final StringSE
static final StringSE
static final StringSE
static final StringSE
static final StringSE
static final StringSE
static final StringSE
static final StringSE
static final StringSE
static final StringSE
static final StringSE
static final StringSE
static final StringSE
static final StringSE
static final StringSE
static final StringSE
static final StringSE
static final StringSE
static final StringSE
static final StringSE
static final StringSE
static final StringSE
static final StringSE
static final StringSE
static final StringSE
static final StringSE
static final StringSE
static final StringSE
protected final Log
static final StringSE
static final StringSE
static final StringSE
static final StringSE
static final StringSE
static final StringSE
static final StringSE
static final StringSE
static final StringSE
static final StringSE
static final StringSE
static final StringSE
static final StringSE
static final StringSE
static final StringSE
static final StringSE
static final StringSE
static final StringSE
static final StringSE
static final StringSE
static final StringSE
static final StringSE
true を表す T/F 属性の値。static final StringSE
static final StringSE
static final StringSE
static final StringSE
static final StringSE
コンストラクターのサマリー
コンストラクター説明BeanDefinitionParserDelegate
(XmlReaderContext readerContext) 提供されたXmlReaderContext
に関連付けられた新しい BeanDefinitionParserDelegate を作成します。方法の概要
修飾子と型メソッド説明protected TypedStringValue
buildTypedStringValue
(StringSE value, StringSE targetTypeName) 指定された生の値に対して型指定された文字列値オブジェクトを作成します。protected final ObjectSE
buildTypedStringValueForMap
(StringSE value, StringSE defaultTypeName, ElementSE entryEle) 指定された生の値に対して型指定された文字列値オブジェクトを作成します。protected void
checkNameUniqueness
(StringSE beanName, ListSE<StringSE> aliases, ElementSE beanElement) 指定された Bean 名とエイリアスが、現在の Bean 要素のネストレベル内でまだ使用されていないことを確認してください。protected AbstractBeanDefinition
createBeanDefinition
(StringSE className, StringSE parentName) 指定されたクラス名と親名の Bean 定義を作成します。decorateBeanDefinitionIfRequired
(ElementSE ele, BeanDefinitionHolder originalDef) 該当する場合は、ネームスペースハンドラーを使用して、指定された Bean 定義を装飾します。decorateBeanDefinitionIfRequired
(ElementSE ele, BeanDefinitionHolder originalDef, BeanDefinition containingBd) 該当する場合は、ネームスペースハンドラーを使用して、指定された Bean 定義を装飾します。decorateIfRequired
(NodeSE node, BeanDefinitionHolder originalDef, BeanDefinition containingBd) 該当する場合は、ネームスペースハンドラーを使用して、指定された Bean 定義を装飾します。protected void
指定されたソース要素の指定されたメッセージでエラーを報告します。protected void
error
(StringSE message, ElementSE source, ThrowableSE cause) 指定されたソース要素の指定されたメッセージでエラーを報告します。protected void
指定されたソース要素の指定されたメッセージでエラーを報告します。protected ObjectSE
extractSource
(ElementSE ele) SourceExtractor
を呼び出して、提供されたElement
SE からソースメタデータをプルします。StringSE[]
トップレベルの<beans/>
要素の 'default-autowire-candidates' 属性で提供されるパターンを返します。int
getAutowireMode
(StringSE attrValue) 指定された autowire 属性値をAbstractBeanDefinition
autowire 定数に解析します。トップレベルの<beans/>
要素の属性内に示されている Bean 定義のデフォルト設定を返します。デフォルトの定義オブジェクトを返します。getLocalName
(NodeSE node) 指定されたNode
SE のローカル名を取得します。getNamespaceURI
(NodeSE node) 指定されたノードの名前空間 URI を取得します。final XmlReaderContext
このヘルパーインスタンスに関連付けられているXmlReaderContext
を取得します。void
initDefaults
(ElementSE root) null
親デリゲートを想定してデフォルト設定を初期化します。void
initDefaults
(ElementSE root, BeanDefinitionParserDelegate parent) デフォルトの lazy-init、autowire、依存関係チェック設定、init-method、destroy-method、merge 設定を初期化します。boolean
isDefaultNamespace
(StringSE namespaceUri) 指定された URI がデフォルトのネームスペースを示しているかどうかを判断します。boolean
isDefaultNamespace
(NodeSE node) 指定されたノードがデフォルトの名前空間を示しているかどうかを判別します。boolean
nodeNameEquals
(NodeSE node, StringSE desiredName) 指定されたノードの名前が指定された名前と等しいかどうかを判別します。parseArrayElement
(ElementSE arrayEle, BeanDefinition bd) 配列要素を解析します。parseBeanDefinitionAttributes
(ElementSE ele, StringSE beanName, BeanDefinition containingBean, AbstractBeanDefinition bd) 指定された Bean 要素の属性を指定された Bean * 定義に適用します。指定された<bean>
要素を解析します。parseBeanDefinitionElement
(ElementSE ele, StringSE beanName, BeanDefinition containingBean) 名前やエイリアスに関係なく、Bean 定義自体を解析します。parseBeanDefinitionElement
(ElementSE ele, BeanDefinition containingBean) 指定された<bean>
要素を解析します。protected void
parseCollectionElements
(NodeListSE elementNodes, CollectionSE<ObjectSE> target, BeanDefinition bd, StringSE defaultElementType) void
constructor-arg 要素を解析します。void
parseConstructorArgElements
(ElementSE beanEle, BeanDefinition bd) 指定された Bean 要素のコンストラクター引数サブ要素を解析します。カスタム要素を解析します(デフォルトの名前空間の外)。parseCustomElement
(ElementSE ele, BeanDefinition containingBd) カスタム要素を解析します(デフォルトの名前空間の外)。指定された 'idref' 要素の型指定された文字列値オブジェクトを返します。protected ObjectSE
parseKeyElement
(ElementSE keyEle, BeanDefinition bd, StringSE defaultKeyTypeName) マップ要素のキーサブ要素を解析します。parseListElement
(ElementSE collectionEle, BeanDefinition bd) リスト要素を解析します。void
parseLookupOverrideSubElements
(ElementSE beanEle, MethodOverrides overrides) 指定された Bean 要素の lookup-override サブ要素を解析します。parseMapElement
(ElementSE mapEle, BeanDefinition bd) マップ要素を解析します。boolean
parseMergeAttribute
(ElementSE collectionElement) 存在する場合、コレクション要素のマージ属性を解析します。void
parseMetaElements
(ElementSE ele, BeanMetadataAttributeAccessor attributeAccessor) 存在する場合、指定された要素のメタ要素を解析します。void
parsePropertyElement
(ElementSE ele, BeanDefinition bd) プロパティ要素を解析します。void
parsePropertyElements
(ElementSE beanEle, BeanDefinition bd) 指定された Bean 要素のプロパティサブ要素を解析します。プロパティ、または constructor-arg 要素の値、ref、コレクションのサブ要素を解析します。parsePropertySubElement
(ElementSE ele, BeanDefinition bd, StringSE defaultValueType) プロパティ、または constructor-arg 要素の値、ref、コレクションのサブ要素を解析します。parsePropertyValue
(ElementSE ele, BeanDefinition bd, StringSE propertyName) プロパティ要素の値を取得します。parsePropsElement
(ElementSE propsEle) props 要素を解析します。void
修飾子要素を解析します。void
parseQualifierElements
(ElementSE beanEle, AbstractBeanDefinition bd) 指定された Bean 要素の修飾子サブ要素を解析します。void
parseReplacedMethodSubElements
(ElementSE beanEle, MethodOverrides overrides) 指定された Bean 要素の置換されたメソッドのサブ要素を解析します。parseSetElement
(ElementSE collectionEle, BeanDefinition bd) セット要素を解析します。parseValueElement
(ElementSE ele, StringSE defaultTypeName) 指定された値要素の型指定された文字列値オブジェクトを返します。protected void
populateDefaults
(DocumentDefaultsDefinition defaults, DocumentDefaultsDefinition parentDefaults, ElementSE root) 指定された DocumentDefaultsDefinition インスタンスに、デフォルトのレイジーイニット、オートワイヤー、依存関係チェック設定、初期化メソッド、破棄メソッド、マージ設定を入力します。
フィールドの詳細
BEANS_NAMESPACE_URI
- 関連事項:
MULTI_VALUE_ATTRIBUTE_DELIMITERS
- 関連事項:
TRUE_VALUE
true を表す T/F 属性の値。それ以外はすべて偽を表します。- 関連事項:
FALSE_VALUE
- 関連事項:
DEFAULT_VALUE
- 関連事項:
DESCRIPTION_ELEMENT
- 関連事項:
AUTOWIRE_NO_VALUE
- 関連事項:
AUTOWIRE_BY_NAME_VALUE
- 関連事項:
AUTOWIRE_BY_TYPE_VALUE
- 関連事項:
AUTOWIRE_CONSTRUCTOR_VALUE
- 関連事項:
AUTOWIRE_AUTODETECT_VALUE
- 関連事項:
NAME_ATTRIBUTE
- 関連事項:
BEAN_ELEMENT
- 関連事項:
META_ELEMENT
- 関連事項:
ID_ATTRIBUTE
- 関連事項:
PARENT_ATTRIBUTE
- 関連事項:
CLASS_ATTRIBUTE
- 関連事項:
ABSTRACT_ATTRIBUTE
- 関連事項:
SCOPE_ATTRIBUTE
- 関連事項:
LAZY_INIT_ATTRIBUTE
- 関連事項:
AUTOWIRE_ATTRIBUTE
- 関連事項:
AUTOWIRE_CANDIDATE_ATTRIBUTE
- 関連事項:
PRIMARY_ATTRIBUTE
- 関連事項:
DEPENDS_ON_ATTRIBUTE
- 関連事項:
INIT_METHOD_ATTRIBUTE
- 関連事項:
DESTROY_METHOD_ATTRIBUTE
- 関連事項:
FACTORY_METHOD_ATTRIBUTE
- 関連事項:
FACTORY_BEAN_ATTRIBUTE
- 関連事項:
CONSTRUCTOR_ARG_ELEMENT
- 関連事項:
INDEX_ATTRIBUTE
- 関連事項:
TYPE_ATTRIBUTE
- 関連事項:
VALUE_TYPE_ATTRIBUTE
- 関連事項:
KEY_TYPE_ATTRIBUTE
- 関連事項:
PROPERTY_ELEMENT
- 関連事項:
REF_ATTRIBUTE
- 関連事項:
VALUE_ATTRIBUTE
- 関連事項:
LOOKUP_METHOD_ELEMENT
- 関連事項:
REPLACED_METHOD_ELEMENT
- 関連事項:
REPLACER_ATTRIBUTE
- 関連事項:
ARG_TYPE_ELEMENT
- 関連事項:
ARG_TYPE_MATCH_ATTRIBUTE
- 関連事項:
REF_ELEMENT
- 関連事項:
IDREF_ELEMENT
- 関連事項:
BEAN_REF_ATTRIBUTE
- 関連事項:
PARENT_REF_ATTRIBUTE
- 関連事項:
VALUE_ELEMENT
- 関連事項:
NULL_ELEMENT
- 関連事項:
ARRAY_ELEMENT
- 関連事項:
LIST_ELEMENT
- 関連事項:
SET_ELEMENT
- 関連事項:
MAP_ELEMENT
- 関連事項:
ENTRY_ELEMENT
- 関連事項:
KEY_ELEMENT
- 関連事項:
KEY_ATTRIBUTE
- 関連事項:
KEY_REF_ATTRIBUTE
- 関連事項:
VALUE_REF_ATTRIBUTE
- 関連事項:
PROPS_ELEMENT
- 関連事項:
PROP_ELEMENT
- 関連事項:
MERGE_ATTRIBUTE
- 関連事項:
QUALIFIER_ELEMENT
- 関連事項:
QUALIFIER_ATTRIBUTE_ELEMENT
- 関連事項:
DEFAULT_LAZY_INIT_ATTRIBUTE
- 関連事項:
DEFAULT_MERGE_ATTRIBUTE
- 関連事項:
DEFAULT_AUTOWIRE_ATTRIBUTE
- 関連事項:
DEFAULT_AUTOWIRE_CANDIDATES_ATTRIBUTE
- 関連事項:
DEFAULT_INIT_METHOD_ATTRIBUTE
- 関連事項:
DEFAULT_DESTROY_METHOD_ATTRIBUTE
- 関連事項:
logger
コンストラクターの詳細
BeanDefinitionParserDelegate
提供されたXmlReaderContext
に関連付けられた新しい BeanDefinitionParserDelegate を作成します。
メソッドの詳細
getReaderContext
このヘルパーインスタンスに関連付けられているXmlReaderContext
を取得します。extractSource
SourceExtractor
を呼び出して、提供されたElement
SE からソースメタデータをプルします。error
指定されたソース要素の指定されたメッセージでエラーを報告します。error
指定されたソース要素の指定されたメッセージでエラーを報告します。error
指定されたソース要素の指定されたメッセージでエラーを報告します。initDefaults
null
親デリゲートを想定してデフォルト設定を初期化します。initDefaults
デフォルトの lazy-init、autowire、依存関係チェック設定、init-method、destroy-method、merge 設定を初期化します。デフォルトが明示的にローカルに設定されていない場合に備えて、指定された親にフォールバックすることにより、ネストされた 'beans' 要素ユースケースをサポートします。populateDefaults
protected void populateDefaults(DocumentDefaultsDefinition defaults, @Nullable DocumentDefaultsDefinition parentDefaults, ElementSE root) 指定された DocumentDefaultsDefinition インスタンスに、デフォルトのレイジーイニット、オートワイヤー、依存関係チェック設定、初期化メソッド、破棄メソッド、マージ設定を入力します。デフォルトが明示的にローカルに設定されていない場合に備えて、parentDefaults
にフォールバックすることにより、ネストされた 'beans' 要素ユースケースをサポートします。- パラメーター:
defaults
- 設定するデフォルトparentDefaults
- 親 BeanDefinitionParserDelegate(存在する場合)はデフォルトでフォールバックしますroot
- 現在の Bean 定義ドキュメントのルート要素 (またはネストされた Bean 要素)
getDefaults
デフォルトの定義オブジェクトを返します。getBeanDefinitionDefaults
トップレベルの<beans/>
要素の属性内に示されている Bean 定義のデフォルト設定を返します。getAutowireCandidatePatterns
トップレベルの<beans/>
要素の 'default-autowire-candidates' 属性で提供されるパターンを返します。parseBeanDefinitionElement
parseBeanDefinitionElement
@Nullable public BeanDefinitionHolder parseBeanDefinitionElement(ElementSE ele, @Nullable BeanDefinition containingBean) checkNameUniqueness
protected void checkNameUniqueness(StringSE beanName, ListSE<StringSE> aliases, ElementSE beanElement) 指定された Bean 名とエイリアスが、現在の Bean 要素のネストレベル内でまだ使用されていないことを確認してください。parseBeanDefinitionElement
@Nullable public AbstractBeanDefinition parseBeanDefinitionElement(ElementSE ele, StringSE beanName, @Nullable BeanDefinition containingBean) 名前やエイリアスに関係なく、Bean 定義自体を解析します。Bean 定義の解析中に問題が発生した場合、null
を返すことがあります。parseBeanDefinitionAttributes
public AbstractBeanDefinition parseBeanDefinitionAttributes(ElementSE ele, StringSE beanName, @Nullable BeanDefinition containingBean, AbstractBeanDefinition bd) 指定された Bean 要素の属性を指定された Bean * 定義に適用します。- パラメーター:
ele
- Bean 宣言要素beanName
- Bean 名containingBean
- Bean 定義を含む- 戻り値:
- Bean 要素の属性に従って初期化された Bean 定義
createBeanDefinition
protected AbstractBeanDefinition createBeanDefinition(@Nullable StringSE className, @Nullable StringSE parentName) throws ClassNotFoundExceptionSE 指定されたクラス名と親名の Bean 定義を作成します。- パラメーター:
className
- Bean クラスの名前parentName
- Bean の親 Bean の名前- 戻り値:
- 新しく作成された Bean 定義
- 例外:
ClassNotFoundExceptionSE
- Bean クラス解決が試みられたが失敗した場合
parseMetaElements
存在する場合、指定された要素のメタ要素を解析します。getAutowireMode
指定された autowire 属性値をAbstractBeanDefinition
autowire 定数に解析します。parseConstructorArgElements
指定された Bean 要素のコンストラクター引数サブ要素を解析します。parsePropertyElements
指定された Bean 要素のプロパティサブ要素を解析します。parseQualifierElements
指定された Bean 要素の修飾子サブ要素を解析します。parseLookupOverrideSubElements
指定された Bean 要素の lookup-override サブ要素を解析します。parseReplacedMethodSubElements
指定された Bean 要素の置換されたメソッドのサブ要素を解析します。parseConstructorArgElement
constructor-arg 要素を解析します。parsePropertyElement
プロパティ要素を解析します。parseQualifierElement
修飾子要素を解析します。parsePropertyValue
@Nullable public ObjectSE parsePropertyValue(ElementSE ele, BeanDefinition bd, @Nullable StringSE propertyName) プロパティ要素の値を取得します。リストなどの場合もあります。コンストラクター引数にも使用されます。この場合、"propertyName" は null になります。parsePropertySubElement
プロパティ、または constructor-arg 要素の値、ref、コレクションのサブ要素を解析します。- パラメーター:
ele
- property 要素のサブ要素。まだどちらかわかりませんbd
- 現在の Bean 定義 (もしあれば)
parsePropertySubElement
@Nullable public ObjectSE parsePropertySubElement(ElementSE ele, @Nullable BeanDefinition bd, @Nullable StringSE defaultValueType) プロパティ、または constructor-arg 要素の値、ref、コレクションのサブ要素を解析します。- パラメーター:
ele
- property 要素のサブ要素。まだどちらかわかりませんbd
- 現在の Bean 定義 (もしあれば)defaultValueType
- 作成される可能性のある<value>
タグのデフォルトの型(クラス名)
parseIdRefElement
指定された 'idref' 要素の型指定された文字列値オブジェクトを返します。parseValueElement
指定された値要素の型指定された文字列値オブジェクトを返します。buildTypedStringValue
protected TypedStringValue buildTypedStringValue(StringSE value, @Nullable StringSE targetTypeName) throws ClassNotFoundExceptionSE 指定された生の値に対して型指定された文字列値オブジェクトを作成します。parseArrayElement
配列要素を解析します。parseListElement
リスト要素を解析します。parseSetElement
セット要素を解析します。parseCollectionElements
protected void parseCollectionElements(NodeListSE elementNodes, CollectionSE<ObjectSE> target, @Nullable BeanDefinition bd, StringSE defaultElementType) parseMapElement
マップ要素を解析します。buildTypedStringValueForMap
protected final ObjectSE buildTypedStringValueForMap(StringSE value, StringSE defaultTypeName, ElementSE entryEle) 指定された生の値に対して型指定された文字列値オブジェクトを作成します。- 関連事項:
parseKeyElement
@Nullable protected ObjectSE parseKeyElement(ElementSE keyEle, @Nullable BeanDefinition bd, StringSE defaultKeyTypeName) マップ要素のキーサブ要素を解析します。parsePropsElement
props 要素を解析します。parseMergeAttribute
存在する場合、コレクション要素のマージ属性を解析します。parseCustomElement
カスタム要素を解析します(デフォルトの名前空間の外)。- パラメーター:
ele
- 解析する要素- 戻り値:
- 結果の Bean 定義
parseCustomElement
@Nullable public BeanDefinition parseCustomElement(ElementSE ele, @Nullable BeanDefinition containingBd) カスタム要素を解析します(デフォルトの名前空間の外)。- パラメーター:
ele
- 解析する要素containingBd
- 含まれている Bean 定義 (もしあれば)- 戻り値:
- 結果の Bean 定義
decorateBeanDefinitionIfRequired
public BeanDefinitionHolder decorateBeanDefinitionIfRequired(ElementSE ele, BeanDefinitionHolder originalDef) 該当する場合は、ネームスペースハンドラーを使用して、指定された Bean 定義を装飾します。- パラメーター:
ele
- 現在の要素originalDef
- 現在の Bean 定義- 戻り値:
- 装飾された Bean 定義
decorateBeanDefinitionIfRequired
public BeanDefinitionHolder decorateBeanDefinitionIfRequired(ElementSE ele, BeanDefinitionHolder originalDef, @Nullable BeanDefinition containingBd) 該当する場合は、ネームスペースハンドラーを使用して、指定された Bean 定義を装飾します。- パラメーター:
ele
- 現在の要素originalDef
- 現在の Bean 定義containingBd
- 含まれている Bean 定義 (もしあれば)- 戻り値:
- 装飾された Bean 定義
decorateIfRequired
public BeanDefinitionHolder decorateIfRequired(NodeSE node, BeanDefinitionHolder originalDef, @Nullable BeanDefinition containingBd) 該当する場合は、ネームスペースハンドラーを使用して、指定された Bean 定義を装飾します。- パラメーター:
node
- 現在の子ノードoriginalDef
- 現在の Bean 定義containingBd
- 含まれている Bean 定義 (もしあれば)- 戻り値:
- 装飾された Bean 定義
getNamespaceURI
指定されたノードの名前空間 URI を取得します。デフォルトの実装では
Node.getNamespaceURI()
を使用します。サブクラスは、デフォルトの実装をオーバーライドして、別の名前空間識別メカニズムを提供できます。- パラメーター:
node
- ノード
getLocalName
指定されたNode
SE のローカル名を取得します。デフォルトの実装は
Node.getLocalName()
を呼び出します。サブクラスはデフォルト実装をオーバーライドして、ローカル名を取得するための別のメカニズムを提供する場合があります。- パラメーター:
node
-Node
nodeNameEquals
指定されたノードの名前が指定された名前と等しいかどうかを判別します。デフォルトの実装では、指定された名前を
Node.getNodeName()
およびNode.getLocalName()
の両方に対してチェックします。サブクラスはデフォルトの実装をオーバーライドして、ノード名を比較するための別のメカニズムを提供できます。
- パラメーター:
node
- 比較するノードdesiredName
- チェックする名前
isDefaultNamespace
指定された URI がデフォルトのネームスペースを示しているかどうかを判断します。isDefaultNamespace
指定されたノードがデフォルトの名前空間を示しているかどうかを判別します。