Class InsertColumnOperation
- java.lang.Object
-
- ro.sync.ecss.extensions.commons.table.operations.AbstractTableOperation
-
- ro.sync.ecss.extensions.commons.table.operations.InsertColumnOperationBase
-
- ro.sync.ecss.extensions.commons.table.operations.cals.InsertColumnOperation
-
- All Implemented Interfaces:
AuthorOperation
,Extension
,CALSConstants
,InsertTableCellsContentConstants
- Direct Known Subclasses:
InsertColumnOperation
,InsertSingleColumnOperation
@API(type=INTERNAL, src=PUBLIC) public class InsertColumnOperation extends InsertColumnOperationBase implements CALSConstants, InsertTableCellsContentConstants
Operation used to insert one or more CALS table columns.
-
-
Field Summary
Fields Modifier and Type Field Description protected java.lang.String
cellContent
The fragment that must be introduced in the table cells-
Fields inherited from class ro.sync.ecss.extensions.commons.table.operations.InsertColumnOperationBase
INSERT_MULTIPLE_COLUMNS_ARGUMENT_DESCRIPTOR, POSITION_ARGUMENT, POSITION_ARGUMENT_DESCRIPTOR
-
Fields inherited from class ro.sync.ecss.extensions.commons.table.operations.AbstractTableOperation
CHANGE_TRACKING_BEHAVIOR_ARGUMENT, TABLE_INFO_ARGUMENT_DESCRIPTOR, TABLE_INFO_ARGUMENT_NAME, tableHelper
-
Fields inherited from interface ro.sync.ecss.extensions.api.AuthorOperation
NAMESPACE_ARGUMENT, NAMESPACE_ARGUMENT_DESCRIPTOR, SCHEMA_AWARE_ARGUMENT, SCHEMA_AWARE_ARGUMENT_DESCRIPTOR
-
Fields inherited from interface ro.sync.ecss.extensions.commons.table.operations.cals.CALSConstants
ATTRIBUTE_NAME_ALIGN, ATTRIBUTE_NAME_COLNAME, ATTRIBUTE_NAME_COLNUM, ATTRIBUTE_NAME_COLS, ATTRIBUTE_NAME_COLSEP, ATTRIBUTE_NAME_COLWIDTH, ATTRIBUTE_NAME_ID, ATTRIBUTE_NAME_MOREROWS, ATTRIBUTE_NAME_NAMEEND, ATTRIBUTE_NAME_NAMEST, ATTRIBUTE_NAME_ROWSEP, ATTRIBUTE_NAME_SPANNAME, ATTRIBUTE_NAME_TABLE_WIDTH, ATTRIBUTE_NAME_XML_ID, ELEMENT_NAME_COLSPEC, ELEMENT_NAME_ENTRY, ELEMENT_NAME_INFORMALTABLE, ELEMENT_NAME_ROW, ELEMENT_NAME_SPANSPEC, ELEMENT_NAME_TABLE, ELEMENT_NAME_TGROUP
-
Fields inherited from interface ro.sync.ecss.extensions.commons.table.operations.InsertTableCellsContentConstants
CELL_FRAGMENT_ARGUMENT, CELL_FRAGMENT_ARGUMENT_IN_ARRAY, CELL_FRAGMENT_ARGUMENT_NAME
-
-
Constructor Summary
Constructors Constructor Description InsertColumnOperation()
Constructor.InsertColumnOperation(AuthorTableHelper tableHelper)
Constructor.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected void
doOperationInternal(AuthorAccess authorAccess, ArgumentsMap args)
Perform the actual operation.ArgumentDescriptor[]
getArguments()
protected java.lang.String
getCellElementName(AuthorElement row, int newColumnIndex)
Get the name of the element that will be inserted as a cell into the table.protected java.lang.String
getDefaultColWidthValue()
Get the default col width value.protected java.lang.String
getDefaultContentForEmptyCells()
Get the default content that must be introduced in empty cells.protected void
updateColumnCellsSpan(AuthorAccess authorAccess, AuthorTableCellSpanProvider tableSupport, AuthorElement tgroup, int newColumnIndex, TableColumnSpecificationInformation columnSpecification, java.lang.String namespace, int noOfColumnsToBeInserted)
Overwrite the base implementation.-
Methods inherited from class ro.sync.ecss.extensions.commons.table.operations.InsertColumnOperationBase
getDescription, insertColumns, insertColumns, performInsertColumn, removeMultipleInsertionDescriptor
-
Methods inherited from class ro.sync.ecss.extensions.commons.table.operations.AbstractTableOperation
createEmptyCell, doOperation, findCellInsertionOffset, getElementAncestor, isElement, isTableElement
-
-
-
-
Constructor Detail
-
InsertColumnOperation
public InsertColumnOperation()
Constructor.
-
InsertColumnOperation
public InsertColumnOperation(AuthorTableHelper tableHelper)
Constructor.- Parameters:
tableHelper
- The table helper
-
-
Method Detail
-
doOperationInternal
protected void doOperationInternal(AuthorAccess authorAccess, ArgumentsMap args) throws AuthorOperationException
Description copied from class:AbstractTableOperation
Perform the actual operation.- Overrides:
doOperationInternal
in classInsertColumnOperationBase
- Parameters:
authorAccess
- The author access. Provides access to specific informations and actions for editor, document, workspace, tables, change tracking, utility a.s.o.args
- The map of arguments. All the arguments defined by methodAuthorOperation.getArguments()
must be present in the map of arguments.- Throws:
AuthorOperationException
- Thrown when the operation fails.- See Also:
InsertColumnOperationBase.doOperationInternal(ro.sync.ecss.extensions.api.AuthorAccess, ro.sync.ecss.extensions.api.ArgumentsMap)
-
updateColumnCellsSpan
protected void updateColumnCellsSpan(AuthorAccess authorAccess, AuthorTableCellSpanProvider tableSupport, AuthorElement tgroup, int newColumnIndex, TableColumnSpecificationInformation columnSpecification, java.lang.String namespace, int noOfColumnsToBeInserted) throws AuthorOperationException
Overwrite the base implementation. For CALS tables the column specifications must be updated.- Overrides:
updateColumnCellsSpan
in classInsertColumnOperationBase
- Parameters:
authorAccess
- The author access. Provides access to specific informations and actions for editor, document, workspace, tables, change tracking, utility a.s.o.tableSupport
- The table cell span provider.tgroup
- The table element.newColumnIndex
- The index of the column to insert.columnSpecification
- The table column specification data.namespace
- The namespace to be used.noOfColumnsToBeInserted
- The number of columns to be inserted.- Throws:
AuthorOperationException
- When the insertion fails.- See Also:
InsertColumnOperationBase.updateColumnCellsSpan(AuthorAccess, AuthorTableCellSpanProvider, AuthorElement, int, TableColumnSpecificationInformation, String, int)
-
getDefaultColWidthValue
protected java.lang.String getDefaultColWidthValue()
Get the default col width value. Can be overwritten by an implementor.- Returns:
- The default col width value.
-
getCellElementName
protected java.lang.String getCellElementName(AuthorElement row, int newColumnIndex)
Description copied from class:InsertColumnOperationBase
Get the name of the element that will be inserted as a cell into the table.- Specified by:
getCellElementName
in classInsertColumnOperationBase
- Parameters:
row
- The row element where the new cell will be inserted.newColumnIndex
- The new column index. 0 based.- Returns:
- The name of cell element.
- See Also:
InsertColumnOperationBase.getCellElementName(ro.sync.ecss.extensions.api.node.AuthorElement, int)
-
getDefaultContentForEmptyCells
protected java.lang.String getDefaultContentForEmptyCells()
Description copied from class:InsertColumnOperationBase
Get the default content that must be introduced in empty cells.- Overrides:
getDefaultContentForEmptyCells
in classInsertColumnOperationBase
- Returns:
- The default content that must be introduced in empty cells.
Default:
null
. - See Also:
InsertColumnOperationBase.getDefaultContentForEmptyCells()
-
getArguments
public ArgumentDescriptor[] getArguments()
- Specified by:
getArguments
in interfaceAuthorOperation
- Overrides:
getArguments
in classInsertColumnOperationBase
- Returns:
- An array of
ArgumentDescriptor
representing the arguments this operation uses. - See Also:
InsertColumnOperationBase.getArguments()
-
-