パッケージ org.iplass.mtp.entity

クラス GenericEntity

java.lang.Object
org.iplass.mtp.entity.GenericEntity
すべての実装されたインタフェース:
java.io.Serializable, Entity
直系の既知のサブクラス:
Group, Rank, User

public class GenericEntity
extends java.lang.Object
implements Entity, java.io.Serializable
Entityのデータを表現するクラス。 key-value形式で、Entityのプロパティの値を保持。
関連項目:
直列化された形式
  • コンストラクタの詳細

  • メソッドの詳細

    • applyProperties

      public void applyProperties​(java.util.Map<java.lang.String,​java.lang.Object> properties)
    • toString

      public java.lang.String toString()
      オーバーライド:
      toString クラス内 java.lang.Object
    • getValue

      public <P> P getValue​(java.lang.String propName)
      propNameで表現されるプロパティを取得します。

      注意
      getValue(String, boolean)をenableExpression=trueで呼び出します。 propNameはクライアントからの入力値を未検証のまま適用しないでください。 改竄された場合意図しないプロパティ値が取得される可能性があります。 enableExpression=falseで呼び出したい場合は、明示的にgetValue(String, boolean)を利用してください。
      定義:
      getValue インタフェース内 Entity
      戻り値:
    • getValue

      public <P> P getValue​(java.lang.String propName, boolean enableExpression)
      propNameで表現されるプロパティを取得します。 enableExpression=trueの場合、propNameには、"."にてネストされたプロパティ、 "[index]"にて配列アクセスを指定可能。
      例えば、 "role.condition[0].name"は、getValue("role").getValue("condition")[0].getValue("name")を示す。

      注意
      enableExpression=trueの場合、propNameはクライアントからの入力値を未検証のまま適用しないでください。 改竄された場合意図しないプロパティ値が取得される可能性があります。
      パラメータ:
      propName -
      enableExpression -
      戻り値:
    • setValue

      public void setValue​(java.lang.String propName, java.lang.Object value)
      propNameで表現されるプロパティにvalueをセットします。

      注意
      setValue(String, Object, boolean)をenableExpression=trueで呼び出します。 propNameはクライアントからの入力値を未検証のまま適用しないでください。 改竄された場合意図しないプロパティに値ががセットされる可能性があります。
      enableExpression=falseで呼び出したい場合は、明示的にsetValue(String, Object, boolean)を利用してください。
      定義:
      setValue インタフェース内 Entity
    • setValue

      public void setValue​(java.lang.String propName, java.lang.Object value, boolean enableExpression)
      propNameで表現されるプロパティにvalueをセットします。 enableExpression=trueの場合、propNameには、"."にてネストされたプロパティ、 "[index]"にて配列アクセスを指定可能です。
      例えば、 "role.condition[0].name"は、getValue("role").getValue("condition")[0].getValue("name")を示します。

      注意
      enableExpression=trueの場合、propNameはクライアントからの入力値を未検証のまま適用しないでください。 改竄された場合意図しないプロパティに値がセットされる可能性があります。
      パラメータ:
      propName -
      value -
      enableExpression -
    • getOid

      public java.lang.String getOid()
      定義:
      getOid インタフェース内 Entity
    • setOid

      public void setOid​(java.lang.String oid)
      定義:
      setOid インタフェース内 Entity
    • getName

      public java.lang.String getName()
      定義:
      getName インタフェース内 Entity
    • setName

      public void setName​(java.lang.String name)
      定義:
      setName インタフェース内 Entity
    • getCreateDate

      public java.sql.Timestamp getCreateDate()
      定義:
      getCreateDate インタフェース内 Entity
    • setCreateDate

      public void setCreateDate​(java.sql.Timestamp createDate)
      定義:
      setCreateDate インタフェース内 Entity
    • getUpdateDate

      public java.sql.Timestamp getUpdateDate()
      定義:
      getUpdateDate インタフェース内 Entity
    • setUpdateDate

      public void setUpdateDate​(java.sql.Timestamp updateDate)
      定義:
      setUpdateDate インタフェース内 Entity
    • getCreateBy

      public java.lang.String getCreateBy()
      定義:
      getCreateBy インタフェース内 Entity
    • setCreateBy

      public void setCreateBy​(java.lang.String createBy)
      定義:
      setCreateBy インタフェース内 Entity
    • getUpdateBy

      public java.lang.String getUpdateBy()
      定義:
      getUpdateBy インタフェース内 Entity
    • setUpdateBy

      public void setUpdateBy​(java.lang.String updateBy)
      定義:
      setUpdateBy インタフェース内 Entity
    • getValueAs

      public <P> P getValueAs​(java.lang.Class<P> type, java.lang.String propName)
      インタフェースからコピーされた説明: Entity
      指定の属性名の属性値を取得します。
      propNameには、"."にてネストされたプロパティ、"[index]"にて配列アクセスを指定可能です。
      例えば、 "role.condition[0].name"は、getValue("role").getValue("condition")[0].getValue("name")を示します。

      注意
      propNameはクライアントからの入力値を未検証のまま適用しないでください。 改竄された場合意図しないプロパティ値が取得される可能性があります。

      ※現状の実装は、getValueと同じ(将来的には可能な限り値を変換するように実装する想定)。
      定義:
      getValueAs インタフェース内 Entity
      戻り値:
    • getDefinitionName

      public java.lang.String getDefinitionName()
      定義:
      getDefinitionName インタフェース内 Entity
    • setDefinitionName

      public void setDefinitionName​(java.lang.String definitionName)
      定義:
      setDefinitionName インタフェース内 Entity
    • getDescription

      public java.lang.String getDescription()
      定義:
      getDescription インタフェース内 Entity
    • setDescription

      public void setDescription​(java.lang.String description)
      定義:
      setDescription インタフェース内 Entity
    • getVersion

      public java.lang.Long getVersion()
      定義:
      getVersion インタフェース内 Entity
    • setVersion

      public void setVersion​(java.lang.Long version)
      定義:
      setVersion インタフェース内 Entity
    • getState

      public SelectValue getState()
      定義:
      getState インタフェース内 Entity
    • setState

      public void setState​(SelectValue state)
      定義:
      setState インタフェース内 Entity
    • getLockedBy

      public java.lang.String getLockedBy()
      定義:
      getLockedBy インタフェース内 Entity
    • setLockedBy

      public void setLockedBy​(java.lang.String lockedBy)
      定義:
      setLockedBy インタフェース内 Entity
    • getStartDate

      public java.sql.Timestamp getStartDate()
      定義:
      getStartDate インタフェース内 Entity
    • setStartDate

      public void setStartDate​(java.sql.Timestamp startDate)
      定義:
      setStartDate インタフェース内 Entity
    • getEndDate

      public java.sql.Timestamp getEndDate()
      定義:
      getEndDate インタフェース内 Entity
    • setEndDate

      public void setEndDate​(java.sql.Timestamp endDate)
      定義:
      setEndDate インタフェース内 Entity
    • getRecycleBinId

      public java.lang.Long getRecycleBinId()
      定義:
      getRecycleBinId インタフェース内 Entity
    • setRecycleBinId

      public void setRecycleBinId​(java.lang.Long recycleBinId)
      定義:
      setRecycleBinId インタフェース内 Entity
    • copy

      public GenericEntity copy()
      shallow copyを行う。
      戻り値:
    • copyAs

      public <T extends GenericEntity> T copyAs​(java.lang.Class<T> type)
      引数の型のインスタンスとして、shallow copyを行う。
      戻り値:
    • deepCopy

      public GenericEntity deepCopy()
      deep copyを行う(但し、Entityとしてのdeep copy)。 property値が、GenericEntityの場合は、deepCopy()を再帰呼び出し、 BinaryReference、SelectValueの場合は、copy()を呼び出し、 java.uti.Dateの場合は、clone()を呼び出し、 それ以外(プリミティブ型、immutable)の場合は、参照をそのまま保持。
      戻り値:
    • getPropertyNames

      public java.util.Set<java.lang.String> getPropertyNames()
      保持しているPropertyの名前セットを返します。
      戻り値:
      Property名のセット
    • toMap

      public java.util.Map<java.lang.String,​java.lang.Object> toMap()
      保持しているPropertyをMap形式で返す。 property値が、GenericEntityの場合は、再帰的にMapに変換する、 GenericEntity[]の場合はMapの配列に変換する、 BinaryReference、SelectValueの場合は、copy()を呼び出し、 java.uti.Dateの場合は、clone()を呼び出し、 それ以外(プリミティブ型、immutable)の場合は、参照をそのまま保持。
      戻り値: