org.apache.empire.db
Class DBCmdParam

java.lang.Object
  extended by org.apache.empire.db.DBObject
      extended by org.apache.empire.db.DBExpr
          extended by org.apache.empire.db.DBCmdParam
All Implemented Interfaces:
Serializable

public class DBCmdParam
extends DBExpr

This class defines a parameter for a prepared statement query. Do not create instances of this class yourself, rather use DBCommand.addParam(...)

Author:
Rainer
See Also:
Serialized Form

Field Summary
protected  DBCommand cmd
           
protected  DataType type
           
protected  Object value
           
 
Fields inherited from class org.apache.empire.db.DBExpr
CTX_ALIAS, CTX_ALL, CTX_DEFAULT, CTX_FULLNAME, CTX_NAME, CTX_NOPARENTHESES, CTX_VALUE
 
Constructor Summary
protected DBCmdParam(DBCommand cmd, DataType type, Object value)
          Protected constructor used e.g.
 
Method Summary
 void addReferencedColumns(Set<DBColumn> list)
          Internal function to obtain all DBColumnExpr-objects used by this expression.
 void addSQL(StringBuilder buf, long context)
          Used to build the SQL command.
protected  Object getCmdParamValue(Object value)
          Returns the internal parameter value for a given "real" value.
 DBDatabase getDatabase()
          Returns the database object to which this object belongs to.
 DataType getDataType()
          Returns the data type of the command parameter
 Object getValue()
          Returns the current value of the parameter.
 void setValue(Object value)
          Sets the current value of the parameter
 
Methods inherited from class org.apache.empire.db.DBExpr
getObjectValue, getValueClass
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

cmd

protected DBCommand cmd

type

protected DataType type

value

protected Object value
Constructor Detail

DBCmdParam

protected DBCmdParam(DBCommand cmd,
                     DataType type,
                     Object value)
Protected constructor used e.g. by DBCommand.addParam(...)

Parameters:
cmd - the command to which this DBCommand belongs to
type - the parameter data type
value - the initial value (can be changed any time by calling setValue(...))
Method Detail

getCmdParamValue

protected Object getCmdParamValue(Object value)
Returns the internal parameter value for a given "real" value. Depending on the data type this might involve wrapping the real value with another class. This is done e.g. for CLOBs and BLOBs

Parameters:
the - "real" value
Returns:
the (possibly wrapped) value

addSQL

public void addSQL(StringBuilder buf,
                   long context)
Description copied from class: DBExpr
Used to build the SQL command. SQL for this expression must be appended to StringBuilder.

Specified by:
addSQL in class DBExpr
Parameters:
buf - the string buffer used to build the sql command
context - context flag for this SQL-Command (see CTX_??? constants).

addReferencedColumns

public void addReferencedColumns(Set<DBColumn> list)
Description copied from class: DBExpr
Internal function to obtain all DBColumnExpr-objects used by this expression.

Specified by:
addReferencedColumns in class DBExpr
Parameters:
list - list to which all used column expressions must be added
See Also:
DBExpr.addReferencedColumns(Set)

getDatabase

public DBDatabase getDatabase()
Description copied from class: DBObject
Returns the database object to which this object belongs to. For the database object itself this function will return the this pointer.

Specified by:
getDatabase in class DBObject
Returns:
the database object

getDataType

public DataType getDataType()
Returns the data type of the command parameter

Returns:
the data type

getValue

public Object getValue()
Returns the current value of the parameter. In some cases (as for CLOBs and BLOBs) this might return a Wrapper class for the underlying value.

Returns:
the current (possibly wrapped) value

setValue

public void setValue(Object value)
Sets the current value of the parameter

Parameters:
value - the new value


Copyright © 2008-2012 Apache Software Foundation. All Rights Reserved.