com.fiverworks.xone.model
クラス XoneModel

java.lang.Object
  拡張com.fiverworks.xone.model.XoneModel

public final class XoneModel
extends Object

Xoneのモデル関連の中心となるクラスです。このクラスに用意されているメソッドを利用して、Xoneのオブジェクトを生成 します。また、エレメントの型も定義されています。


フィールドの概要
static String ANY_INSTANCE
          Xoneオブジェクトの種類を表す文字列
static String BOOLEAN
          プリミティブな型
static String BOOLEAN_ARRAY
          プリミティブな型(配列)
static String BYTE
          プリミティブな型
static String BYTE_ARRAY
          プリミティブな型(配列)
static String CLASS
          Xoneオブジェクトの種類を表す文字列
static String DATE
          プリミティブな型
static String DATE_ARRAY
          プリミティブな型(配列)
static String DATE_TIME
          プリミティブな型
static String DATE_TIME_ARRAY
          プリミティブな型(配列)
static String DECIMAL
          プリミティブな型
static String DECIMAL_ARRAY
          プリミティブな型(配列)
static String DOUBLE
          プリミティブな型
static String DOUBLE_ARRAY
          プリミティブな型(配列)
static String FLOAT
          プリミティブな型
static String FLOAT_ARRAY
          プリミティブな型(配列)
static String INSTANCE
          Xoneオブジェクトの種類を表す文字列
static String INT
          プリミティブな型
static String INT_ARRAY
          プリミティブな型(配列)
static String INTEGER
          プリミティブな型
static String INTEGER_ARRAY
          プリミティブな型(配列)
static String LONG
          プリミティブな型
static String LONG_ARRAY
          プリミティブな型(配列)
static String SHORT
          プリミティブな型
static String SHORT_ARRAY
          プリミティブな型(配列)
static String STRING
          プリミティブな型
static String STRING_ARRAY
          プリミティブな型(配列)
static String TIME
          プリミティブな型
static String TIME_ARRAY
          プリミティブな型(配列)
static String TIMESTAMP
          プリミティブな型
static String TIMESTAMP_ARRAY
          プリミティブな型(配列)
 
メソッドの概要
static void checkName(String name)
          指定された名前(クラス名、インスタンス名、エレメント名、エレメントリスト名、フォルダ名)が命名規則に従った名前かどうか調べます。
static void checkType(String elementType)
          指定された型が正しい型かどうか調べます。
static String getCanonicalizedType(String elementType)
          指定された型を整えた形式で取得します。
static String[] getObjectTypes()
          Xoneのすべてのオブジェクトタイプを取得します。
static String getPrimitiveType(Class cls)
          指定したjavaクラスに対応するプリミティブ型を返します。
static Class getPrimitiveType(String elementType)
          指定されたプリミティブ型に対応するjavaクラスを取得します。
static List getPrimitiveTypeList()
          プリミティブ型の一覧(変更不可能なリスト)を取得します。
static String[] getPrimitiveTypes()
          プリミティブ型の配列を取得します。
static XoneClass getXoneClass(String path)
          指定されたパスのクラスがキャッシュ(Cache)にあれば取得します。
static XoneClass getXoneClass(String parent, String className)
          指定されたフォルダと名前のクラスがキャッシュ(Cache)にあれば取得します。
static boolean isArrayType(String elementType)
          指定された型が配列型かどうかを返します。
static boolean isLegalName(String name)
          指定された名前(クラス名、インスタンス名、エレメント名、エレメントリスト名、フォルダ名)が命名規則に従った名前かどうか返します。
static boolean isLegalType(String elementType)
          指定された型が正しい型かどうかを返します。
static boolean isPrimitiveType(String elementType)
          指定された型がプリミティブ型かどうかを返します。
static XoneAnyInstance newXoneAnyInstance(String className, String instanceName)
          指定されたクラス名と名前からAnyインスタンスを生成します。
static XoneAnyInstance[] newXoneAnyInstances(String className, String[] instanceNames)
          指定されたクラス名と名前からAnyインスタンスを生成します。
static XoneClass newXoneClass(String className, XoneElement[] elementArray, XoneElementList[] elementListArray)
          指定されたパラメータからクラスを生成します。
static XoneInstance newXoneInstance(XoneClass xc, String instanceName)
          指定されたクラスと名前からインスタンスを生成します。
static XoneInstance[] newXoneInstances(XoneClass xc, String[] instanceNames)
          指定されたクラスと名前からインスタンスを生成します。
 
クラス java.lang.Object から継承したメソッド
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

フィールドの詳細

INSTANCE

public static final String INSTANCE
Xoneオブジェクトの種類を表す文字列

関連項目:
定数フィールド値

ANY_INSTANCE

public static final String ANY_INSTANCE
Xoneオブジェクトの種類を表す文字列

関連項目:
定数フィールド値

CLASS

public static final String CLASS
Xoneオブジェクトの種類を表す文字列

関連項目:
定数フィールド値

BOOLEAN

public static final String BOOLEAN
プリミティブな型

関連項目:
定数フィールド値

BYTE

public static final String BYTE
プリミティブな型

