Package adams.ml.data
Class DataCellView
- java.lang.Object
-
- adams.ml.data.DataCellView
-
- All Implemented Interfaces:
Cell
,Serializable
public class DataCellView extends Object implements Cell
Wrapper for single cell values in aInstance
object. All dates are treated asDateTimeMsec
.- Author:
- FracPete (fracpete at waikato dot ac dot nz)
- See Also:
- Serialized Form
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface adams.data.spreadsheet.Cell
Cell.ContentType
-
-
Field Summary
Fields Modifier and Type Field Description protected int
m_ColIndex
the column index.protected InstanceView
m_Owner
the owning row.-
Fields inherited from interface adams.data.spreadsheet.Cell
FORMULA_ERROR, PREFIX_FORMULA
-
-
Constructor Summary
Constructors Constructor Description DataCellView(InstanceView owner, int colIndex)
Initializes the cell.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
assign(Cell cell)
Obtains the content/type of the other cell, but not the owner.void
calculate()
Does nothing.String
getContent()
Returns the content of the cell.Cell.ContentType
getContentType()
Returns the content type.String
getFormula()
Returns the formula.Object
getNative()
Returns the cell as native object, according to its type.Object
getObject()
Returns the object.InstanceView
getOwner()
Returns the row this cell belongs to.SpreadSheet
getSpreadSheet()
Returns the spreadsheet this cell belongs to.int
index()
Returns the column this cell is in.boolean
isAnyDateType()
Checks whether the cell represents a date, time or date/time value.boolean
isBoolean()
Checks whether the cell represents a boolean value.boolean
isDate()
Checks whether the cell represents a date value.boolean
isDateTime()
Checks whether the cell represents a date/time value.boolean
isDateTimeMsec()
Checks whether the cell represents a date/time with msec value.boolean
isDouble()
Returns whether the content represents a double number.boolean
isFormula()
Returns whether the content represents a formula.boolean
isLong()
Returns whether the content represents a long number.boolean
isMissing()
Checks whether the cell contains a missing value.boolean
isNumeric()
Checks whether the stored string is numeric.boolean
isObject()
Returns whether the content represents an object.boolean
isTime()
Checks whether the cell represents a time value.boolean
isTimeMsec()
Checks whether the cell represents a time/msec value.Cell
parseContent(String value)
Attempts to determine the data type of the string.Object
parseContent(String value, Cell.ContentType type)
Parses the content of the cell using the specified type.Cell
setContent(DateTime value)
Sets the content of the cell.Cell
setContent(DateTimeMsec value)
Sets the content of the cell.Cell
setContent(Time value)
Sets the content of the cell.Cell
setContent(TimeMsec value)
Sets the content of the cell.Cell
setContent(Boolean value)
Ignored.Cell
setContent(Byte value)
Sets the content of the cell.Cell
setContent(Double value)
Sets the content of the cell.Cell
setContent(Float value)
Sets the content of the cell.Cell
setContent(Integer value)
Sets the content of the cell.Cell
setContent(Long value)
Sets the content of the cell.Cell
setContent(Short value)
Sets the content of the cell.Cell
setContent(String value)
Sets the content of the cell.Cell
setContent(Date value)
Sets the content of the cell.Cell
setContentAs(String value, Cell.ContentType type)
Sets the content of the cell, trying to parse the content using the specified content type.Cell
setContentAsString(String value)
Sets the string content of the cell.Cell
setFormula(String value)
Ignored.void
setMissing()
Sets the cell to missing.Cell
setNative(Object value)
Determines the best set-method based on the class of the provided object.Cell
setObject(Object value)
Ignored.void
setOwner(Row owner)
Sets the row this cell belongs to.Date
toAnyDateType()
Returns the date content, null if not a date, time or date/time.Boolean
toBoolean()
Checks whether the cell represents a boolean value.Date
toDate()
Returns the date content, null if not a date.DateTime
toDateTime()
Returns the date/time content, null if not a date/time.DateTimeMsec
toDateTimeMsec()
Returns the date/time msec content, null if not a date/time.Double
toDouble()
Returns the content as double, if possible.Long
toLong()
Returns the content as long, if possible.Time
toTime()
Returns the time content, null if not a time.TimeMsec
toTimeMsec()
Returns the time/msec content, null if not a time/msec.
-
-
-
Field Detail
-
m_Owner
protected InstanceView m_Owner
the owning row.
-
m_ColIndex
protected int m_ColIndex
the column index.
-
-
Constructor Detail
-
DataCellView
public DataCellView(InstanceView owner, int colIndex)
Initializes the cell.- Parameters:
owner
- the owning rowcolIndex
- the column index
-
-
Method Detail
-
setOwner
public void setOwner(Row owner)
Sets the row this cell belongs to.
-
getOwner
public InstanceView getOwner()
Returns the row this cell belongs to.
-
getSpreadSheet
public SpreadSheet getSpreadSheet()
Returns the spreadsheet this cell belongs to.- Specified by:
getSpreadSheet
in interfaceCell
- Returns:
- the spreadsheet
-
assign
public void assign(Cell cell)
Obtains the content/type of the other cell, but not the owner.
-
setMissing
public void setMissing()
Sets the cell to missing.- Specified by:
setMissing
in interfaceCell
-
setContent
public Cell setContent(Boolean value)
Ignored.- Specified by:
setContent
in interfaceCell
- Parameters:
value
- the content; null interpreted as missing value- Returns:
- the cell itself
-
setContent
public Cell setContent(Byte value)
Sets the content of the cell.- Specified by:
setContent
in interfaceCell
- Parameters:
value
- the content; null interpreted as missing value- Returns:
- the cell itself
-
setContent
public Cell setContent(Short value)
Sets the content of the cell.- Specified by:
setContent
in interfaceCell
- Parameters:
value
- the content; null interpreted as missing value- Returns:
- the cell itself
-
setContent
public Cell setContent(Integer value)
Sets the content of the cell.- Specified by:
setContent
in interfaceCell
- Parameters:
value
- the content; null interpreted as missing value- Returns:
- the cell itself
-
setContent
public Cell setContent(Long value)
Sets the content of the cell.- Specified by:
setContent
in interfaceCell
- Parameters:
value
- the content; null interpreted as missing value- Returns:
- the cell itself
-
setContent
public Cell setContent(Float value)
Sets the content of the cell.- Specified by:
setContent
in interfaceCell
- Parameters:
value
- the content; null interpreted as missing value- Returns:
- the cell itself
-
setContent
public Cell setContent(Double value)
Sets the content of the cell.- Specified by:
setContent
in interfaceCell
- Parameters:
value
- the content; null interpreted as missing value- Returns:
- the cell itself
-
setContent
public Cell setContent(Date value)
Sets the content of the cell.- Specified by:
setContent
in interfaceCell
- Parameters:
value
- the content; null interpreted as missing value- Returns:
- the cell itself
-
setContent
public Cell setContent(DateTime value)
Sets the content of the cell.- Specified by:
setContent
in interfaceCell
- Parameters:
value
- the content; null interpreted as missing value- Returns:
- the cell itself
-
setContent
public Cell setContent(DateTimeMsec value)
Sets the content of the cell.- Specified by:
setContent
in interfaceCell
- Parameters:
value
- the content; null interpreted as missing value- Returns:
- the cell itself
-
setContent
public Cell setContent(Time value)
Sets the content of the cell.- Specified by:
setContent
in interfaceCell
- Parameters:
value
- the content; null interpreted as missing value- Returns:
- the cell itself
-
setContent
public Cell setContent(TimeMsec value)
Sets the content of the cell.- Specified by:
setContent
in interfaceCell
- Parameters:
value
- the content; null interpreted as missing value- Returns:
- the cell itself
-
parseContent
public Cell parseContent(String value)
Attempts to determine the data type of the string.- Specified by:
parseContent
in interfaceCell
- Parameters:
value
- the non-empty string to parse- Returns:
- the cell itself
-
setContent
public Cell setContent(String value)
Sets the content of the cell. Tries to determine whether the cell content is numeric or not.- Specified by:
setContent
in interfaceCell
- Parameters:
value
- the content- Returns:
- the cell itself
-
parseContent
public Object parseContent(String value, Cell.ContentType type)
Parses the content of the cell using the specified type. If the string cannot be parsed according to the type, missing is used instead.- Specified by:
parseContent
in interfaceCell
- Parameters:
value
- the contenttype
- the expected type- Returns:
- the parsed content
-
setContentAsString
public Cell setContentAsString(String value)
Sets the string content of the cell.- Specified by:
setContentAsString
in interfaceCell
- Parameters:
value
- the content- Returns:
- the cell itself
-
setContentAs
public Cell setContentAs(String value, Cell.ContentType type)
Sets the content of the cell, trying to parse the content using the specified content type.- Specified by:
setContentAs
in interfaceCell
- Parameters:
value
- the contenttype
- the type to use- Returns:
- the cell itself
-
setFormula
public Cell setFormula(String value)
Ignored.- Specified by:
setFormula
in interfaceCell
- Parameters:
value
- the content- Returns:
- the cell itself
-
getFormula
public String getFormula()
Returns the formula.- Specified by:
getFormula
in interfaceCell
- Returns:
- the formula, null if none used
-
getObject
public Object getObject()
Returns the object.
-
getContent
public String getContent()
Returns the content of the cell.- Specified by:
getContent
in interfaceCell
- Returns:
- the content
-
getContentType
public Cell.ContentType getContentType()
Returns the content type.- Specified by:
getContentType
in interfaceCell
- Returns:
- the type
-
setNative
public Cell setNative(Object value)
Determines the best set-method based on the class of the provided object. Fallback is thesetObject(Object)
method.
-
getNative
public Object getNative()
Returns the cell as native object, according to its type. If a cell is missing, the result is theSpreadSheet.MISSING_VALUE
string.
-
index
public int index()
Returns the column this cell is in.
-
isNumeric
public boolean isNumeric()
Checks whether the stored string is numeric.
-
isMissing
public boolean isMissing()
Checks whether the cell contains a missing value.
-
isBoolean
public boolean isBoolean()
Checks whether the cell represents a boolean value.
-
toBoolean
public Boolean toBoolean()
Checks whether the cell represents a boolean value.
-
isAnyDateType
public boolean isAnyDateType()
Checks whether the cell represents a date, time or date/time value.- Specified by:
isAnyDateType
in interfaceCell
- Returns:
- true if date, time or date/time value
-
toAnyDateType
public Date toAnyDateType()
Returns the date content, null if not a date, time or date/time.- Specified by:
toAnyDateType
in interfaceCell
- Returns:
- the date, null if not date, time or date/time
-
isDate
public boolean isDate()
Checks whether the cell represents a date value.
-
toDate
public Date toDate()
Returns the date content, null if not a date.
-
isDateTime
public boolean isDateTime()
Checks whether the cell represents a date/time value.- Specified by:
isDateTime
in interfaceCell
- Returns:
- true if date/time value
-
toDateTime
public DateTime toDateTime()
Returns the date/time content, null if not a date/time.- Specified by:
toDateTime
in interfaceCell
- Returns:
- the date/time, null if not date/time
-
isDateTimeMsec
public boolean isDateTimeMsec()
Checks whether the cell represents a date/time with msec value.- Specified by:
isDateTimeMsec
in interfaceCell
- Returns:
- true if date/time msec value
-
toDateTimeMsec
public DateTimeMsec toDateTimeMsec()
Returns the date/time msec content, null if not a date/time.- Specified by:
toDateTimeMsec
in interfaceCell
- Returns:
- the date/time msec, null if not date/time
-
isTime
public boolean isTime()
Checks whether the cell represents a time value.
-
toTime
public Time toTime()
Returns the time content, null if not a time.
-
isTimeMsec
public boolean isTimeMsec()
Checks whether the cell represents a time/msec value.- Specified by:
isTimeMsec
in interfaceCell
- Returns:
- true if time/msec value
-
toTimeMsec
public TimeMsec toTimeMsec()
Returns the time/msec content, null if not a time/msec.- Specified by:
toTimeMsec
in interfaceCell
- Returns:
- the time/msec, null if not time/msec
-
isDouble
public boolean isDouble()
Returns whether the content represents a double number.
-
toDouble
public Double toDouble()
Returns the content as double, if possible.
-
isLong
public boolean isLong()
Returns whether the content represents a long number.
-
toLong
public Long toLong()
Returns the content as long, if possible. First, a Double object is created and then the longValue() method called to return the value.
-
isFormula
public boolean isFormula()
Returns whether the content represents a formula.
-
isObject
public boolean isObject()
Returns whether the content represents an object.
-
-