Documentation
¶
Index ¶
- func ToDbColumn(definition ColumnDefinition) (*gocql.ColumnMetadata, error)
- type Changeset
- type ClusteringExpression
- type Column
- type ColumnDefinition
- type ColumnUpdate
- type ColumnsResponse
- type Filter
- type ModelError
- type PrimaryKey
- type Query
- type RowAdd
- type Rows
- type RowsResponse
- type RowsUpdate
- type Table
- type TableAdd
- type TableOptions
- type TablesResponse
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func ToDbColumn ¶
func ToDbColumn(definition ColumnDefinition) (*gocql.ColumnMetadata, error)
ToDbColumn gets a gocql column for the provided definition
Types ¶
type Changeset ¶
type Changeset struct { // The name of the column to be updated. Column string `json:"column" validate:"required"` // The value for the column that will be updated for all matching rows. Value interface{} `json:"value" validate:"required"` }
Changeset is a column and associated value to be used when updating a row.
type ClusteringExpression ¶
type ClusteringExpression struct { Column *string `json:"column" validate:"required"` Order *string `json:"order" validate:"required"` }
ClusteringExpression allows for ordering rows so that storage is able to make use of the on-disk sorting of columns. Specifying order can make query results more efficient.
type Column ¶
type Column struct { Name *string `json:"name" validate:"required"` // The value to store in the column, can be either a literal or collection Value interface{} `json:"value" validate:"required"` }
Column is a column within a row to be added to a table
type ColumnDefinition ¶
type ColumnDefinition struct { // Name is a unique name for the column. Name string `json:"name" validate:"required"` // TypeDefinition defines the type of data allowed in the column TypeDefinition string `` /* 191-byte string literal not displayed */ // Denotes that the column is shared by all rows of a partition Static bool `json:"static,omitempty"` }
ColumnDefinition defines a column to be added to a table
type ColumnUpdate ¶
type ColumnUpdate struct { // NewName is the new name of the column. NewName string `json:"newName" validate:"required"` }
ColumnUpdate changes the name of a primary key column and preserves the existing values.
type ColumnsResponse ¶
type ColumnsResponse struct {
Success bool `json:"success,omitempty"`
}
type ModelError ¶
type ModelError struct { // A human readable description of the error state Description string `json:"description,omitempty"` // The internal number referencing the error state InternalCode string `json:"internalCode,omitempty"` }
A description of an error state
type PrimaryKey ¶
type PrimaryKey struct { // The column(s) that will constitute the partition key. PartitionKey []string `json:"partitionKey" validate:"required"` // The column(s) that will constitute the clustering key. ClusteringKey []string `json:"clusteringKey,omitempty"` }
PrimaryKey defines a column list for the primary key. Can be either a single column, compound primary key, or composite partition key. Provide multiple columns for the partition key to define a composite partition key.
type Query ¶
type Query struct { ColumnNames []string `json:"columnNames,omitempty"` Filters []Filter `json:"filters" validate:"required"` OrderBy *ClusteringExpression `json:"orderBy,omitempty"` PageSize int `json:"pageSize,omitempty"` PageState string `json:"pageState,omitempty"` }
type RowAdd ¶
type RowAdd struct {
Columns []Column `json:"columns" validate:"required"`
}
RowAdd defines a row to be added to a table
type RowsResponse ¶
type RowsUpdate ¶
type RowsUpdate struct {
Changeset []Changeset `json:"changeset" validate:"required"`
}
RowsUpdate defines an update operation on rows within a table.
type Table ¶
type Table struct { Name string `json:"name,omitempty"` Keyspace string `json:"keyspace,omitempty"` ColumnDefinitions []ColumnDefinition `json:"columnDefinitions,omitempty"` PrimaryKey *PrimaryKey `json:"primaryKey,omitempty"` TableOptions *TableOptions `json:"tableOptions,omitempty"` }
type TableAdd ¶
type TableAdd struct { Name string `validate:"required"` // Attempting to create an existing table returns an error unless the IF NOT EXISTS option is used. If the option is // used, the statement if a no-op is the table already exists. IfNotExists bool `json:"ifNotExists,omitempty"` ColumnDefinitions []ColumnDefinition `json:"columnDefinitions,omitempty"` // Defines a column list for the primary key. Can be either a single column, compound primary key, or composite partition key. PrimaryKey *PrimaryKey `json:"primaryKey" validate:"required"` TableOptions *TableOptions `json:"tableOptions,omitempty"` }
TableAdd defines the table to be added to an existing keyspace
type TableOptions ¶
type TableOptions struct { // TTL (Time To Live) in seconds, where zero is disabled. The maximum configurable value is 630720000 (20 years). If // the value is greater than zero, TTL is enabled for the entire table and an expiration timestamp is added to each // column. A new TTL timestamp is calculated each time the data is updated and the row is removed after all the data expires. DefaultTimeToLive *int32 `json:"defaultTimeToLive,omitempty" validate:"gte=0,lte=630720000"` ClusteringExpression []ClusteringExpression `json:"clusteringExpression,omitempty"` }
TableOptions are various properties that tune data handling, including I/O operations, compression, and compaction.
type TablesResponse ¶
type TablesResponse struct {
Success bool `json:"success,omitempty"`
}