edu.udo.cs.miningmart.m4.core
Class Parameter

java.lang.Object
  extended byedu.udo.cs.miningmart.m4.core.M4Object
      extended byedu.udo.cs.miningmart.m4.core.M4Data
          extended byedu.udo.cs.miningmart.m4.core.Parameter
All Implemented Interfaces:
java.lang.Comparable, M4Data, M4Object, M4Table, Parameter, java.io.Serializable, XmlInfo

public class Parameter
extends M4Data
implements XmlInfo, Parameter

Version:
$Id: Parameter.java,v 1.5 2006/04/11 14:10:13 euler Exp $
Author:
Timm Euler, Martin Scholz
See Also:
Serialized Form

Field Summary
static java.lang.String ATTRIB_OBJECT_ID
          db level tuple id of the corresponding object tuple
static java.lang.String ATTRIB_OBJECT_TYPE
          db level type (table) of the corresponding object tuple
static java.lang.String ATTRIB_PAR_IO_TYPE
          db level type of parameter: input or output
static java.lang.String ATTRIB_PAR_LOOP_NR
          db level: loop number this parameter belongs to
static java.lang.String ATTRIB_PAR_OPERATOR_ID
          db level: id of the corresponding operator
static java.lang.String ATTRIB_PAR_STEP_ID
          db level: id of the corresponding step
static java.lang.String ATTRIB_PARAMETER_ID
          db level tuple id of this parameter tuple
static java.lang.String ATTRIB_PARAMETER_NAME
          db level name of this parameter tuple
static java.lang.String ATTRIB_PARAMETER_NR
          db level: number of this parameter within its embedding array
static java.lang.String M4_TABLE_NAME
          name of the corresponding m4 table
static M4Info m4Info
          Cache for getM4Info()
 
Fields inherited from class edu.udo.cs.miningmart.m4.core.M4Data
myDocumentation
 
Fields inherited from class edu.udo.cs.miningmart.m4.core.M4Object
myId, myName
 
Fields inherited from interface edu.udo.cs.miningmart.m4.utils.XmlInfo
M4_XML_VERSION, TAG_COLLECTION, TAG_DOUBLE, TAG_INTEGER, TAG_LONG, TAG_M4_ID, TAG_SHORT, TAG_STRING, TAG_XML_ID
 
Fields inherited from interface edu.udo.cs.miningmart.m4.Parameter
TYPE_BASEATTRIBUTE, TYPE_CONCEPT, TYPE_FEATURE, TYPE_INPUT, TYPE_MULTICOLUMNFEATURE, TYPE_OUTPUT, TYPE_PARAMETER_OBJECT, TYPE_RELATION, TYPE_VALUE
 
Fields inherited from interface edu.udo.cs.miningmart.m4.utils.M4Table
NOT_NULL
 
Constructor Summary
Parameter(DB db)
           
 
Method Summary
 Parameter copy(Step newStep)
           
static java.lang.Class getClassForParameterType(short parameterType)
           
 java.lang.String getIdAttributeName()
           
 java.lang.String getInputParam()
          Same as isInputParam, but returns the database String representation for the flag.
 int getLoopNr()
           
 M4Info getM4Info()
           
 java.lang.String getM4TableName()
           
protected  java.util.Collection getObjectsInNamespace(java.lang.Class typeOfObjects)
          This method returns the objects of the specified type that form a namespace in the scope of this M4Data object.
 java.lang.String getParameterName()
           
 java.lang.String getParameterType()
          This is the IO_TYPE !!
 long getParamNr()
          Returns the parameter number.
 java.lang.Long getParObjectId()
           
 java.lang.String getParObjectType()
           
 Operator getTheOperator()
          Getter method for this Parameter's Operator
 ParameterObject getTheParameterObject()
           
 Step getTheStep()
           
static java.lang.String getTypeStringForParObject(ParameterObject parameterObject)
           
 Value getValue()
          Returns the corresponding Value object for this Parameter or null if it does not exist.
 M4Info getXmlInfo()
           
 boolean isInputParam()
           
 void primitiveSetParameterObject(ParameterObject paramObj)
          Primitive setter method for internal ParameterObject field.
 void primitiveSetStep(Step step)
          Primitive setter, do not use it!
 void print()
          Method to be used and extended by subclasses.
protected  void privateSetParType(java.lang.String parType)
          This method is just used when a Parameter object is loaded from the database and it needs to store the type information for loading the ParameterObject.
protected  void readParObjFromDb(java.lang.Long idL)
          This method is just used during autoLoad!
protected  void removeAllM4References()
          This method needs to be implemented by all M4Data objects.
 void removeParameterObject()
           
 void removeValue()
          Removes the Value from this Parameter and deletes it.
 void setInputParam(java.lang.String inputString)
          Each parameter is an input or an output parameter.
 void setIsInputParam(boolean is)
           
 void setLoopNr(int nr)
           
 void setParameterName(java.lang.String parameterName)
           
 void setParameterType(java.lang.String parameterType)
           
 void setParamNr(long paramNr)
          Sets the number of this parameter within its embedding parameter array
 void setTheOperator(Operator op)
          This method is based on a redundant attribute in the database!
 void setTheParameterObject(ParameterObject parameterObject)
          Sets the parameterObject.
 void setTheStep(Step step)
           
static short typeConstForTypeString(java.lang.String parameterType)
           
static java.lang.String typeStringForTypeConst(short parameterType)
           
 
Methods inherited from class edu.udo.cs.miningmart.m4.core.M4Data
deleteLocal, deleteSoon, exportLocal, genericGetter, genericSetter, getDependentObjects, getDocumentation, getObjectsReferencingMe, getObjectsReferencingMe, getObjectTag, getValidName, getXmlIdTag, getXmlVersion, hasDeleteStatus, importLocal, isDirty, isWaitingForDelete, primitiveGetDocObject, primitiveSetDocObject, readFromDb, readFromDbLocal, removeDocObject, removeFromDb, removeSetFromDb, setDirty, setDocumentation, setId, setName, storeLocal, updateObjectsFromTable
 
Methods inherited from class edu.udo.cs.miningmart.m4.core.M4Object
compareTo, doPrint, doPrint, equals, executeBusinessSingleValueSqlRead, executeBusinessSingleValueSqlReadL, executeBusinessSqlRead, executeBusinessSqlWrite, executeM4SingleValueSqlRead, executeM4SingleValueSqlReadL, executeM4SqlRead, executeM4SqlWrite, getCasePrintObject, getId, getM4Db, getM4ObjectFromCache, getName, getNextM4SequenceValue, isNew, load, putM4ObjectToCache, replaceSpacesInName
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface edu.udo.cs.miningmart.m4.utils.XmlInfo
doPrint, doPrint, exportLocal, genericGetter, genericSetter, getDependentObjects, getObjectTag, getXmlIdTag, getXmlVersion, importLocal
 
Methods inherited from interface edu.udo.cs.miningmart.m4.M4Data
deleteSoon, getDocumentation, getValidName, isDirty, isWaitingForDelete, setDocumentation
 
Methods inherited from interface edu.udo.cs.miningmart.m4.M4Object
doPrint, doPrint, equals, executeBusinessSingleValueSqlRead, executeBusinessSingleValueSqlReadL, executeBusinessSqlRead, executeBusinessSqlWrite, executeM4SingleValueSqlRead, executeM4SingleValueSqlReadL, executeM4SqlRead, executeM4SqlWrite, getCasePrintObject, getId, getM4Db, getM4ObjectFromCache, getName, getNextM4SequenceValue, isNew, load, putM4ObjectToCache, replaceSpacesInName, setId, setName
 

Field Detail

M4_TABLE_NAME

public static final java.lang.String M4_TABLE_NAME
name of the corresponding m4 table

See Also:
Constant Field Values

ATTRIB_PARAMETER_ID

public static final java.lang.String ATTRIB_PARAMETER_ID
db level tuple id of this parameter tuple

See Also:
Constant Field Values

ATTRIB_PARAMETER_NAME

public static final java.lang.String ATTRIB_PARAMETER_NAME
db level name of this parameter tuple

See Also:
Constant Field Values

ATTRIB_OBJECT_ID

public static final java.lang.String ATTRIB_OBJECT_ID
db level tuple id of the corresponding object tuple

See Also:
Constant Field Values

ATTRIB_OBJECT_TYPE

public static final java.lang.String ATTRIB_OBJECT_TYPE
db level type (table) of the corresponding object tuple

See Also:
Constant Field Values

ATTRIB_PAR_IO_TYPE

public static final java.lang.String ATTRIB_PAR_IO_TYPE
db level type of parameter: input or output

See Also:
Constant Field Values

ATTRIB_PAR_LOOP_NR

public static final java.lang.String ATTRIB_PAR_LOOP_NR
db level: loop number this parameter belongs to

See Also:
Constant Field Values

ATTRIB_PAR_OPERATOR_ID

public static final java.lang.String ATTRIB_PAR_OPERATOR_ID
db level: id of the corresponding operator

See Also:
Constant Field Values

ATTRIB_PAR_STEP_ID

public static final java.lang.String ATTRIB_PAR_STEP_ID
db level: id of the corresponding step

See Also:
Constant Field Values

