public abstract class AbstractDataTable extends java.lang.Object implements DataTable, java.lang.Cloneable, PublicCloneable
| Modifier and Type | Field and Description |
|---|---|
static TableFormat |
DEFAULT_FORMAT |
static java.lang.String |
ELEMENT_ID |
| Constructor and Description |
|---|
AbstractDataTable() |
| Modifier and Type | Method and Description |
|---|---|
DataTable |
addRecords(java.util.List<DataRecord> records)
Adds new records to the table.
|
void |
append(DataTable src) |
boolean |
applyCachedFormat(java.util.Optional<FormatCache> formatCacheOpt) |
DataTable |
clone() |
DataTable |
cloneIfImmutable() |
void |
close() |
boolean |
conform(TableFormat rf) |
java.lang.String |
conformMessage(TableFormat rf) |
java.lang.String |
dataAsString() |
java.lang.String |
dataAsString(boolean showFieldNames,
boolean showHiddenFields) |
java.lang.String |
encode() |
java.lang.String |
encode(boolean useVisibleSeparators) |
java.lang.String |
encode(ClassicEncodingSettings settings) |
java.lang.StringBuilder |
encode(java.lang.StringBuilder finalSB,
ClassicEncodingSettings settings,
java.lang.Boolean isTransferEncode,
java.lang.Integer encodeLevel) |
java.lang.Integer |
findIndex(DataRecord record)
Returns the index of the first occurrence of
record in this Data Table, or null if this Data Table does not contain the specified record. |
java.lang.Integer |
findIndex(java.lang.String field,
java.lang.Object value) |
void |
fixRecords() |
java.lang.Object |
get()
Returns value of first field in first record of the table.
|
java.lang.String |
getDescription()
Returns human-readable description of the table.
|
java.lang.String |
getEncodedData(ClassicEncodingSettings settings) |
java.lang.StringBuilder |
getEncodedData(java.lang.StringBuilder finalSB,
ClassicEncodingSettings settings,
java.lang.Boolean isTransferEncode,
java.lang.Integer encodeLevel) |
int |
getFieldCount()
Returns number of fields in the table.
|
TableFormat |
getFormat()
Returns format of the table.
|
FieldFormat |
getFormat(int field)
Returns format of field with specified index.
|
FieldFormat |
getFormat(java.lang.String name)
Returns format of field with specified name.
|
java.lang.Long |
getId()
Returns table ID.
|
java.lang.String |
getInvalidationMessage() |
java.lang.Integer |
getQuality() |
DataRecord |
getRecordById(java.lang.String id) |
java.util.List<DataRecord> |
getRecords()
Returns list of table records.
|
java.util.Date |
getTimestamp() |
java.lang.Object |
getValue() |
boolean |
hasField(java.lang.String field) |
boolean |
isImmutable() |
boolean |
isInvalid() |
void |
joinFormats() |
DataRecord |
rec()
Returns first record of the table.
|
DataRecord |
removeRecord(int index)
Removes record with specified index from the table.
|
protected abstract DataRecord |
removeRecordImpl(int index) |
void |
removeRecordsByIds(java.util.Collection<java.lang.String> ids)
Removes all records from the table which contain in ids.
|
DataRecord |
select(DataTableQuery query) |
DataRecord |
select(java.lang.String field,
java.lang.Object value) |
java.util.List<DataRecord> |
selectAll(DataTableQuery query) |
DataTable |
setFormat(TableFormat format)
Sets new format for the table.
|
void |
setInvalidationMessage(java.lang.String invalidationMessage) |
void |
setQuality(java.lang.Integer quality) |
void |
setTimestamp(java.util.Date timestamp) |
void |
sort(java.lang.String field,
boolean ascending) |
void |
splitFormat() |
java.util.stream.Stream<DataRecord> |
stream() |
void |
swapRecords(int index1,
int index2)
Swaps two records.
|
java.lang.String |
toString() |
void |
validate(Context context,
ContextManager contextManager,
CallerController caller)
Executes table validators to make sure table data is valid.
|
void |
validateRecord(DataRecord record)
Executes validators of a specific record to make sure its data is valid.
|
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitaddRecord, addRecord, addRecord, addRecord, compareTo, dataAsString, equals, findIndex, getRecord, getRecordCount, hashCode, isOneCellTable, isSimple, iterator, iterator, makeImmutable, removeRecords, reorderRecord, setId, setRecord, sort, sort, toDefaultStringpublic static final java.lang.String ELEMENT_ID
public static final TableFormat DEFAULT_FORMAT
public int getFieldCount()
getFieldCount in interface DataTablepublic TableFormat getFormat()
public FieldFormat getFormat(int field)
public FieldFormat getFormat(java.lang.String name)
public DataTable setFormat(TableFormat format)
public DataTable addRecords(java.util.List<DataRecord> records)
DataTableaddRecords in interface DataTablepublic boolean applyCachedFormat(java.util.Optional<FormatCache> formatCacheOpt)
applyCachedFormat in interface DataTablepublic boolean hasField(java.lang.String field)
public void validate(Context context, ContextManager contextManager, CallerController caller) throws DataTableException
DataTablevalidate in interface DataTableDataTableExceptionpublic void validateRecord(DataRecord record) throws ValidationException
DataTablevalidateRecord in interface DataTableValidationExceptionpublic void swapRecords(int index1,
int index2)
IllegalStateExceptionswapRecords in interface DataTablepublic java.util.List<DataRecord> getRecords()
getRecords in interface DataTablepublic java.lang.String getInvalidationMessage()
getInvalidationMessage in interface DataTablepublic void setInvalidationMessage(java.lang.String invalidationMessage)
setInvalidationMessage in interface DataTablepublic java.util.Date getTimestamp()
getTimestamp in interface DataTablegetTimestamp in interface AttributedObjectpublic void setTimestamp(java.util.Date timestamp)
setTimestamp in interface DataTablesetTimestamp in interface AttributedObjectpublic java.lang.Integer getQuality()
getQuality in interface DataTablegetQuality in interface AttributedObjectpublic void setQuality(java.lang.Integer quality)
setQuality in interface DataTablesetQuality in interface AttributedObjectpublic java.lang.Object getValue()
getValue in interface DataTablegetValue in interface AttributedObjectpublic DataRecord getRecordById(java.lang.String id)
getRecordById in interface DataTablepublic void removeRecordsByIds(java.util.Collection<java.lang.String> ids)
DataTableremoveRecordsByIds in interface DataTablepublic DataRecord removeRecord(int index)
removeRecord in interface DataTableprotected abstract DataRecord removeRecordImpl(int index)
public java.lang.String getEncodedData(ClassicEncodingSettings settings)
getEncodedData in interface DataTablepublic java.lang.StringBuilder getEncodedData(java.lang.StringBuilder finalSB,
ClassicEncodingSettings settings,
java.lang.Boolean isTransferEncode,
java.lang.Integer encodeLevel)
getEncodedData in interface DataTablepublic java.lang.String encode(boolean useVisibleSeparators)
public java.lang.String encode(ClassicEncodingSettings settings)
public java.lang.StringBuilder encode(java.lang.StringBuilder finalSB,
ClassicEncodingSettings settings,
java.lang.Boolean isTransferEncode,
java.lang.Integer encodeLevel)
encode in interface DataTableencode in interface StringEncodablepublic java.lang.String toString()
public java.lang.String getDescription()
getDescription in interface DataTablepublic void fixRecords()
fixRecords in interface DataTablepublic java.lang.String dataAsString()
dataAsString in interface DataTablepublic java.lang.String dataAsString(boolean showFieldNames,
boolean showHiddenFields)
dataAsString in interface DataTablepublic boolean conform(TableFormat rf)
public java.lang.String conformMessage(TableFormat rf)
conformMessage in interface DataTablepublic java.util.List<DataRecord> selectAll(DataTableQuery query)
public DataRecord select(DataTableQuery query)
public DataRecord select(java.lang.String field, java.lang.Object value)
public java.lang.Integer findIndex(java.lang.String field,
java.lang.Object value)
public java.lang.Integer findIndex(DataRecord record)
record in this Data Table, or null if this Data Table does not contain the specified record.public void sort(java.lang.String field,
boolean ascending)
public DataRecord rec()
public java.lang.Object get()
public void splitFormat()
splitFormat in interface DataTablepublic void joinFormats()
joinFormats in interface DataTablepublic DataTable clone()
clone in interface DataTableclone in interface PublicCloneableclone in class java.lang.Objectpublic DataTable cloneIfImmutable()
cloneIfImmutable in interface DataTablepublic boolean isImmutable()
isImmutable in interface DataTablepublic java.util.stream.Stream<DataRecord> stream()