関連項目:
定数フィールド値

SHORT

public static final String SHORT
プリミティブな型

関連項目:
定数フィールド値

INT

public static final String INT
プリミティブな型

関連項目:
定数フィールド値

LONG

public static final String LONG
プリミティブな型

関連項目:
定数フィールド値

FLOAT

public static final String FLOAT
プリミティブな型

関連項目:
定数フィールド値

DOUBLE

public static final String DOUBLE
プリミティブな型

関連項目:
定数フィールド値

INTEGER

public static final String INTEGER
プリミティブな型

関連項目:
定数フィールド値

DECIMAL

public static final String DECIMAL
プリミティブな型

関連項目:
定数フィールド値

STRING

public static final String STRING
プリミティブな型

関連項目:
定数フィールド値

TIME

public static final String TIME
プリミティブな型

関連項目:
定数フィールド値

DATE

public static final String DATE
プリミティブな型

関連項目:
定数フィールド値

DATE_TIME

public static final String DATE_TIME
プリミティブな型

関連項目:
定数フィールド値

TIMESTAMP

public static final String TIMESTAMP
プリミティブな型

関連項目:
定数フィールド値

BOOLEAN_ARRAY

public static final String BOOLEAN_ARRAY
プリミティブな型(配列)

関連項目:
定数フィールド値

BYTE_ARRAY

public static final String BYTE_ARRAY
プリミティブな型(配列)

関連項目:
定数フィールド値

SHORT_ARRAY

public static final String SHORT_ARRAY
プリミティブな型(配列)

関連項目:
定数フィールド値

INT_ARRAY

public static final String INT_ARRAY
プリミティブな型(配列)

関連項目:
定数フィールド値

LONG_ARRAY

public static final String LONG_ARRAY
プリミティブな型(配列)

関連項目:
定数フィールド値

FLOAT_ARRAY

public static final String FLOAT_ARRAY
プリミティブな型(配列)

関連項目:
定数フィールド値

DOUBLE_ARRAY

public static final String DOUBLE_ARRAY
プリミティブな型(配列)

関連項目:
定数フィールド値

INTEGER_ARRAY

public static final String INTEGER_ARRAY
プリミティブな型(配列)

関連項目:
定数フィールド値

DECIMAL_ARRAY

public static final String DECIMAL_ARRAY
プリミティブな型(配列)

関連項目:
定数フィールド値

STRING_ARRAY

public static final String STRING_ARRAY
プリミティブな型(配列)

関連項目:
定数フィールド値

TIME_ARRAY

public static final String TIME_ARRAY
プリミティブな型(配列)

関連項目:
定数フィールド値

DATE_ARRAY

public static final String DATE_ARRAY
プリミティブな型(配列)

関連項目:
定数フィールド値

DATE_TIME_ARRAY

public static final String DATE_TIME_ARRAY
プリミティブな型(配列)

関連項目:
定数フィールド値

TIMESTAMP_ARRAY

public static final String TIMESTAMP_ARRAY
プリミティブな型(配列)

関連項目:
定数フィールド値
メソッドの詳細

getXoneClass

public static XoneClass getXoneClass(String path)
指定されたパスのクラスがキャッシュ(Cache)にあれば取得します。

パラメータ:
path - クラスのパス
戻り値:
キャッシュにあればそのクラスを返します。なければnullを返します。
例外:
XoneRuntimeException - pathが不正な場合

getXoneClass

public static XoneClass getXoneClass(String parent,
                                     String className)
指定されたフォルダと名前のクラスがキャッシュ(Cache)にあれば取得します。

パラメータ:
parent - 親のフォルダ
className - クラス名
戻り値:
キャッシュにあればそのクラスを返します。なければnullを返します。
例外:
XoneRuntimeException - pathまたはnameが不正な場合

newXoneClass

public static XoneClass newXoneClass(String className,
                                     XoneElement[] elementArray,
                                     XoneElementList[] elementListArray)
指定されたパラメータからクラスを生成します。
elementArrayやelementListArrayの要素はコピーされてクラスに入ります。また、elementListArrayの中に 制約式やそのメッセージのリストがない場合は、内部で追加されます。

パラメータ:
className - クラス名
elementArray - エレメント配列
elementListArray - エレメントリスト配列
戻り値:
生成したクラス
例外:
XoneRuntimeException - classNameが不正な場合、あるいはelementArrayやelementListArrayの中にnullの要素がある場合

newXoneInstance

public static XoneInstance newXoneInstance(XoneClass xc,
                                           String instanceName)
指定されたクラスと名前からインスタンスを生成します。

パラメータ:
xc - インスタンスの元になるクラス
instanceName - インスタンスの名前
戻り値:
生成したインスタンス
例外:
XoneRuntimeException - xcがnullの場合、あるいはinstanceNameが不正な場合

newXoneInstances

public static XoneInstance[] newXoneInstances(XoneClass xc,
                                              String[] instanceNames)
指定されたクラスと名前からインスタンスを生成します。一度に複数のインスタンスを生成します。

