shohaku.core.beans
クラス BeanUtilities

java.lang.Object
  拡張shohaku.core.beans.BeanUtilities

public class BeanUtilities
extends java.lang.Object

JavaBean を制御するユーティリティを提供します。

ライブラリの依存性を最小化する方針から JakartaBeanUtils 等の高機能ライブラリは使用しません。
コアライブラリには利用頻度の高い機能のみを定義し、必要に応じて他のライブラリを使用します。


コンストラクタの概要
BeanUtilities()
           
 
メソッドの概要
static java.lang.reflect.Field getAccessibleField(java.lang.Class c, java.lang.String fieldName)
          アクセス可能なフィールドを検索して返します。
static java.lang.reflect.Constructor getConstructor(java.lang.Class c, java.lang.Class[] parameterTypes)
          処理の対象となるコンストラクタオブジェクトを返却します。
static java.lang.Object getListProperty(java.lang.Object bean, java.lang.String pattern)
          配列またはリストからパターン文字列の示すインデックスの要素を返します。
static java.lang.reflect.Constructor getMatchingAccessibleConstructor(java.lang.Class c)
          パラメータが空のアクセス可能なコンストラクタを検索して返します。
static java.lang.reflect.Constructor getMatchingAccessibleConstructor(java.lang.Class c, java.lang.Class[] parameterTypes)
          パラメータを割り当てられるアクセス可能なコンストラクタを検索して返します。
static java.lang.reflect.Method getMatchingAccessibleGetProperty(java.lang.Class c, java.lang.String propertyName, java.lang.Class parameterType)
          パラメータを割り当てられるアクセス可能なプロパティの取得メソッドを検索して返します。
static java.lang.reflect.Method getMatchingAccessibleGetProperty(java.lang.Class c, java.lang.String propertyName, java.lang.Class[] parameterTypes)
          パラメータを割り当てられるアクセス可能なプロパティの取得メソッドを検索して返します。
static java.lang.reflect.Method getMatchingAccessibleMethod(java.lang.Class c, java.lang.String methodName)
          パラメータを持たないアクセス可能なメソッドを検索して返します。
static java.lang.reflect.Method getMatchingAccessibleMethod(java.lang.Class c, java.lang.String methodName, java.lang.Class parameterType)
          パラメータを割り当てられるアクセス可能なメソッドを検索して返します。
static java.lang.reflect.Method getMatchingAccessibleMethod(java.lang.Class c, java.lang.String methodName, java.lang.Class[] parameterTypes)
          パラメータを割り当てられるアクセス可能なメソッドを検索して返します。
static java.lang.reflect.Method getMatchingAccessibleSetProperty(java.lang.Class c, java.lang.String propertyName, java.lang.Class parameterType)
          パラメータを割り当てられるアクセス可能なプロパティの設定メソッドを検索して返します。
static java.lang.reflect.Method getMatchingAccessibleSetProperty(java.lang.Class c, java.lang.String propertyName, java.lang.Class[] parameterTypes)
          パラメータを割り当てられるアクセス可能なプロパティの設定メソッドを検索して返します。
static java.lang.reflect.Method getMethod(java.lang.Class c, java.lang.String methodName, java.lang.Class[] parameterTypes)
          指定されたクラスから処理の対象となるメソッドオブジェクトを返却します。
static java.lang.Object getMethodProperty(java.lang.Object bean, java.lang.String pattern, java.lang.Object[] args)
          ビーンからパターン文字列の示すメソッドを実行して戻り値を返します。
static java.lang.Object getNestedProperty(java.lang.Object bean, java.lang.String pattern, java.lang.Object[] args)
          指定された参照パターンに基づきプロパティまたはメソッド、配列・リストの要素に再起的にアクセスして値を返却します。
static java.util.Map getProperties(java.lang.Object bean)
          ビーンのプロパティをマップに格納して返却します。
static java.lang.Object getProperty(java.lang.Object bean, java.lang.String name)
          ビーンからプロパティ名の示すプロパティを取得して返します。
static java.beans.PropertyDescriptor[] getPropertyDescriptors(java.lang.Class beanClass)
          ビーンの java.beans.PropertyDescriptor を返却します。
static java.beans.PropertyDescriptor[] getPropertyDescriptors(java.lang.Object bean)
          ビーンの java.beans.PropertyDescriptor を返却します。
static java.lang.Object invokeMethod(java.lang.Class c, java.lang.Object obj, java.lang.reflect.Method method, java.lang.Object[] parameterValues)
          指定されたインスタンスとクラスからメソッドを呼び出し結果を返します。
static java.lang.Object invokeMethod(java.lang.Class c, java.lang.Object obj, java.lang.String methodName)
          指定されたインスタンスとクラスからメソッドを呼び出し結果を返します。
static java.lang.Object invokeMethod(java.lang.Class c, java.lang.Object obj, java.lang.String methodName, java.lang.Class[] parameterTypes, java.lang.Object[] parameterValues)
          指定されたインスタンスとクラスからメソッドを呼び出し結果を返します。
static java.lang.Object invokeMethod(java.lang.Class c, java.lang.Object obj, java.lang.String methodName, java.lang.Object[] parameterValues)
          指定されたインスタンスとクラスからメソッドを呼び出し結果を返します。
static java.lang.Object newInstance(java.lang.Class c)
          パラメータを指定したコンストラクタからインスタンスを生成して返却します。
static java.lang.Object newInstance(java.lang.Class c, java.lang.Class[] parameterTypes, java.lang.Object[] parameterValues)
          パラメータを指定したコンストラクタからインスタンスを生成して返却します。
static java.lang.Object newInstance(java.lang.Class c, java.lang.Object[] parameterValues)
          パラメータを指定したコンストラクタからインスタンスを生成して返却します。
static java.lang.String toBeanString(java.lang.Object bean)
          ビーンのプロパティを文字列に変換して返却します。
static java.lang.Class[] toTypes(java.lang.Object[] args)
          オブジェクトの配列を基にその要素のクラスの配列を生成して返却する。
 
クラス java.lang.Object から継承したメソッド
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

コンストラクタの詳細

BeanUtilities

public BeanUtilities()
メソッドの詳細

getProperties

public static java.util.Map getProperties(java.lang.Object bean)
                                   throws InvocationBeansException
ビーンのプロパティをマップに格納して返却します。

パラメータ:
bean - ビーンのインスタンス
戻り値:
全てのプロパティを格納するマップ
例外:
InvocationBeansException - 処理の呼出に失敗した場合発生する

toBeanString

public static java.lang.String toBeanString(java.lang.Object bean)
                                     throws InvocationBeansException
ビーンのプロパティを文字列に変換して返却します。

パラメータ:
bean - ビーンのインスタンス
戻り値:
ビーンのプロパティの文字列表現
例外:
InvocationBeansException - 処理の呼出に失敗した場合発生する

getNestedProperty

public static java.lang.Object getNestedProperty(java.lang.Object bean,
                                                 java.lang.String pattern,
                                                 java.lang.Object[] args)
                                          throws InvocationBeansException
指定された参照パターンに基づきプロパティまたはメソッド、配列・リストの要素に再起的にアクセスして値を返却します。

パラメータ:
bean - ビーンのインスタンス
pattern - 参照パターン
args - 参照引数
戻り値:
参照パターンの示すネストされたプロパティ
例外:
InvocationBeansException - 処理の呼出に失敗した場合発生する

getListProperty

public static java.lang.Object getListProperty(java.lang.Object bean,
                                               java.lang.String pattern)
                                        throws InvocationBeansException
配列またはリストからパターン文字列の示すインデックスの要素を返します。

パラメータ:
bean - ビーンのインスタンス
pattern - 参照パターン
戻り値:
パターン文字列の示す配列またはリストの要素
例外:
InvocationBeansException - 処理の呼出に失敗した場合発生する

getProperty

public static java.lang.Object getProperty(java.lang.Object bean,
                                           java.lang.String name)
                                    throws InvocationBeansException
ビーンからプロパティ名の示すプロパティを取得して返します。

パラメータ:
bean - ビーンのインスタンス
name - プロパティ名
戻り値:
プロパティ
例外:
InvocationBeansException - 処理の呼出に失敗した場合発生する

getMethodProperty

public static java.lang.Object getMethodProperty(java.lang.Object bean,
                                                 java.lang.String pattern,
                                                 java.lang.Object[] args)
                                          throws InvocationBeansException
ビーンからパターン文字列の示すメソッドを実行して戻り値を返します。

パラメータ:
bean - ビーンのインスタンス
pattern - 参照パターン
args - 参照引数
戻り値:
パターン文字列の示すメソッドの戻り値
例外:
InvocationBeansException - 処理の呼出に失敗した場合発生する

toTypes

public static java.lang.Class[] toTypes(java.lang.Object[] args)
オブジェクトの配列を基にその要素のクラスの配列を生成して返却する。

パラメータ:
args - 生成基のオブジェクトの配列
戻り値:
生成基に対応するクラスの配列

getPropertyDescriptors