ATTRIB_PARAMETER_NR

public static final java.lang.String ATTRIB_PARAMETER_NR
db level: number of this parameter within its embedding array

See Also:
Constant Field Values

m4Info

public static M4Info m4Info
Cache for getM4Info()

Constructor Detail

Parameter

public Parameter(DB db)
Method Detail

getM4TableName

public java.lang.String getM4TableName()
Specified by:
getM4TableName in interface M4Table
See Also:
M4Table.getM4TableName()

getIdAttributeName

public java.lang.String getIdAttributeName()
Specified by:
getIdAttributeName in interface M4Table
See Also:
M4Table.getIdAttributeName()

getM4Info

public M4Info getM4Info()
Specified by:
getM4Info in interface M4Table
See Also:
M4Table.getM4Info()

getXmlInfo

public M4Info getXmlInfo()
Specified by:
getXmlInfo in interface XmlInfo
Returns:
a M4Info object with the information of all XML fields of this object.
See Also:
XmlInfo.getXmlInfo()

typeConstForTypeString

public static short typeConstForTypeString(java.lang.String parameterType)
                                    throws ParameterError
Returns:
a short representing the parameter
Throws:
ParameterError

typeStringForTypeConst

public static java.lang.String typeStringForTypeConst(short parameterType)
                                               throws ParameterError
Returns:
a short representing the parameter
Throws:
ParameterError

getClassForParameterType

public static java.lang.Class getClassForParameterType(short parameterType)
                                                throws ParameterError
Returns:
the Class (subclass of ParameterObject) representing the parameter
Throws:
ParameterError - if the parameter is out of bounds.
ParameterError

getTypeStringForParObject

public static java.lang.String getTypeStringForParObject(ParameterObject parameterObject)
                                                  throws ParameterError
Parameters:
parameterObject - a ParameterObject
Returns:
the String representing parameter objects of this type in the database, or null if the parameterObject is null
Throws:
ParameterError - if the parameter type is unknown
ParameterError

getObjectsInNamespace

protected java.util.Collection getObjectsInNamespace(java.lang.Class typeOfObjects)
                                              throws M4Exception
Description copied from class: M4Data
This method returns the objects of the specified type that form a namespace in the scope of this M4Data object. For example, a Concept's namespace for the type BaseAttribute is the Collection of all BaseAttributes for this Concept. Many M4Data objects never have a namespace, they return null. If a namespace could exist but doesn't, an empty Collection is returned.

Specified by:
getObjectsInNamespace in class M4Data
Parameters:
typeOfObjects - the type of objects that form the namespace
Returns:
a Collection of objects of type typeOfObjects, or null.
Throws:
M4Exception
See Also:
M4Data.getObjectsInNamespace(Class)

setTheOperator

public void setTheOperator(Operator op)
This method is based on a redundant attribute in the database! The operator of this parameter is defined by its Step. Thus the getter method for the Operator and its ID will return the result based on the Operator of the associated Step object. As a result of being redundant this method does not do anything!

Specified by:
setTheOperator in interface Parameter
Parameters:
op - The new operator.

getTheOperator

public Operator getTheOperator()
                        throws M4Exception
Getter method for this Parameter's Operator

Specified by:
getTheOperator in interface Parameter
Returns:
the Operator this parameter belongs to. If no embedding Step can be found or the Step does not return its Operator then null is returned.
Throws:
M4Exception

setTheStep

public void setTheStep(Step step)
                throws M4Exception
Specified by:
setTheStep in interface Parameter
Parameters:
step - The new Step for this Parameter
Throws:
M4Exception

primitiveSetStep

public void primitiveSetStep(Step step)
Primitive setter, do not use it!

Parameters:
step - the Step to be set

getTheStep

public Step getTheStep()
                throws M4Exception
Specified by:
getTheStep in interface Parameter
Returns:
The step this parameter belongs to.
Throws:
M4Exception

isInputParam

public boolean isInputParam()
Specified by:
isInputParam in interface Parameter
Returns:
TRUE if this parameter is an Input Parameter, FALSE otherwise.

getInputParam

public java.lang.String getInputParam()
Same as isInputParam, but returns the database String representation for the flag.

Specified by:
getInputParam in interface Parameter
Returns:
the value of the input parameter flag as a String
See Also:
DB.c_yes

setIsInputParam

public void setIsInputParam(boolean is)
Specified by:
setIsInputParam in interface Parameter
Parameters:
is - Set to TRUE if this parameter is an Input parameter, FALSE otherwise.

setInputParam

public void setInputParam(java.lang.String inputString)
Each parameter is an input or an output parameter. This method expects the database String representation of this flag.

