com.tobesoft.xplatform.data
Class Variable

java.lang.Object
  extended bycom.tobesoft.xplatform.data.Variable
All Implemented Interfaces:
java.lang.Cloneable, java.io.Serializable

public class Variable
extends java.lang.Object
implements java.lang.Cloneable, java.io.Serializable

데이터를 저장하는 변수를 의미하며, 이는 식별자(name)와 값(value)으로 구성된다. 값(value)은 데이터의 형식(type)에 따라 변환된 후 저장된다. 데이터 형식의 종류는 DataTypes을 참조한다.

데이터 형식(type)을 명시적으로 지정하지 않은 경우 초기 데이터를 설정하는 시점에 데이터로부터 데이터 형식을 판별하여 설정된다. 예를 들어, 다음과 같은 경우 var의 데이터 형식은 DataTypes.INT가 설정된다.

 Variable var = new Variable("age");
 var.set(20);

 assertEquals(DataTypes.INT, var.getType());
 

주의할 점은 set(Object)등을 호출하여 값(value)을 설정하는 경우, 데이터의 형식과 동일하지 않은 형식의 값을 설정한다면, 데이터의 변형이 발생할 수 있다.

Author:
Choi, Jongkwan
See Also:
Serialized Form

Field Summary
static java.lang.String UNDEFINED_NAME
          정의되지 않은 의미의 식별자(name)
 
Constructor Summary
Variable(java.lang.String name)
          식별자(name)을 가지는 생성자이다.
Variable(java.lang.String name, DataType type)
          식별자(name)와 DataType을 가지는 생성자이다.
Variable(java.lang.String name, DataType type, java.lang.Object value)
          식별자(name), DataType과 값(value)을 가지는 생성자이다.
Variable(java.lang.String name, int type)
          식별자(name)와 데이터 형식(type)을 가지는 생성자이다.
Variable(java.lang.String name, int type, java.lang.Object value)
          식별자(name), 데이터 형식(type)과 값(value)을 가지는 생성자이다.
 
Method Summary
 java.lang.Object clone()
          객체를 복제한다.
static Variable createVariable(java.lang.String name, java.math.BigDecimal value)
          해당하는 식별자(name)와 BigDecimal 형식의 값(value)을 가지는 Variable을 생성한다.
static Variable createVariable(java.lang.String name, boolean value)
          해당하는 식별자(name)와 boolean 형식의 값(value)을 가지는 Variable을 생성한다.
static Variable createVariable(java.lang.String name, byte[] value)
          해당하는 식별자(name)와 byte 배열 형식의 값(value)을 가지는 Variable을 생성한다.
static Variable createVariable(java.lang.String name, java.util.Date value)
          해당하는 식별자(name)와 일자와 시간을 포함한 Date 형식의 값(value)을 가지는 Variable을 생성한다.
static Variable createVariable(java.lang.String name, double value)
          해당하는 식별자(name)와 double 형식의 값(value)을 가지는 Variable을 생성한다.
static Variable createVariable(java.lang.String name, float value)
          해당하는 식별자(name)와 float 형식의 값(value)을 가지는 Variable을 생성한다.
static Variable createVariable(java.lang.String name, int value)
          해당하는 식별자(name)와 int 형식의 값(value)을 가지는 Variable을 생성한다.
static Variable createVariable(java.lang.String name, long value)
          해당하는 식별자(name)와 long 형식의 값(value)을 가지는 Variable을 생성한다.
