# Interface RowStore

All Superinterfaces:
  `TableSink`

All Known Implementing Classes:
  `ByteStoreRowStore, DiscardRowStore, DiskRowStore, ListRowStore, SidewaysRowStore`

public interface RowStore extends TableSink
Describes an object which can be used to store table data. If you have a `RowStore` you can stream table data into it, and then retrieve it as a random-access StarTable later. This interface abstracts that functionality so you don't need to worry how the storage is handled. You should usually obtain a `RowStore` instance from a `StoragePolicy`.

Since:
  30 Jul 2004
Author:
  Mark Taylor (Starlink)
See Also:
  - `StoragePolicy`

## Method Summary

Modifier and Type
Method
Description
`StarTable`
`getStarTable()`
Obtains a StarTable which contains the data and metadata that have been written into this sink.

### Methods inherited from interface TableSink

`acceptMetadata, acceptRow, endRows`

## Method Details

### getStarTable

StarTable getStarTable()
Obtains a StarTable which contains the data and metadata that have been written into this sink. In general it is only legal to call this method following a call to `TableSink.endRows()`; failing to observe this sequence may earn you an `IllegalStateException`

Returns:
  a random-access StarTable containing the written rows