@Test @DisplayName("return a list of entity columns") void returnColumnList() { S storage = storage(); ImmutableList<Column> columns = storage.columnList(); int systemColumnCount = LifecycleFlagField.values().length; int protoColumnCount = 6; int expectedSize = systemColumnCount + protoColumnCount; assertThat(columns).hasSize(expectedSize); }
protected final ImmutableList<Column> columnList() { return columns().columnList(); }
RecordStorage extends AbstractStorage<I, EntityRecord, RecordReadRequest<I>> implements StorageWithLifecycleFlags<I, EntityRecord, RecordReadRequest<I>>,
                   BulkStorageOperationsMixin<I, EntityRecord> { protected final ImmutableList<Column> columnList() { return columns().columnList(); } }
RecordStorage extends AbstractStorage<I, EntityRecord, RecordReadRequest<I>> implements StorageWithLifecycleFlags<I, EntityRecord, RecordReadRequest<I>>,
                   BulkStorageOperationsMixin<I, EntityRecord> { protected final ImmutableList<Column> columnList() { return columns().columnList(); } protected  RecordStorage(Class<? extends Entity<?, ?>> entityClass, boolean multitenant); }
RecordStorage extends AbstractStorage<I, EntityRecord, RecordReadRequest<I>> implements StorageWithLifecycleFlags<I, EntityRecord, RecordReadRequest<I>>,
                   BulkStorageOperationsMixin<I, EntityRecord> { protected final ImmutableList<Column> columnList() { return columns().columnList(); } protected  RecordStorage(Class<? extends Entity<?, ?>> entityClass, boolean multitenant); @Override Optional<EntityRecord> read(RecordReadRequest<I> request); @SuppressWarnings("CheckReturnValue") // calling builder method Optional<EntityRecord> read(RecordReadRequest<I> request, FieldMask fieldMask); void write(I id, EntityRecordWithColumns record); @Override void write(I id, EntityRecord record); void write(Map<I, EntityRecordWithColumns> records); @Override Optional<LifecycleFlags> readLifecycleFlags(I id); @Override void writeLifecycleFlags(I id, LifecycleFlags flags); abstract boolean delete(I id); @Override Iterator<@Nullable EntityRecord> readMultiple(Iterable<I> ids, FieldMask fieldMask); @Override Iterator<EntityRecord> readAll(ResponseFormat format); Iterator<EntityRecord> readAll(EntityQuery<I> query, ResponseFormat format); Iterator<EntityRecord> readAll(EntityQuery<I> query); @Internal Columns columns(); @Internal final ImmutableMap<ColumnName, Column> lifecycleColumns(); }
RecordStorage extends AbstractStorage<I, EntityRecord, RecordReadRequest<I>> implements StorageWithLifecycleFlags<I, EntityRecord, RecordReadRequest<I>>,
                   BulkStorageOperationsMixin<I, EntityRecord> { protected final ImmutableList<Column> columnList() { return columns().columnList(); } protected  RecordStorage(Class<? extends Entity<?, ?>> entityClass, boolean multitenant); @Override Optional<EntityRecord> read(RecordReadRequest<I> request); @SuppressWarnings("CheckReturnValue") // calling builder method Optional<EntityRecord> read(RecordReadRequest<I> request, FieldMask fieldMask); void write(I id, EntityRecordWithColumns record); @Override void write(I id, EntityRecord record); void write(Map<I, EntityRecordWithColumns> records); @Override Optional<LifecycleFlags> readLifecycleFlags(I id); @Override void writeLifecycleFlags(I id, LifecycleFlags flags); abstract boolean delete(I id); @Override Iterator<@Nullable EntityRecord> readMultiple(Iterable<I> ids, FieldMask fieldMask); @Override Iterator<EntityRecord> readAll(ResponseFormat format); Iterator<EntityRecord> readAll(EntityQuery<I> query, ResponseFormat format); Iterator<EntityRecord> readAll(EntityQuery<I> query); @Internal Columns columns(); @Internal final ImmutableMap<ColumnName, Column> lifecycleColumns();  }