com.infoteria.asteria.flowlibrary2.property
Class CategoryProperty

java.lang.Object
  |
  +--com.infoteria.asteria.flowlibrary2.property.CategoryProperty
All Implemented Interfaces:
Cloneable, com.infoteria.asteria.value.Mapable, Property, com.infoteria.asteria.value.ValueProvider
Direct Known Subclasses:
DummyCategoryProperty, SimpleCategoryProperty

public abstract class CategoryProperty
extends Object
implements Property, com.infoteria.asteria.value.Mapable, Cloneable

名前と値のセットで定義するCategoryPropertyクラスの基底です。


Constructor Summary
protected CategoryProperty(String name)
          コンストラクタ
 
Method Summary
abstract  void assign(Property prop)
           
abstract  void compile(Element el)
          xfp上の要素「Row」をコンパイルしてプロパティを設定します。
 Value get(String name)
           
 String getName()
           
 PropertyType getType()
          プロパティ型を返します。
常にPropertyType.CATEGORYを返します。
abstract  Value getValue(String name)
          名前に対応する値を返します。
 void init(ExecuteContext context)
           
 boolean isMapable()
           
 boolean isRequired()
           
abstract  Set keySet()
          ユーザが定義した名前のSetを返します。
abstract  int size()
          ユーザが定義した名前の数を返します。
 String toString()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface com.infoteria.asteria.flowlibrary2.property.Property
clone, isNull
 

Constructor Detail

CategoryProperty

protected CategoryProperty(String name)
コンストラクタ
Parameters:
name - プロパティ名
Method Detail

getName

public String getName()
Description copied from interface: Property
プロパティ名を返します。
Specified by:
getName in interface Property

getType

public PropertyType getType()
プロパティ型を返します。
常にPropertyType.CATEGORYを返します。
Specified by:
getType in interface Property

isRequired

public boolean isRequired()
Description copied from interface: Property
このプロパティが必須プロパティの場合はtrueを返します。
Specified by:
isRequired in interface Property

isMapable

public boolean isMapable()
Description copied from interface: Property
このプロパティがマッパーでのMapping可能な場合はtrueを返します。
Specified by:
isMapable in interface Property

keySet

public abstract Set keySet()
ユーザが定義した名前のSetを返します。
Specified by:
keySet in interface com.infoteria.asteria.value.Mapable

getValue

public abstract Value getValue(String name)
名前に対応する値を返します。
Specified by:
getValue in interface com.infoteria.asteria.value.ValueProvider

size

public abstract int size()
ユーザが定義した名前の数を返します。
Specified by:
size in interface com.infoteria.asteria.value.Mapable

assign

public abstract void assign(Property prop)
Description copied from interface: Property
このプロパティの内容を引数のPropertyにコピーします。
引数となるPropertyのクラスはメソッド呼び出しを行うクラスと同一でなければなりません。
Specified by:
assign in interface Property

get

public Value get(String name)

compile

public abstract void compile(Element el)
                      throws CompileException
xfp上の要素「Row」をコンパイルしてプロパティを設定します。

toString

public String toString()
Description copied from interface: Property
プロパティ値を文字列として返します。
Specified by:
toString in interface Property
Overrides:
toString in class Object

init

public void init(ExecuteContext context)
Description copied from interface: Property
プロパティを実行コンテキストで初期化します。
Specified by:
init in interface Property