public static java.beans.PropertyDescriptor[] getPropertyDescriptors(java.lang.Object bean)
ビーンの java.beans.PropertyDescriptor を返却します。

パラメータ:
bean - ビーンのインスタンス
戻り値:
ビーンの java.beans.PropertyDescriptor

getPropertyDescriptors

public static java.beans.PropertyDescriptor[] getPropertyDescriptors(java.lang.Class beanClass)
ビーンの java.beans.PropertyDescriptor を返却します。

パラメータ:
beanClass - ビーンのクラス
戻り値:
ビーンの java.beans.PropertyDescriptor

getAccessibleField

public static java.lang.reflect.Field getAccessibleField(java.lang.Class c,
                                                         java.lang.String fieldName)
アクセス可能なフィールドを検索して返します。
フィールドが発見できない場合 null を返します。

パラメータ:
c - 検索するクラス
fieldName - フィールド名
戻り値:
アクセス可能なコンストラクタ、発見できない場合 null

getMatchingAccessibleConstructor

public static java.lang.reflect.Constructor getMatchingAccessibleConstructor(java.lang.Class c)
パラメータが空のアクセス可能なコンストラクタを検索して返します。
コンストラクタが発見できない場合 null を返します。

パラメータ:
c - 検索するクラス
戻り値:
アクセス可能なコンストラクタ、発見できない場合 null

getMatchingAccessibleConstructor

public static java.lang.reflect.Constructor getMatchingAccessibleConstructor(java.lang.Class c,
                                                                             java.lang.Class[] parameterTypes)
パラメータを割り当てられるアクセス可能なコンストラクタを検索して返します。
コンストラクタが発見できない場合 null を返します。

パラメータ:
c - 検索するクラス
parameterTypes - 引数のパラメータ型
戻り値:
アクセス可能なコンストラクタ、発見できない場合 null

getMatchingAccessibleSetProperty

public static java.lang.reflect.Method getMatchingAccessibleSetProperty(java.lang.Class c,
                                                                        java.lang.String propertyName,
                                                                        java.lang.Class parameterType)
パラメータを割り当てられるアクセス可能なプロパティの設定メソッドを検索して返します。
プロパティの設定メソッドが発見できない場合 null を返します。

パラメータ:
c - 検索するクラス
propertyName - 検索するプロパティ名
parameterType - 引数のプロパティ型
戻り値:
アクセス可能なプロパティの設定メソッド、発見できない場合 null

getMatchingAccessibleSetProperty

public static java.lang.reflect.Method getMatchingAccessibleSetProperty(java.lang.Class c,
                                                                        java.lang.String propertyName,
                                                                        java.lang.Class[] parameterTypes)
パラメータを割り当てられるアクセス可能なプロパティの設定メソッドを検索して返します。
プロパティの設定メソッドが発見できない場合 null を返します。

パラメータ:
c - 検索するクラス
propertyName - 検索するプロパティ名
parameterTypes - 引数のプロパティ型
戻り値:
アクセス可能なプロパティの設定メソッド、発見できない場合 null

getMatchingAccessibleGetProperty

public static java.lang.reflect.Method getMatchingAccessibleGetProperty(java.lang.Class c,
                                                                        java.lang.String propertyName,
                                                                        java.lang.Class parameterType)
パラメータを割り当てられるアクセス可能なプロパティの取得メソッドを検索して返します。
プロパティの取得メソッドが発見できない場合 null を返します。

パラメータ:
c - 検索するクラス
propertyName - 検索するプロパティ名
parameterType - 引数のプロパティ型
戻り値:
アクセス可能なプロパティの取得メソッド、発見できない場合 null

getMatchingAccessibleGetProperty

public static java.lang.reflect.Method getMatchingAccessibleGetProperty(java.lang.Class c,
                                                                        java.lang.String propertyName,
                                                                        java.lang.Class[] parameterTypes)
パラメータを割り当てられるアクセス可能なプロパティの取得メソッドを検索して返します。
プロパティの取得メソッドが発見できない場合 null を返します。

パラメータ:
c - 検索するクラス
propertyName - 検索するプロパティ名
parameterTypes - 引数のプロパティ型
戻り値:
アクセス可能なプロパティの取得メソッド、発見できない場合 null

getMatchingAccessibleMethod

public static java.lang.reflect.Method getMatchingAccessibleMethod(java.lang.Class c,
                                                                   java.lang.String methodName)
パラメータを持たないアクセス可能なメソッドを検索して返します。
メソッドが発見できない場合 null を返します。

パラメータ:
c - 検索するクラス
methodName - 検索するメソッド名
戻り値:
アクセス可能なメソッド、発見できない場合 null

