Package adams.data.conversion
Class SpreadSheetAddFormulaRow
-
- All Implemented Interfaces:
AdditionalInformationHandler
,CleanUpHandler
,Destroyable
,GlobalInfoSupporter
,LoggingLevelHandler
,LoggingSupporter
,OptionHandler
,QuickInfoSupporter
,ShallowCopySupporter<AbstractConversion>
,SizeOfHandler
,Stoppable
,Conversion
,InPlaceProcessing
,Serializable
public class SpreadSheetAddFormulaRow extends AbstractInPlaceSpreadSheetConversion
Adds a row with a user-supplied formula for the specified columns.
-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
-formula <adams.parser.SpreadSheetFormulaText> (property: formula) The formula to add (incl '='); use '@' as placeholder for the current column and '#' for the last row. default: =sum(@1:@#)
-columns <adams.data.spreadsheet.SpreadSheetColumnRange> (property: columns) The range of columns to add the formula for; A range is a comma-separated list of single 1-based indices or sub-ranges of indices ('start-end'); ' inv(...)' inverts the range '...'; column names (case-sensitive) as well as the following placeholders can be used: first, second, third, last_2, last_1, last; numeric indices can be enforced by preceding them with '#' (eg '#12'); column names can be surrounded by double quotes. 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 '...'; column names (case-sensitive) as well as the following placeholders can be used: first, second, third, last_2, last_1, last; numeric indices can be enforced by preceding them with '#' (eg '#12'); column names can be surrounded by double quotes.
-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 SpreadSheetColumnRange
m_Columns
the columns to add the sum to.protected boolean
m_ExpandVariables
whether to expand variables.protected SpreadSheetFormulaText
m_Formula
the formula to add.static String
PLACEHOLDER_CURRENT_COLUMN
the placeholder for the current column.static String
PLACEHOLDER_LAST_COLUMN
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 SpreadSheetAddFormulaRow()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description String
columnsTipText()
Returns the tip text for this property.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.SpreadSheetColumnRange
getColumns()
Returns the range of columns to add the sum for.boolean
getExpandVariables()
Returns whether to expand any variable first before adding the formula to the spreadsheet.SpreadSheetFormulaText
getFormula()
Returns the formula in use.String
globalInfo()
Returns a string describing the object.void
setColumns(SpreadSheetColumnRange value)
Sets the range of columns to add the sum for.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.-
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_COLUMN
public static final String PLACEHOLDER_CURRENT_COLUMN
the placeholder for the current column.- See Also:
- Constant Field Values
-
PLACEHOLDER_LAST_COLUMN
public static final String PLACEHOLDER_LAST_COLUMN
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_Formula
protected SpreadSheetFormulaText m_Formula
the formula to add.
-
m_Columns
protected SpreadSheetColumnRange m_Columns
the columns to add the sum 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
-
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.
-
setColumns
public void setColumns(SpreadSheetColumnRange value)
Sets the range of columns to add the sum for.- Parameters:
value
- the range
-
getColumns
public SpreadSheetColumnRange getColumns()
Returns the range of columns to add the sum for.- Returns:
- true range
-
columnsTipText
public String columnsTipText()
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
-
-