APIdia Launch Partner
Top Description Fields Constructors Methods
io.github.spannm.jackcess.impl

public Class TableCreator

extends TableMutator
Class Inheritance
Imports
io.github.spannm.jackcess.ColumnBuilder, .DataType, .IndexBuilder, .PropertyMap, .TableBuilder, java.io.IOException, java.util.ArrayList, .Collections, .EnumSet, .HashSet, .IdentityHashMap, .List, .Map, .Set

Helper class used to maintain state during table creation.

Field Summary

Modifier and TypeField and Description
private List<ColumnBuilder>
private final IdentityHashMap<ColumnBuilder, TableMutator.ColumnState>
private int
private final List<TableMutator.IndexDataState>
private List<IndexBuilder>
private int
private final List<ColumnBuilder>
private String
private int
private int

Constructor Summary

AccessConstructor and Description
public

Method Summary

Modifier and TypeMethod and Description
public short

Returns:

The number of variable length columns which are not long values found in the list
countNonLongVariableLength
()

Returns the number of variable length columns which are not long values found in the list.

public TableImpl
createTable(TableBuilder table)

Creates the table in the database.

private TableMutator.IndexDataState
private List<ColumnBuilder>
pack-priv short
public List<ColumnBuilder>
public TableMutator.ColumnState
public int
public TableMutator.IndexDataState
public List<TableMutator.IndexDataState>
public List<IndexBuilder>
public int
public List<ColumnBuilder>
public String
pack-priv String
public int
public int
public boolean
pack-priv boolean
isComplexColumn(String colName)

Implements abstract io.github.spannm.jackcess.impl.TableMutator.isComplexColumn.

Checks whether the named column holds a complex type.

private static boolean
private static boolean
private void
validate()

Validates the new table information before attempting creation.

protected String
Inherited from io.github.spannm.jackcess.impl.TableMutator:
getColumnOffsetsgetForeignKeysetColumnOffsetsvalidateAutoNumberColumnvalidateColumnvalidateIndex

Field Detail

columnsback to summary
private List<ColumnBuilder> columns
columnStatesback to summary
private final IdentityHashMap<ColumnBuilder, TableMutator.ColumnState> columnStates
indexCountback to summary
private int indexCount
indexDataStatesback to summary
private final List<TableMutator.IndexDataState> indexDataStates
indexesback to summary
private List<IndexBuilder> indexes
logicalIndexCountback to summary
private int logicalIndexCount
lvalColsback to summary
private final List<ColumnBuilder> lvalCols
nameback to summary
private String name
tdefPageNumberback to summary
private int tdefPageNumber
umapPageNumberback to summary
private int umapPageNumber

Constructor Detail

TableCreatorback to summary
public TableCreator(DatabaseImpl database)

Method Detail

countNonLongVariableLengthback to summary
public short countNonLongVariableLength()

Returns the number of variable length columns which are not long values found in the list.

Returns:short

The number of variable length columns which are not long values found in the list

createTableback to summary
public TableImpl createTable(TableBuilder table) throws IOException

Creates the table in the database.

findIndexDataStateback to summary
private TableMutator.IndexDataState findIndexDataState(IndexBuilder idx)
getAutoNumberColumnsback to summary
private List<ColumnBuilder> getAutoNumberColumns()
getColumnNumberback to summary
pack-priv short getColumnNumber(String colName)

Implements abstract io.github.spannm.jackcess.impl.TableMutator.getColumnNumber.

Annotations
@Override
getColumnsback to summary
public List<ColumnBuilder> getColumns()
getColumnStateback to summary
public TableMutator.ColumnState getColumnState(ColumnBuilder col)

Implements abstract io.github.spannm.jackcess.impl.TableMutator.getColumnState.

Annotations
@Override
getIndexCountback to summary
public int getIndexCount()
getIndexDataStateback to summary
public TableMutator.IndexDataState getIndexDataState(IndexBuilder idx)

Implements abstract io.github.spannm.jackcess.impl.TableMutator.getIndexDataState.

Annotations
@Override
getIndexDataStatesback to summary
public List<TableMutator.IndexDataState> getIndexDataStates()
getIndexesback to summary
public List<IndexBuilder> getIndexes()
getLogicalIndexCountback to summary
public int getLogicalIndexCount()
getLongValueColumnsback to summary
public List<ColumnBuilder> getLongValueColumns()
getNameback to summary
public String getName()
getTableNameback to summary
pack-priv String getTableName()

Implements abstract io.github.spannm.jackcess.impl.TableMutator.getTableName.

Annotations
@Override
getTdefPageNumberback to summary
public int getTdefPageNumber()

Implements abstract io.github.spannm.jackcess.impl.TableMutator.getTdefPageNumber.

Annotations
@Override
getUmapPageNumberback to summary
public int getUmapPageNumber()
hasIndexesback to summary
public boolean hasIndexes()
isComplexColumnback to summary
pack-priv boolean isComplexColumn(String colName)

Implements abstract io.github.spannm.jackcess.impl.TableMutator.isComplexColumn.

Doc from io.github.spannm.jackcess.impl.TableMutator.isComplexColumn.

Checks whether the named column holds a complex type.

Annotations
@Override
sameIndexDataback to summary
private static boolean sameIndexData(IndexBuilder idx1, IndexBuilder idx2)
sameIndexDataback to summary
private static boolean sameIndexData(IndexBuilder.Column col1, IndexBuilder.Column col2)
validateback to summary
private void validate() throws IOException

Validates the new table information before attempting creation.

withErrorContextback to summary
protected String withErrorContext(String msg)

Implements abstract io.github.spannm.jackcess.impl.TableMutator.withErrorContext.

Annotations
@Override