パラメータ:
xc - インスタンスの元になるクラス
instanceNames - インスタンスの名前配列
戻り値:
生成したインスタンス配列
例外:
XoneRuntimeException - xcがnullの場合、instanceNamesがnullまたは長さが0、または要素中に不正な名前がある場合

newXoneAnyInstance

public static XoneAnyInstance newXoneAnyInstance(String className,
                                                 String instanceName)
指定されたクラス名と名前からAnyインスタンスを生成します。Anyインスタンスにはクラスは必要ありませんが、 識別のためにクラス名が必要です。

パラメータ:
className - クラス名
instanceName - Anyインスタンスの名前
戻り値:
生成したAnyインスタンス
例外:
XoneRuntimeException - instanceNameやclassNameが不正な場合

newXoneAnyInstances

public static XoneAnyInstance[] newXoneAnyInstances(String className,
                                                    String[] instanceNames)
指定されたクラス名と名前からAnyインスタンスを生成します。Anyインスタンスにはクラスは必要ありませんが、 識別のためにクラス名が必要です。一度に複数のAnyインスタンスを生成します。

パラメータ:
className - クラス名
instanceNames - Anyインスタンスの名前配列
戻り値:
生成したAnyインスタンス配列
例外:
XoneRuntimeException - classNameが不正な場合、instanceNamesがnullまたは長さが0、または要素中に不正な名前がある場合

getObjectTypes

public static String[] getObjectTypes()
Xoneのすべてのオブジェクトタイプを取得します。

戻り値:
定数のCLASSINSTANCEANY_INSTANCEで定義されている文字列が返されます。

getPrimitiveTypeList

public static List getPrimitiveTypeList()
プリミティブ型の一覧(変更不可能なリスト)を取得します。個々の要素は文字列です。

戻り値:
プリミティブ型のリスト

getPrimitiveTypes

public static String[] getPrimitiveTypes()
プリミティブ型の配列を取得します。

戻り値:
プリミティブ型の配列

getPrimitiveType

public static Class getPrimitiveType(String elementType)
指定されたプリミティブ型に対応するjavaクラスを取得します。
例えば、getPrimitiveType(XoneModel.INTEGER)では、java.math.BigInteger.classが返されます。

パラメータ:
elementType - プリミティブ型
戻り値:
対応するJavaクラス(存在しない場合はnull)

getPrimitiveType

public static String getPrimitiveType(Class cls)
指定したjavaクラスに対応するプリミティブ型を返します。
例えば、getPrimitiveType(java.lang.Float[].class)では、"float[]"(これはFLOAT_ARRAYとして定義されています) が返されます。

パラメータ:
cls - javaクラス
戻り値:
対応するプリミティブ型(存在しない場合はnull)

isArrayType

public static boolean isArrayType(String elementType)
指定された型が配列型かどうかを返します。

パラメータ:
elementType - 調べる型
戻り値:
配列型の場合はtrue、配列型でない場合や不正な型の場合はfalse

isPrimitiveType

public static boolean isPrimitiveType(String elementType)
指定された型がプリミティブ型かどうかを返します。

パラメータ:
elementType - 調べる型
戻り値:
プリミティブ型の場合はtrue、プリミティブ型でない場合や不正な型の場合はfalse

getCanonicalizedType

public static String getCanonicalizedType(String elementType)
指定された型を整えた形式で取得します。
たとえば、指定された型が"root/classes/Test [ ]"のように余分なスペースがあるとき、これを"root/classes/Test[]"にして返します。

パラメータ:
elementType - 型
戻り値:
形式を整えた型(不正な型の場合はnull)

checkName

public static void checkName(String name)
指定された名前(クラス名、インスタンス名、エレメント名、エレメントリスト名、フォルダ名)が命名規則に従った名前かどうか調べます。 isLegalNameがfalseならば例外を生成します。

パラメータ:
name - 名前
例外:
XoneRuntimeException - nameが不正な場合

checkType

public static void checkType(String elementType)
指定された型が正しい型かどうか調べます。 isLegalTypeがfalseならば例外をを生成します。

パラメータ:
elementType - 調べる型
例外:
XoneRuntimeException - nameが不正な場合

isLegalType

public static boolean isLegalType(String elementType)
指定された型が正しい型かどうかを返します。
指定された型がプリミティブ型のときはtrueを返します。
プリミティブ型でない場合、スラッシュ(/)またはピリオド(.)で区切られ、個々の要素が命名規則に従っているときはtrue、そうでないときはfalseを返します。
例1."ABC"はtrue(プリミティブ型ではないが命名規則に従っている)
例2."ABC.XYZ[]"はtrue(プリミティブ型ではないが個々の名前が命名規則に従っている)
例3."ABC[].XYZ"はfalse(プリミティブ型でなく、最初の名前が命名規則に従っていない)

パラメータ:
elementType - 調べる型
戻り値:
正しいときはtrue

isLegalName

public static boolean isLegalName(String name)
指定された名前(クラス名、インスタンス名、エレメント名、エレメントリスト名、フォルダ名)が命名規則に従った名前かどうか返します。
命名規則はJavaの識別子の命名規則と同じです。

パラメータ:
name - 調べる名前
戻り値:
正しい名前のときはtrue