Spring Framework
PreEmptive Protection™ DashO™ for Android & Java における Spring Bean のサポートは、主として Spring Bean の特殊クラスによって提供されます。
これは、クラス名(または名前のパターン)と任意のエントリ ポイント(たとえば、init、destroy、および factory メソッド)で構成されています。
処理中、プロパティ メソッド(get*()
、is*()
、および set*(*)
)、パブリック コンストラクター、および構成されているエントリ ポイントが後に続いて、使用されていないメソッドを決定します。
クラス、構成されているエントリ ポイント、プロパティ メソッド、および非プロパティ メソッドの名前は、変更されるように設定することができます。
DashO は、各ビルド中に Spring XML ファイルをスキャンして、対応する Java クラスの名前を変更した場合には、XML ファイル内のすべてのクラス参照を更新します。 これは、直接クラス参照を更新するだけでなく、パラメーターや引数の型に挙げられているクラス名も更新します。 また DashO は、Bean プロパティの名前やエントリ ポイント メソッドの名前を変更した場合は、それらも更新します。 抽象 Bean(たとえば、クラスのない Bean 定義)では、関連するプロパティやメソッドの名前も、名前変更された Bean に関係していると見なされて更新されます。
DashO の Spring サポートを最大限に有効利用するためには、New Project Wizard を使用してプロジェクトを開始してから、必要に応じて、特殊クラスに対して個別調整を行うことをお勧めします。
New Project Wizard では、Spring XML ファイルを識別し、それらのファイルで Bean クラスの参照をスキャンして、Spring Bean の特殊クラスを構成します。 New Project Wizard は、Spring XML ファイル内の Bean 定義を検出すると、次のことを行います。
識別された
クラス
の、新しい Spring Bean 特殊クラスを作成します。XML で構成されている
init-method
属性またはdestroy-method
属性を探して、それらをエントリ ポイントとして特殊クラスに追加します。init-method
属性もdestroy-method
属性も見つからなかった場合は、それぞれdefault-init-method
属性またはdefault-destroy-method
属性を調べて、代わりにそれらをエントリ ポイントとして特殊クラスに追加します。Bean に直接構成されている
factory-method
を探して、エントリ ポイントとして特殊クラスに追加します。構成されている
lookup-method
要素またはreplaced-method
要素を探して、それらをエントリ ポイントとして特殊クラスに追加します。util:constant static-field
またはorg.springframework.beans.factory.config.FieldRetrievingFactoryBean
Bean を使用して参照されている定数値を探します。
SpringBean サンプル プロジェクトで DashO のサポートの例が示されているので、そちらをご覧ください。
メモ:
factory-bean
属性を使用している場合は、対応するfactory-method
をエントリ ポイントとして適切なクラスに手動で追加する必要があります。
replaced-method
機能を使用している場合は、名前を変更した後にarg-type
要素を使用して正しいメソッドが識別されるよう、署名を指定する必要があるかもしれません。
FieldRetrievingFactoryBean
を使用している場合、targetObject
属性はサポートされません。