static Variable createVariable(java.lang.String name, java.lang.String value)
          해당하는 식별자(name)와 String 형식의 값(value)을 가지는 Variable을 생성한다.
 boolean equals(java.lang.Object obj)
          객체의 동일성을 검사한다.
 java.math.BigDecimal getBigDecimal()
          값(value)을 BigDecimal 형식으로 반환한다.
 byte[] getBlob()
          값(value)을 byte 배열 형식으로 반환한다.
 boolean getBoolean()
          값(value)을 boolean 형식으로 반환한다.
 java.lang.String getCharset()
          문자셋(charset)을 반환한다.
 Variable getClone()
          객체를 복제한다.
 VariableDataConverter getCurrentDataConverter()
          현재 VariableDataConverter를 반환한다.
 VariableDataConverter getDataConverter()
          데이터를 반환 또는 설정시 데이터의 변환을 수행하는 VariableDataConverter를 반환한다.
 java.util.Date getDateTime()
          값(value)을 일자와 시간을 포함한 Date 형식으로 반환한다.
 java.math.BigDecimal getDecimal()
          Deprecated. getBigDecimal()을 사용한다.
 double getDouble()
          값(value)을 double 형식으로 반환한다.
 float getFloat()
          값(value)을 float 형식으로 반환한다.
 int getInt()
          값(value)을 int 형식으로 반환한다.
 long getLong()
          값(value)을 long 형식으로 반환한다.
 java.lang.String getName()
          식별자(name)를 반환한다.
 java.lang.Object getObject()
          값(value)을 Object 형식으로 반환한다.
 java.lang.String getString()
          값(value)을 String 형식으로 반환한다.
 java.lang.String getString(java.lang.String defaultValue)
          값(value)을 String 형식으로 반환한다.
 int getType()
          데이터의 형식(type)을 반환한다.
 boolean isConvertingToDataType()
          데이터 설정시 데이터 형식(type)으로의 변환 여부를 검사한다.
 void set(java.math.BigDecimal value)
          BigDecimal 형식의 값(value)을 설정한다.
 void set(boolean value)
          boolean 형식의 값(value)을 설정한다.
 void set(byte[] value)
          byte 배열 형식의 값(value)을 설정한다.
 void set(java.util.Date value)
          일자와 시간을 포함한 Date 형식의 값(value)을 설정한다.
 void set(double value)
          double 형식의 값(value)을 설정한다.
 void set(float value)
          float 형식의 값(value)을 설정한다.
 void set(int value)
          int 형식의 값(value)을 설정한다.
 void set(long value)
          long 형식의 값(value)을 설정한다.
 void set(java.lang.Object value)
          Object 형식의 값(value)을 설정한다.
 void set(java.lang.String value)
          String 형식의 값(value)을 설정한다.
 void setCharset(java.lang.String charset)
          문자셋(charset)을 설정한다.
 void setConvertingToDataType(boolean isConvertingToDataType)
          데이터 설정시 데이터 형식(type)으로의 변환 여부를 설정한다.
 void setDataConverter(VariableDataConverter dataConverter)
          데이터를 반환 또는 설정시 데이터의 변환을 수행하는 VariableDataConverter를 설정한다.
 void setName(java.lang.String name)
          식별자(name)를 설정한다.
 void setType(int type)
          데이터의 형식(type)을 설정한다.
 java.lang.String toString()
          문자열로 변환한다.
 
Methods inherited from class java.lang.Object
finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

UNDEFINED_NAME

public static final java.lang.String UNDEFINED_NAME
정의되지 않은 의미의 식별자(name)

See Also:
Constant Field Values
Constructor Detail

Variable

public Variable(java.lang.String name)
식별자(name)을 가지는 생성자이다.

Parameters:
name - 식별자

Variable

public Variable(java.lang.String name,
                int type)
식별자(name)와 데이터 형식(type)을 가지는 생성자이다.

Parameters:
name - 식별자
type - 데이터 형식

Variable

public Variable(java.lang.String name,
                int type,
                java.lang.Object value)
식별자(name), 데이터 형식(type)과 값(value)을 가지는 생성자이다.

Parameters:
name - 식별자
type - 데이터 형식
value - 값

Variable

public Variable(java.lang.String name,
                DataType type)
식별자(name)와 DataType을 가지는 생성자이다. X-UP 또는 X-POP을 지원하기 위한 생성자이다.

Parameters:
name - 식별자
type - DataType

Variable

public Variable(java.lang.String name,
                DataType type,
                java.lang.Object value)
식별자(name), DataType과 값(value)을 가지는 생성자이다. X-UP 또는 X-POP을 지원하기 위한 생성자이다.

Parameters:
name - 식별자
type - DataType
value - 값
Method Detail

createVariable

public static Variable createVariable(java.lang.String name,
                                      java.lang.String value)
해당하는 식별자(name)와 String 형식의 값(value)을 가지는 Variable을 생성한다.

Parameters:
name - 식별자
value - String 형식의 값
Returns:
Variable

createVariable

public static Variable createVariable(java.lang.String name,
                                      int value)
해당하는 식별자(name)와 int 형식의 값(value)을 가지는 Variable을 생성한다.

Parameters:
name - 식별자
value - int 형식의 값
Returns:
Variable

createVariable

public static Variable createVariable(java.lang.String name,
                                      boolean value)
해당하는 식별자(name)와 boolean 형식의 값(value)을 가지는 Variable을 생성한다.

Parameters:
name - 식별자
value - boolean 형식의 값
Returns:
Variable

createVariable

public static Variable createVariable(java.lang.String name,
                                      long value)
해당하는 식별자(name)와 long 형식의 값(value)을 가지는 Variable을 생성한다.

Parameters:
name - 식별자
value - long 형식의 값
Returns:
Variable

createVariable

public static Variable createVariable(java.lang.String name,
                                      float value)
해당하는 식별자(name)와 float 형식의 값(value)을 가지는 Variable을 생성한다.

Parameters:
name - 식별자
value - float 형식의 값
Returns:
Variable

createVariable

public static Variable createVariable(java.lang.String name,
                                      double value)
해당하는 식별자(name)와 double 형식의 값(value)을 가지는 Variable을 생성한다.

Parameters:
name - 식별자
value - double 형식의 값
Returns:
Variable

createVariable

public static Variable createVariable(java.lang.String name,
                                      java.math.BigDecimal value)
해당하는 식별자(name)와 BigDecimal 형식의 값(value)을 가지는 Variable을 생성한다.

Parameters:
name - 식별자
value - BigDecimal 형식의 값
Returns:
Variable

createVariable

public static Variable createVariable(java.lang.String name,
                                      java.util.Date value)
해당하는 식별자(name)와 일자와 시간을 포함한 Date 형식의 값(value)을 가지는 Variable을 생성한다.

Parameters:
name - 식별자
value - Date 형식의 값
Returns:
Variable

createVariable

public static Variable createVariable(java.lang.String name,
                                      byte[] value)
해당하는 식별자(name)와 byte 배열 형식의 값(value)을 가지는 Variable을 생성한다.

Parameters:
name - 식별자
value - byte 배열 형식의 값
Returns:
Variable

getName

public java.lang.String getName()
식별자(name)를 반환한다.

Returns:
식별자(name)
See Also:
setName(String)

setName

public void setName(java.lang.String name)
식별자(name)를 설정한다.

Parameters:
name - 식별자(name)
See Also:
getName()

getType

public int getType()
데이터의 형식(type)을 반환한다. 데이터의 형식은 DataTypes에 정의된 상수를 참조한다.

Returns:
데이터의 형식(type)
See Also:
setType(int)

setType

public void setType(int type)
데이터의 형식(type)을 설정한다.

Parameters:
type - 데이터의 형식(type)
See Also:
getType()

getCharset

public java.lang.String getCharset()
문자셋(charset)을 반환한다.

Returns:
문자셋

setCharset

public void setCharset(java.lang.String charset)
문자셋(charset)을 설정한다.

Parameters:
charset - 문자셋

isConvertingToDataType

public boolean isConvertingToDataType()
데이터 설정시 데이터 형식(type)으로의 변환 여부를 검사한다. 기본값은 "true" 이다. 즉, "true" 인 경우에는 데이터 설정시 데이터 형식(type)으로 값이 변환되며, "false" 인 경우에는 데이터 변형없이 저장된다.

예를 들어, Variable의 데이터 형식(type)이 int 형식이고, set("123")이 호출된 경우 설정된 데이터는 다음과 같다.

isConvertingToDataType의 값 설정되는 데이터
true 123 값을 가진 Integer
false "123" 값을 가진 String

Returns:
데이터 형식(type)으로의 변환 여부
See Also:
setConvertingToDataType(boolean)

setConvertingToDataType

public void setConvertingToDataType(boolean isConvertingToDataType)
데이터 설정시 데이터 형식(type)으로의 변환 여부를 설정한다.

Parameters:
isConvertingToDataType - 데이터 형식(type)으로의 변환 여부
See Also:
isConvertingToDataType()

getDataConverter

public VariableDataConverter getDataConverter()
데이터를 반환 또는 설정시 데이터의 변환을 수행하는 VariableDataConverter를 반환한다.

Returns:
VariableDataConverter

setDataConverter

public void setDataConverter(VariableDataConverter dataConverter)
데이터를 반환 또는 설정시 데이터의 변환을 수행하는 VariableDataConverter를 설정한다.

Parameters:
dataConverter - VariableDataConverter

getCurrentDataConverter

public VariableDataConverter getCurrentDataConverter()
현재 VariableDataConverter를 반환한다. 별도의 VariableDataConverter를 설정하지 않은 경우 기본적으로 DefaultVariableDataConverter가 적용된다.

Returns:
VariableDataConverter
See Also:
getDataConverter(), setDataConverter(VariableDataConverter), DefaultVariableDataConverter

getObject

public java.lang.Object getObject()
값(value)을 Object 형식으로 반환한다.

Returns:
Object 형식의 값

getString

public java.lang.String getString()
값(value)을 String 형식으로 반환한다.

Returns:
String 형식의 값
See Also:
VariableDataConverter.toString(Variable, Object, int, String)

getString

public java.lang.String getString(java.lang.String defaultValue)
값(value)을 String 형식으로 반환한다.