Specified by:
setInputParam in interface Parameter
See Also:
DB.c_yes

setLoopNr

public void setLoopNr(int nr)
Specified by:
setLoopNr in interface Parameter
Parameters:
nr - the number of the loop for which this parameter is to be used

getLoopNr

public int getLoopNr()
Specified by:
getLoopNr in interface Parameter
Returns:
the number of the loop for which this parameter is to be used.

getParObjectType

public java.lang.String getParObjectType()
                                  throws ParameterError,
                                         M4Exception
Specified by:
getParObjectType in interface Parameter
Returns:
the type of this parameter object ("CON", "BA" etc), or null if the ParameterObject is not set.
Throws:
ParameterError
M4Exception

getParObjectId

public java.lang.Long getParObjectId()
                              throws M4Exception
Specified by:
getParObjectId in interface Parameter
Returns:
the Id of the ParameterObject as a Long object, or null if there is no ParameterObject stored.
Throws:
M4Exception

getTheParameterObject

public ParameterObject getTheParameterObject()
                                      throws M4Exception
Specified by:
getTheParameterObject in interface Parameter
Returns:
the parameterObject, the M4Data object constituting the parameter. A value of null indicates an error.
Throws:
M4Exception

setTheParameterObject

public void setTheParameterObject(ParameterObject parameterObject)
                           throws M4Exception
Sets the parameterObject.

Specified by:
setTheParameterObject in interface Parameter
Parameters:
parameterObject - The parameterObject to set
Throws:
M4Exception

getParamNr

public long getParamNr()
Returns the parameter number.

Specified by:
getParamNr in interface Parameter
Returns:
long

setParamNr

public void setParamNr(long paramNr)
Sets the number of this parameter within its embedding parameter array

Specified by:
setParamNr in interface Parameter
Parameters:
paramNr - The parameter number to set

primitiveSetParameterObject

public void primitiveSetParameterObject(ParameterObject paramObj)
Primitive setter method for internal ParameterObject field. Do not use it!

Parameters:
paramObj - the ParameterObject to be set

privateSetParType

protected void privateSetParType(java.lang.String parType)
This method is just used when a Parameter object is loaded from the database and it needs to store the type information for loading the ParameterObject. Using this setter does not have any effect in any other case!

Parameters:
parType - the type of the ParameterObject in the database String representation.

print

public void print()
Method to be used and extended by subclasses. Prints the parameter information and certain information about referenced M4 objects.

Specified by:
print in interface M4Object
Specified by:
print in class M4Object
See Also:
M4Object.print()

readParObjFromDb

protected void readParObjFromDb(java.lang.Long idL)
                         throws M4Exception
This method is just used during autoLoad!

Parameters:
idL - the id of the ParameterObject or null
Throws:
M4Exception

removeAllM4References

protected void removeAllM4References()
                              throws M4Exception
Description copied from class: M4Data
This method needs to be implemented by all M4Data objects. It has to remove all references to other M4Objects.

Specified by:
removeAllM4References in class M4Data
Throws:
M4Exception
See Also:
M4Data.removeAllM4References()

getParameterName

public java.lang.String getParameterName()
Specified by:
getParameterName in interface Parameter
See Also:
getParameterName()

setParameterName

public void setParameterName(java.lang.String parameterName)
                      throws M4Exception
Specified by:
setParameterName in interface Parameter
Throws:
M4Exception
See Also:
setParameterName(String)

getParameterType

public java.lang.String getParameterType()
This is the IO_TYPE !! Possible values are "IN" and "OUT".

Specified by:
getParameterType in interface Parameter
See Also:
getParameterType()

setParameterType

public void setParameterType(java.lang.String parameterType)
                      throws M4Exception
Specified by:
setParameterType in interface Parameter
Throws:
M4Exception
See Also:
setParameterType(String)

removeParameterObject

public void removeParameterObject()
                           throws M4Exception
Specified by:
removeParameterObject in interface Parameter
Throws:
M4Exception
See Also:
removeParameterObject()

copy

public Parameter copy(Step newStep)
               throws M4Exception
Specified by:
copy in interface Parameter
Throws:
M4Exception
See Also:
copy(Step)

getValue

public Value getValue()
               throws M4Exception
Description copied from interface: Parameter
Returns the corresponding Value object for this Parameter or null if it does not exist.

Specified by:
getValue in interface Parameter
Throws:
M4Exception
See Also:
getValue()

removeValue

public void removeValue()
                 throws M4Exception
Description copied from interface: Parameter
Removes the Value from this Parameter and deletes it.

Specified by:
removeValue in interface Parameter
Throws:
M4Exception
See Also:
removeValue()


Copyright © 2001-2005