Package org.iplass.mtp.entity
Class GenericEntity
java.lang.Object
org.iplass.mtp.entity.GenericEntity
- All Implemented Interfaces:
Serializable
,Entity
Entityのデータを表現するクラス。
key-value形式で、Entityのプロパティの値を保持。
- See Also:
-
Field Summary
Fields inherited from interface org.iplass.mtp.entity.Entity
CREATE_BY, CREATE_DATE, DESCRIPTION, END_DATE, LOCKED_BY, NAME, OID, RECYCLE_BIN_ID, START_DATE, STATE, STATE_INVALID_VALUE, STATE_VALID_VALUE, UPDATE_BY, UPDATE_DATE, VERSION
-
Constructor Summary
ConstructorDescriptionGenericEntity
(String definitionName) GenericEntity
(String definitionName, String oid, String name) GenericEntity
(EntityDefinition dataModelDefinition) -
Method Summary
Modifier and TypeMethodDescriptionvoid
applyProperties
(Map<String, Object> properties) copy()
shallow copyを行う。<T extends GenericEntity>
T引数の型のインスタンスとして、shallow copyを行う。deepCopy()
deep copyを行う(但し、Entityとしてのdeep copy)。 property値が、GenericEntityの場合は、deepCopy()を再帰呼び出し、 BinaryReference、SelectValueの場合は、copy()を呼び出し、 java.uti.Dateの場合は、clone()を呼び出し、 それ以外(プリミティブ型、immutable)の場合は、参照をそのまま保持。getName()
getOid()
保持しているPropertyの名前セットを返します。getState()
<P> P
propNameで表現されるプロパティを取得します。
注意
getValue(String, boolean)
をenableExpression=trueで呼び出します。 propNameはクライアントからの入力値を未検証のまま適用しないでください。 改竄された場合意図しないプロパティ値が取得される可能性があります。 enableExpression=falseで呼び出したい場合は、明示的にgetValue(String, boolean)
を利用してください。<P> P
propNameで表現されるプロパティを取得します。 enableExpression=trueの場合、propNameには、"."にてネストされたプロパティ、 "[index]"にて配列アクセスを指定可能。
例えば、 "role.condition[0].name"は、getValue("role").getValue("condition")[0].getValue("name")を示す。
注意
enableExpression=trueの場合、propNameはクライアントからの入力値を未検証のまま適用しないでください。 改竄された場合意図しないプロパティ値が取得される可能性があります。<P> P
getValueAs
(Class<P> type, String propName) 指定の属性名の属性値を取得します。
propNameには、"."にてネストされたプロパティ、"[index]"にて配列アクセスを指定可能です。
例えば、 "role.condition[0].name"は、getValue("role").getValue("condition")[0].getValue("name")を示します。
注意
propNameはクライアントからの入力値を未検証のまま適用しないでください。 改竄された場合意図しないプロパティ値が取得される可能性があります。
※現状の実装は、getValueと同じ(将来的には可能な限り値を変換するように実装する想定)。void
setCreateBy
(String createBy) void
setCreateDate
(Timestamp createDate) void
setDefinitionName
(String definitionName) void
setDescription
(String description) void
setEndDate
(Timestamp endDate) void
setLockedBy
(String lockedBy) void
void
void
setRecycleBinId
(Long recycleBinId) void
setStartDate
(Timestamp startDate) void
setState
(SelectValue state) void
setUpdateBy
(String updateBy) void
setUpdateDate
(Timestamp updateDate) void
propNameで表現されるプロパティにvalueをセットします。
注意
setValue(String, Object, boolean)
をenableExpression=trueで呼び出します。 propNameはクライアントからの入力値を未検証のまま適用しないでください。 改竄された場合意図しないプロパティに値ががセットされる可能性があります。
enableExpression=falseで呼び出したい場合は、明示的にsetValue(String, Object, boolean)
を利用してください。void
propNameで表現されるプロパティにvalueをセットします。 enableExpression=trueの場合、propNameには、"."にてネストされたプロパティ、 "[index]"にて配列アクセスを指定可能です。
例えば、 "role.condition[0].name"は、getValue("role").getValue("condition")[0].getValue("name")を示します。
注意
enableExpression=trueの場合、propNameはクライアントからの入力値を未検証のまま適用しないでください。 改竄された場合意図しないプロパティに値がセットされる可能性があります。void
setVersion
(Long version) toMap()
保持しているPropertyをMap形式で返す。 property値が、GenericEntityの場合は、再帰的にMapに変換する、 GenericEntity[]の場合はMapの配列に変換する、 BinaryReference、SelectValueの場合は、copy()を呼び出し、 java.uti.Dateの場合は、clone()を呼び出し、 それ以外(プリミティブ型、immutable)の場合は、参照をそのまま保持。toString()
-
Constructor Details
-
GenericEntity
public GenericEntity() -
GenericEntity
-
GenericEntity
-
GenericEntity
-
-
Method Details
-
applyProperties
-
toString
-
getValue
propNameで表現されるプロパティを取得します。
注意
getValue(String, boolean)
をenableExpression=trueで呼び出します。 propNameはクライアントからの入力値を未検証のまま適用しないでください。 改竄された場合意図しないプロパティ値が取得される可能性があります。 enableExpression=falseで呼び出したい場合は、明示的にgetValue(String, boolean)
を利用してください。 -
getValue
propNameで表現されるプロパティを取得します。 enableExpression=trueの場合、propNameには、"."にてネストされたプロパティ、 "[index]"にて配列アクセスを指定可能。
例えば、 "role.condition[0].name"は、getValue("role").getValue("condition")[0].getValue("name")を示す。
注意
enableExpression=trueの場合、propNameはクライアントからの入力値を未検証のまま適用しないでください。 改竄された場合意図しないプロパティ値が取得される可能性があります。- Parameters:
propName
-enableExpression
-- Returns:
-
setValue
propNameで表現されるプロパティにvalueをセットします。
注意
setValue(String, Object, boolean)
をenableExpression=trueで呼び出します。 propNameはクライアントからの入力値を未検証のまま適用しないでください。 改竄された場合意図しないプロパティに値ががセットされる可能性があります。
enableExpression=falseで呼び出したい場合は、明示的にsetValue(String, Object, boolean)
を利用してください。 -
setValue
propNameで表現されるプロパティにvalueをセットします。 enableExpression=trueの場合、propNameには、"."にてネストされたプロパティ、 "[index]"にて配列アクセスを指定可能です。
例えば、 "role.condition[0].name"は、getValue("role").getValue("condition")[0].getValue("name")を示します。
注意
enableExpression=trueの場合、propNameはクライアントからの入力値を未検証のまま適用しないでください。 改竄された場合意図しないプロパティに値がセットされる可能性があります。- Parameters:
propName
-value
-enableExpression
-
-
getOid
-
setOid
-
getName
-
setName
-
getCreateDate
- Specified by:
getCreateDate
in interfaceEntity
-
setCreateDate
- Specified by:
setCreateDate
in interfaceEntity
-
getUpdateDate
- Specified by:
getUpdateDate
in interfaceEntity
-
setUpdateDate
- Specified by:
setUpdateDate
in interfaceEntity
-
getCreateBy
- Specified by:
getCreateBy
in interfaceEntity
-
setCreateBy
- Specified by:
setCreateBy
in interfaceEntity
-
getUpdateBy
- Specified by:
getUpdateBy
in interfaceEntity
-
setUpdateBy
- Specified by:
setUpdateBy
in interfaceEntity
-
getValueAs
Description copied from interface:Entity
指定の属性名の属性値を取得します。
propNameには、"."にてネストされたプロパティ、"[index]"にて配列アクセスを指定可能です。
例えば、 "role.condition[0].name"は、getValue("role").getValue("condition")[0].getValue("name")を示します。
注意
propNameはクライアントからの入力値を未検証のまま適用しないでください。 改竄された場合意図しないプロパティ値が取得される可能性があります。
※現状の実装は、getValueと同じ(将来的には可能な限り値を変換するように実装する想定)。- Specified by:
getValueAs
in interfaceEntity
- Returns:
-
getDefinitionName
- Specified by:
getDefinitionName
in interfaceEntity
-
setDefinitionName
- Specified by:
setDefinitionName
in interfaceEntity
-
getDescription
- Specified by:
getDescription
in interfaceEntity
-
setDescription
- Specified by:
setDescription
in interfaceEntity
-
getVersion
- Specified by:
getVersion
in interfaceEntity
-
setVersion
- Specified by:
setVersion
in interfaceEntity
-
getState
-
setState
-
getLockedBy
- Specified by:
getLockedBy
in interfaceEntity
-
setLockedBy
- Specified by:
setLockedBy
in interfaceEntity
-
getStartDate
- Specified by:
getStartDate
in interfaceEntity
-
setStartDate
- Specified by:
setStartDate
in interfaceEntity
-
getEndDate
- Specified by:
getEndDate
in interfaceEntity
-
setEndDate
- Specified by:
setEndDate
in interfaceEntity
-
getRecycleBinId
- Specified by:
getRecycleBinId
in interfaceEntity
-
setRecycleBinId
- Specified by:
setRecycleBinId
in interfaceEntity
-
copy
shallow copyを行う。- Returns:
-
copyAs
引数の型のインスタンスとして、shallow copyを行う。- Returns:
-
deepCopy
deep copyを行う(但し、Entityとしてのdeep copy)。 property値が、GenericEntityの場合は、deepCopy()を再帰呼び出し、 BinaryReference、SelectValueの場合は、copy()を呼び出し、 java.uti.Dateの場合は、clone()を呼び出し、 それ以外(プリミティブ型、immutable)の場合は、参照をそのまま保持。- Returns:
-
getPropertyNames
保持しているPropertyの名前セットを返します。- Returns:
- Property名のセット
-
toMap
保持しているPropertyをMap形式で返す。 property値が、GenericEntityの場合は、再帰的にMapに変換する、 GenericEntity[]の場合はMapの配列に変換する、 BinaryReference、SelectValueの場合は、copy()を呼び出し、 java.uti.Dateの場合は、clone()を呼び出し、 それ以外(プリミティブ型、immutable)の場合は、参照をそのまま保持。- Returns:
-