Parameters:
defaultValue - 값이 null인 경우의 기본값
Returns:
String 형식의 값
See Also:
VariableDataConverter.toString(Variable, Object, int, String)

getInt

public int getInt()
값(value)을 int 형식으로 반환한다.

Returns:
int 형식의 값
See Also:
VariableDataConverter.toInt(Variable, Object)

getBoolean

public boolean getBoolean()
값(value)을 boolean 형식으로 반환한다.

Returns:
boolean 형식의 값
See Also:
VariableDataConverter.toBoolean(Variable, Object)

getLong

public long getLong()
값(value)을 long 형식으로 반환한다.

Returns:
long 형식의 값
See Also:
VariableDataConverter.toLong(Variable, Object)

getFloat

public float getFloat()
값(value)을 float 형식으로 반환한다.

Returns:
float 형식의 값
See Also:
VariableDataConverter.toFloat(Variable, Object)

getDouble

public double getDouble()
값(value)을 double 형식으로 반환한다.

Returns:
double 형식의 값
See Also:
VariableDataConverter.toDouble(Variable, Object)

getBigDecimal

public java.math.BigDecimal getBigDecimal()
값(value)을 BigDecimal 형식으로 반환한다.

Returns:
BigDecimal 형식의 값
See Also:
VariableDataConverter.toBigDecimal(Variable, Object)

getDecimal

public java.math.BigDecimal getDecimal()
Deprecated. getBigDecimal()을 사용한다.

값(value)을 BigDecimal 형식으로 반환한다.


getDateTime

public java.util.Date getDateTime()
값(value)을 일자와 시간을 포함한 Date 형식으로 반환한다.

Returns:
Date 형식의 값
See Also:
VariableDataConverter.toDateTime(Variable, Object)

getBlob

public byte[] getBlob()
값(value)을 byte 배열 형식으로 반환한다.

Returns:
byte 배열 형식의 값
See Also:
VariableDataConverter.toBlob(Variable, Object, String)

set

public void set(java.lang.Object value)
Object 형식의 값(value)을 설정한다.

Parameters:
value - Object 형식의 값
See Also:
VariableDataConverter.convert(Variable, Object, int, String)

set

public void set(java.lang.String value)
String 형식의 값(value)을 설정한다.

Parameters:
value - String 형식의 값
See Also:
VariableDataConverter.convert(Variable, String, int, String)

set

public void set(int value)
int 형식의 값(value)을 설정한다.

Parameters:
value - int 형식의 값
See Also:
VariableDataConverter.convert(Variable, int, int)

set

public void set(boolean value)
boolean 형식의 값(value)을 설정한다.

Parameters:
value - boolean 형식의 값
See Also:
VariableDataConverter.convert(Variable, boolean, int)

set

public void set(long value)
long 형식의 값(value)을 설정한다.

Parameters:
value - long 형식의 값
See Also:
VariableDataConverter.convert(Variable, long, int)

set

public void set(float value)
float 형식의 값(value)을 설정한다.

Parameters:
value - float 형식의 값
See Also:
VariableDataConverter.convert(Variable, float, int)

set

public void set(double value)
double 형식의 값(value)을 설정한다.

Parameters:
value - double 형식의 값
See Also:
VariableDataConverter.convert(Variable, double, int)

set

public void set(java.math.BigDecimal value)
BigDecimal 형식의 값(value)을 설정한다.

Parameters:
value - BigDecimal 형식의 값
See Also:
VariableDataConverter.convert(Variable, BigDecimal, int)

set

public void set(java.util.Date value)
일자와 시간을 포함한 Date 형식의 값(value)을 설정한다.

Parameters:
value - Date 형식의 값
See Also:
VariableDataConverter.convert(Variable, Date, int)

set

public void set(byte[] value)
byte 배열 형식의 값(value)을 설정한다.

Parameters:
value - byte 배열 형식의 값
See Also:
VariableDataConverter.convert(Variable, byte[], int, String)

getClone

public Variable getClone()
객체를 복제한다.

Returns:
복제된 Variable

clone

public java.lang.Object clone()
                       throws java.lang.CloneNotSupportedException
객체를 복제한다.

Returns:
복제된 객체
Throws:
java.lang.CloneNotSupportedException

equals

public boolean equals(java.lang.Object obj)
객체의 동일성을 검사한다.

Parameters:
obj - 비교 대상
Returns:
객체의 동일성 여부

toString

public java.lang.String toString()
문자열로 변환한다.

Returns:
String


Copyright © 2000-2011 TOBESOFT Co., Ltd.