getMatchingAccessibleMethod

public static java.lang.reflect.Method getMatchingAccessibleMethod(java.lang.Class c,
                                                                   java.lang.String methodName,
                                                                   java.lang.Class parameterType)
パラメータを割り当てられるアクセス可能なメソッドを検索して返します。
メソッドが発見できない場合 null を返します。

パラメータ:
c - 検索するクラス
methodName - 検索するメソッド名
parameterType - 引数のパラメータ型
戻り値:
アクセス可能なメソッド、発見できない場合 null

getMatchingAccessibleMethod

public static java.lang.reflect.Method getMatchingAccessibleMethod(java.lang.Class c,
                                                                   java.lang.String methodName,
                                                                   java.lang.Class[] parameterTypes)
パラメータを割り当てられるアクセス可能なメソッドを検索して返します。
メソッドが発見できない場合 null を返します。

パラメータ:
c - 検索するクラス
methodName - 検索するメソッド名
parameterTypes - 引数のパラメータ型
戻り値:
アクセス可能なメソッド、発見できない場合 null

newInstance

public static java.lang.Object newInstance(java.lang.Class c)
                                    throws InvocationBeansException
パラメータを指定したコンストラクタからインスタンスを生成して返却します。

パラメータ:
c -
戻り値:
例外:
InvocationBeansException

newInstance

public static java.lang.Object newInstance(java.lang.Class c,
                                           java.lang.Object[] parameterValues)
                                    throws InvocationBeansException
パラメータを指定したコンストラクタからインスタンスを生成して返却します。

パラメータ:
c -
parameterValues -
戻り値:
例外:
InvocationBeansException

newInstance

public static java.lang.Object newInstance(java.lang.Class c,
                                           java.lang.Class[] parameterTypes,
                                           java.lang.Object[] parameterValues)
                                    throws InvocationBeansException
パラメータを指定したコンストラクタからインスタンスを生成して返却します。

パラメータ:
c -
parameterTypes -
parameterValues -
戻り値:
例外:
InvocationBeansException

getConstructor

public static java.lang.reflect.Constructor getConstructor(java.lang.Class c,
                                                           java.lang.Class[] parameterTypes)
                                                    throws java.lang.NoSuchMethodException
処理の対象となるコンストラクタオブジェクトを返却します。

パラメータ:
c -
parameterTypes -
戻り値:
例外:
java.lang.NoSuchMethodException

invokeMethod

public static java.lang.Object invokeMethod(java.lang.Class c,
                                            java.lang.Object obj,
                                            java.lang.String methodName)
                                     throws InvocationBeansException
指定されたインスタンスとクラスからメソッドを呼び出し結果を返します。

パラメータ:
c -
obj -
methodName -
戻り値:
例外:
InvocationBeansException

invokeMethod

public static java.lang.Object invokeMethod(java.lang.Class c,
                                            java.lang.Object obj,
                                            java.lang.String methodName,
                                            java.lang.Object[] parameterValues)
                                     throws InvocationBeansException
指定されたインスタンスとクラスからメソッドを呼び出し結果を返します。

パラメータ:
c -
obj -
methodName -
parameterValues -
戻り値:
例外:
InvocationBeansException

invokeMethod

public static java.lang.Object invokeMethod(java.lang.Class c,
                                            java.lang.Object obj,
                                            java.lang.String methodName,
                                            java.lang.Class[] parameterTypes,
                                            java.lang.Object[] parameterValues)
                                     throws InvocationBeansException
指定されたインスタンスとクラスからメソッドを呼び出し結果を返します。

パラメータ:
c -
obj -
methodName -
parameterTypes -
parameterValues -
戻り値:
例外:
InvocationBeansException

invokeMethod

public static java.lang.Object invokeMethod(java.lang.Class c,
                                            java.lang.Object obj,
                                            java.lang.reflect.Method method,
                                            java.lang.Object[] parameterValues)
                                     throws InvocationBeansException
指定されたインスタンスとクラスからメソッドを呼び出し結果を返します。

パラメータ:
c -
obj -
method -
parameterValues -
戻り値:
例外:
InvocationBeansException

getMethod

public static java.lang.reflect.Method getMethod(java.lang.Class c,
                                                 java.lang.String methodName,
                                                 java.lang.Class[] parameterTypes)
                                          throws java.lang.NoSuchMethodException
指定されたクラスから処理の対象となるメソッドオブジェクトを返却します。

パラメータ:
c -
methodName -
parameterTypes -
戻り値:
例外:
java.lang.NoSuchMethodException