I
- the record ID typeM
- the message typepublic abstract class MessageTable<I,M extends com.google.protobuf.Message> extends AbstractTable<I,M,M>
Message
type.Modifier and Type | Class and Description |
---|---|
static class |
MessageTable.BytesColumn<M extends com.google.protobuf.Message>
A column responsible for storing serialized message bytes.
|
static interface |
MessageTable.Column<M extends com.google.protobuf.Message>
Represents a
MessageTable column. |
Modifier | Constructor and Description |
---|---|
protected |
MessageTable(java.lang.String name,
IdColumn<I> idColumn,
DataSourceWrapper dataSource,
TypeMapping typeMapping) |
Modifier and Type | Method and Description |
---|---|
static <M extends com.google.protobuf.Message> |
bytesColumn()
Obtains a column responsible for storing serialized message bytes.
|
protected io.spine.server.storage.jdbc.message.InsertSingleMessage<I,M> |
composeInsertQuery(I id,
M record) |
protected io.spine.server.storage.jdbc.message.SelectSingleMessage<I,M> |
composeSelectQuery(I id) |
protected io.spine.server.storage.jdbc.message.UpdateSingleMessage<I,M> |
composeUpdateQuery(I id,
M record) |
protected abstract com.google.protobuf.Descriptors.Descriptor |
messageDescriptor()
Obtains a
Descriptor of the stored message type. |
protected abstract java.lang.Iterable<? extends MessageTable.Column<M>> |
messageSpecificColumns()
Obtains columns specific to a concrete subtype of the
MessageTable . |
protected java.util.List<? extends MessageTable.Column<M>> |
tableColumns() |
columnDefaults, containsRecord, create, dataSource, delete, deleteAll, idColumn, index, insert, name, read, update, write
protected MessageTable(java.lang.String name, IdColumn<I> idColumn, DataSourceWrapper dataSource, TypeMapping typeMapping)
protected abstract com.google.protobuf.Descriptors.Descriptor messageDescriptor()
Descriptor
of the stored message type.protected java.util.List<? extends MessageTable.Column<M>> tableColumns()
tableColumns
in class AbstractTable<I,M extends com.google.protobuf.Message,M extends com.google.protobuf.Message>
protected abstract java.lang.Iterable<? extends MessageTable.Column<M>> messageSpecificColumns()
MessageTable
.protected io.spine.server.storage.jdbc.message.InsertSingleMessage<I,M> composeInsertQuery(I id, M record)
composeInsertQuery
in class AbstractTable<I,M extends com.google.protobuf.Message,M extends com.google.protobuf.Message>
protected io.spine.server.storage.jdbc.message.UpdateSingleMessage<I,M> composeUpdateQuery(I id, M record)
composeUpdateQuery
in class AbstractTable<I,M extends com.google.protobuf.Message,M extends com.google.protobuf.Message>
protected io.spine.server.storage.jdbc.message.SelectSingleMessage<I,M> composeSelectQuery(I id)
composeSelectQuery
in class AbstractTable<I,M extends com.google.protobuf.Message,M extends com.google.protobuf.Message>
public static <M extends com.google.protobuf.Message> MessageTable.BytesColumn<M> bytesColumn()