Class InsertTableOperation
java.lang.Object
ro.sync.ecss.extensions.commons.table.operations.AbstractTableOperation
ro.sync.ecss.extensions.docbook.table.InsertTableOperation
- All Implemented Interfaces:
AuthorOperation,Extension,InsertTableCellsContentConstants,InsertTableOperationBase
@API(type=INTERNAL,
src=PUBLIC)
public class InsertTableOperation
extends AbstractTableOperation
implements InsertTableOperationBase, InsertTableCellsContentConstants
Operation used to insert a CALS Docbook table or
an HTML table in a DocBook document.
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final StringThe table model argument name.static final ArgumentDescriptorArgument for default table model.Fields inherited from class ro.sync.ecss.extensions.commons.table.operations.AbstractTableOperation
CHANGE_TRACKING_BEHAVIOR_ARGUMENT, TABLE_INFO_ARGUMENT_DESCRIPTOR, TABLE_INFO_ARGUMENT_NAME, tableHelperFields inherited from interface ro.sync.ecss.extensions.api.AuthorOperation
NAMESPACE_ARGUMENT, NAMESPACE_ARGUMENT_DESCRIPTOR, SCHEMA_AWARE_ARGUMENT, SCHEMA_AWARE_ARGUMENT_DESCRIPTORFields 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 -
Method Summary
Modifier and TypeMethodDescriptionprotected voiddoOperationInternal(AuthorAccess authorAccess, ArgumentsMap args) Perform the actual operation.The operation will display a dialog for choosing table attributes.voidinsertTable(AuthorDocumentFragment[] fragments, boolean cellsFragments, AuthorAccess authorAccess, String namespace, AuthorTableHelper tableHelper, TableInfo tableInfo) If the fragments array is not null, this method converts the given fragments array into a table.voidinsertTable(AuthorDocumentFragment[] fragments, List<Map<String, String>> rowAttributes, boolean cellsFragments, AuthorAccess authorAccess, String namespace, AuthorTableHelper tableHelper, TableInfo tableInfo) If the fragments array is not null, this method converts the given fragments array into a table.Methods inherited from class ro.sync.ecss.extensions.commons.table.operations.AbstractTableOperation
createEmptyCell, doOperation, findCellInsertionOffset, getElementAncestor, isElement, isTableElement
-
Field Details
-
DEFAULT_TABLE_MODEL_ARGUMENT_NAME
The table model argument name.- See Also:
-
TABLE_MODEL_ARGUMENT
Argument for default table model.
-
-
Constructor Details
-
InsertTableOperation
public InsertTableOperation()Constructor.
-
-
Method Details
-
doOperationInternal
protected void doOperationInternal(AuthorAccess authorAccess, ArgumentsMap args) throws AuthorOperationException Description copied from class:AbstractTableOperationPerform the actual operation.- Specified by:
doOperationInternalin classAbstractTableOperation- 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:
-
getArguments
The operation will display a dialog for choosing table attributes.- Specified by:
getArgumentsin interfaceAuthorOperation- Returns:
- An array of
ArgumentDescriptorrepresenting the arguments this operation uses. - See Also:
-
getDescription
- Specified by:
getDescriptionin interfaceExtension- Returns:
- The description of the extension.
- See Also:
-
insertTable
public void insertTable(AuthorDocumentFragment[] fragments, boolean cellsFragments, AuthorAccess authorAccess, String namespace, AuthorTableHelper tableHelper, TableInfo tableInfo) throws AuthorOperationException Description copied from interface:InsertTableOperationBaseIf the fragments array is not null, this method converts the given fragments array into a table. Each fragments will correspond to a cell. The resulting table will have one column and as many rows as fragments length. If no fragment is provided an empty table is inserted (a dialog is shown to choose all the table properties)- Specified by:
insertTablein interfaceInsertTableOperationBase- Parameters:
fragments- An array of AuthorDocumentFragments that are used as content of the inserted cells.cellsFragments- If the value istruethen the fragments where originally cells.authorAccess- The author access.namespace- The namespace.tableHelper- The table helper.tableInfo- The details about table creation. If null, a dialog is presented to let the user choose the details.- Throws:
AuthorOperationException- See Also:
-
insertTable
public void insertTable(AuthorDocumentFragment[] fragments, List<Map<String, String>> rowAttributes, boolean cellsFragments, AuthorAccess authorAccess, String namespace, AuthorTableHelper tableHelper, TableInfo tableInfo) throws AuthorOperationExceptionIf the fragments array is not null, this method converts the given fragments array into a table. Each fragments will correspond to a cell. The resulting table will have one column and as many rows as fragments length. If no fragment is provided an empty table is inserted (a dialog is shown to choose all the table properties)- Parameters:
fragments- An array of AuthorDocumentFragments that are used as content of the inserted cells.rowAttributes- For each fragment this list can contain a list of corresponding attributes that can be set on the row element.cellsFragments- If the value istruethen the fragments where originally cells.authorAccess- The author access.namespace- The namespace.tableHelper- The table helper.tableInfo- The details about table creation. If null, a dialog is presented to let the user choose the details.- Throws:
AuthorOperationException
-