Package adams.data.conversion
Class SpreadSheetAddFormulaColumn
-
- All Implemented Interfaces:
AdditionalInformationHandler
,CleanUpHandler
,Destroyable
,GlobalInfoSupporter
,LoggingLevelHandler
,LoggingSupporter
,OptionHandler
,QuickInfoSupporter
,ShallowCopySupporter<AbstractConversion>
,SizeOfHandler
,Stoppable
,Conversion
,InPlaceProcessing
,Serializable
public class SpreadSheetAddFormulaColumn extends AbstractInPlaceSpreadSheetConversion
Adds a column with a user-supploed formula for the specified rows.
-logging-level <OFF|SEVERE|WARNING|INFO|CONFIG|FINE|FINER|FINEST> (property: loggingLevel) The logging level for outputting errors and debugging output. default: WARNING
-no-copy <boolean> (property: noCopy) If enabled, no copy of the spreadsheet is created before processing it. default: false
-header <java.lang.String> (property: header) The title of the formula column. default: Sum
-formula <adams.parser.SpreadSheetFormulaText> (property: formula) The formula to add (incl '='); use '@' as placeholder for the current row and '#' for the last column. default: =sum(A@:#@)
-rows <adams.core.Range> (property: rows) The range of rows to add the formula for. default: first-last example: A range is a comma-separated list of single 1-based indices or sub-ranges of indices ('start-end'); 'inv(...)' inverts the range '...'; the following placeholders can be used as well: first, second, third, last_2, last_1, last
-expand-variables <boolean> (property: expandVariables) If enabled, any variables in the formula get expanded first before adding it to the spreadsheet. default: false
- Author:
- fracpete (fracpete at waikato dot ac dot nz)
- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description protected boolean
m_ExpandVariables
whether to expand variables.protected SpreadSheetFormulaText
m_Formula
the formula to add.protected String
m_Header
the column header.protected Range
m_Rows
the rows to add the formula to.static String
PLACEHOLDER_CURRENT_ROW
the placeholder for the row.static String
PLACEHOLDER_LAST_COL
the placeholder for the last column.static String
PLACEHOLDER_LAST_ROW
the placeholder for the last row.-
Fields inherited from class adams.data.conversion.AbstractInPlaceSpreadSheetConversion
m_NoCopy
-
Fields inherited from class adams.data.conversion.AbstractConversion
m_Input, m_Output, m_Owner, m_Stopped
-
Fields inherited from class adams.core.option.AbstractOptionHandler
m_OptionManager
-
Fields inherited from class adams.core.logging.LoggingObject
m_Logger, m_LoggingIsEnabled, m_LoggingLevel
-
-
Constructor Summary
Constructors Constructor Description SpreadSheetAddFormulaColumn()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected SpreadSheet
convert(SpreadSheet input)
Generates the new spreadsheet from the input.void
defineOptions()
Adds options to the internal list of options.String
expandVariablesTipText()
Returns the tip text for this property.String
formulaTipText()
Returns the tip text for this property.boolean
getExpandVariables()
Returns whether to expand any variable first before adding the formula to the spreadsheet.SpreadSheetFormulaText
getFormula()
Returns the formula in use.String
getHeader()
Returns the column header in use.Range
getRows()
Returns the range of rows to add the sum for.String
globalInfo()
Returns a string describing the object.String
headerTipText()
Returns the tip text for this property.String
rowsTipText()
Returns the tip text for this property.void
setExpandVariables(boolean value)
Sets whether to expand any variable first before adding the formula to the spreadsheet.void
setFormula(SpreadSheetFormulaText value)
Sets the formula to use.void
setHeader(String value)
Sets the column header to use.void
setRows(Range value)
Sets the range of rows to add the sum for.-
Methods inherited from class adams.data.conversion.AbstractInPlaceSpreadSheetConversion
getNoCopy, noCopyTipText, setNoCopy
-
Methods inherited from class adams.data.conversion.AbstractSpreadSheetConversion
accepts, doConvert, generates
-
Methods inherited from class adams.data.conversion.AbstractConversion
checkData, cleanUp, convert, getAdditionalInformation, getInput, getInput, getOutput, getOutput, getOwner, getQuickInfo, reset, setInput, setOwner, shallowCopy, shallowCopy, stopExecution
-
Methods inherited from class adams.core.option.AbstractOptionHandler
cleanUpOptions, destroy, finishInit, getDefaultLoggingLevel, getOptionManager, initialize, loggingLevelTipText, newOptionManager, setLoggingLevel, toCommandLine, toString
-
Methods inherited from class adams.core.logging.LoggingObject
configureLogger, getLogger, getLoggingLevel, initializeLogging, isLoggingEnabled, sizeOf
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface adams.core.logging.LoggingLevelHandler
getLoggingLevel
-
-
-
-
Field Detail
-
PLACEHOLDER_CURRENT_ROW
public static final String PLACEHOLDER_CURRENT_ROW
the placeholder for the row.- See Also:
- Constant Field Values
-
PLACEHOLDER_LAST_COL
public static final String PLACEHOLDER_LAST_COL
the placeholder for the last column.- See Also:
- Constant Field Values
-
PLACEHOLDER_LAST_ROW
public static final String PLACEHOLDER_LAST_ROW
the placeholder for the last row.- See Also:
- Constant Field Values
-
m_Header
protected String m_Header
the column header.
-
m_Formula
protected SpreadSheetFormulaText m_Formula
the formula to add.
-
m_Rows
protected Range m_Rows
the rows to add the formula to.
-
m_ExpandVariables
protected boolean m_ExpandVariables
whether to expand variables.
-
-
Method Detail
-
globalInfo
public String globalInfo()
Returns a string describing the object.- Specified by:
globalInfo
in interfaceGlobalInfoSupporter
- Specified by:
globalInfo
in classAbstractOptionHandler
- Returns:
- a description suitable for displaying in the gui
-
defineOptions
public void defineOptions()
Adds options to the internal list of options.- Specified by:
defineOptions
in interfaceOptionHandler
- Overrides:
defineOptions
in classAbstractInPlaceSpreadSheetConversion
-
setHeader
public void setHeader(String value)
Sets the column header to use.- Parameters:
value
- the header
-
getHeader
public String getHeader()
Returns the column header in use.- Returns:
- the header
-
headerTipText
public String headerTipText()
Returns the tip text for this property.- Returns:
- tip text for this property suitable for displaying in the GUI or for listing the options.
-
setFormula
public void setFormula(SpreadSheetFormulaText value)
Sets the formula to use.- Parameters:
value
- the formula (incl. "=")
-
getFormula
public SpreadSheetFormulaText getFormula()
Returns the formula in use.- Returns:
- the formula (incl. "=")
-
formulaTipText
public String formulaTipText()
Returns the tip text for this property.- Returns:
- tip text for this property suitable for displaying in the GUI or for listing the options.
-
setRows
public void setRows(Range value)
Sets the range of rows to add the sum for.- Parameters:
value
- the range
-
getRows
public Range getRows()
Returns the range of rows to add the sum for.- Returns:
- true range
-
rowsTipText
public String rowsTipText()
Returns the tip text for this property.- Returns:
- tip text for this property suitable for displaying in the GUI or for listing the options.
-
setExpandVariables
public void setExpandVariables(boolean value)
Sets whether to expand any variable first before adding the formula to the spreadsheet.- Parameters:
value
- true if to expand first
-
getExpandVariables
public boolean getExpandVariables()
Returns whether to expand any variable first before adding the formula to the spreadsheet.- Returns:
- true if to expand first
-
expandVariablesTipText
public String expandVariablesTipText()
Returns the tip text for this property.- Returns:
- tip text for this property suitable for displaying in the GUI or for listing the options.
-
convert
protected SpreadSheet convert(SpreadSheet input) throws Exception
Generates the new spreadsheet from the input.- Specified by:
convert
in classAbstractSpreadSheetConversion
- Parameters:
input
- the incoming spreadsheet- Returns:
- the generated spreadsheet
- Throws:
Exception
- if conversion fails for some reason
-
-