summaryrefslogtreecommitdiffstats
path: root/vendor/github.com/goamz/goamz/dynamodb/table.go
diff options
context:
space:
mode:
Diffstat (limited to 'vendor/github.com/goamz/goamz/dynamodb/table.go')
-rwxr-xr-xvendor/github.com/goamz/goamz/dynamodb/table.go259
1 files changed, 0 insertions, 259 deletions
diff --git a/vendor/github.com/goamz/goamz/dynamodb/table.go b/vendor/github.com/goamz/goamz/dynamodb/table.go
deleted file mode 100755
index 541433c13..000000000
--- a/vendor/github.com/goamz/goamz/dynamodb/table.go
+++ /dev/null
@@ -1,259 +0,0 @@
-package dynamodb
-
-import (
- "encoding/json"
- "errors"
- "fmt"
- simplejson "github.com/bitly/go-simplejson"
-)
-
-type Table struct {
- Server *Server
- Name string
- Key PrimaryKey
-}
-
-type AttributeDefinitionT struct {
- Name string `json:"AttributeName"`
- Type string `json:"AttributeType"`
-}
-
-type KeySchemaT struct {
- AttributeName string
- KeyType string
-}
-
-type ProjectionT struct {
- ProjectionType string
-}
-
-type GlobalSecondaryIndexT struct {
- IndexName string
- IndexSizeBytes int64
- ItemCount int64
- KeySchema []KeySchemaT
- Projection ProjectionT
- ProvisionedThroughput ProvisionedThroughputT
-}
-
-type LocalSecondaryIndexT struct {
- IndexName string
- IndexSizeBytes int64
- ItemCount int64
- KeySchema []KeySchemaT
- Projection ProjectionT
-}
-
-type ProvisionedThroughputT struct {
- NumberOfDecreasesToday int64
- ReadCapacityUnits int64
- WriteCapacityUnits int64
-}
-
-type StreamSpecificationT struct {
- StreamEnabled bool
- StreamViewType string
-}
-
-type TableDescriptionT struct {
- AttributeDefinitions []AttributeDefinitionT
- CreationDateTime float64
- ItemCount int64
- KeySchema []KeySchemaT
- GlobalSecondaryIndexes []GlobalSecondaryIndexT
- LocalSecondaryIndexes []LocalSecondaryIndexT
- ProvisionedThroughput ProvisionedThroughputT
- StreamSpecification StreamSpecificationT
- TableName string
- TableSizeBytes int64
- TableStatus string
- LatestStreamArn string
- LatestStreamLabel string
-}
-
-type describeTableResponse struct {
- Table TableDescriptionT
-}
-
-func findAttributeDefinitionByName(ads []AttributeDefinitionT, name string) *AttributeDefinitionT {
- for _, a := range ads {
- if a.Name == name {
- return &a
- }
- }
- return nil
-}
-
-func (a *AttributeDefinitionT) GetEmptyAttribute() *Attribute {
- switch a.Type {
- case "S":
- return NewStringAttribute(a.Name, "")
- case "N":
- return NewNumericAttribute(a.Name, "")
- case "B":
- return NewBinaryAttribute(a.Name, "")
- default:
- return nil
- }
-}
-
-func (t *TableDescriptionT) BuildPrimaryKey() (pk PrimaryKey, err error) {
- for _, k := range t.KeySchema {
- var attr *Attribute
- ad := findAttributeDefinitionByName(t.AttributeDefinitions, k.AttributeName)
- if ad == nil {
- return pk, errors.New("An inconsistency found in TableDescriptionT")
- }
- attr = ad.GetEmptyAttribute()
- if attr == nil {
- return pk, errors.New("An inconsistency found in TableDescriptionT")
- }
-
- switch k.KeyType {
- case "HASH":
- pk.KeyAttribute = attr
- case "RANGE":
- pk.RangeAttribute = attr
- }
- }
- return
-}
-
-func (s *Server) NewTable(name string, key PrimaryKey) *Table {
- return &Table{s, name, key}
-}
-
-func (s *Server) ListTables() ([]string, error) {
- var tables []string
-
- query := NewEmptyQuery()
-
- jsonResponse, err := s.queryServer(target("ListTables"), query)
-
- if err != nil {
- return nil, err
- }
-
- json, err := simplejson.NewJson(jsonResponse)
-
- if err != nil {
- return nil, err
- }
-
- response, err := json.Get("TableNames").Array()
-
- if err != nil {
- message := fmt.Sprintf("Unexpected response %s", jsonResponse)
- return nil, errors.New(message)
- }
-
- for _, value := range response {
- if t, ok := (value).(string); ok {
- tables = append(tables, t)
- }
- }
-
- return tables, nil
-}
-
-func (s *Server) CreateTable(tableDescription TableDescriptionT) (string, error) {
- query := NewEmptyQuery()
- query.AddCreateRequestTable(tableDescription)
-
- jsonResponse, err := s.queryServer(target("CreateTable"), query)
-
- if err != nil {
- return "unknown", err
- }
-
- json, err := simplejson.NewJson(jsonResponse)
-
- if err != nil {
- return "unknown", err
- }
-
- return json.Get("TableDescription").Get("TableStatus").MustString(), nil
-}
-
-func (s *Server) DeleteTable(tableDescription TableDescriptionT) (string, error) {
- query := NewEmptyQuery()
- query.AddDeleteRequestTable(tableDescription)
-
- jsonResponse, err := s.queryServer(target("DeleteTable"), query)
-
- if err != nil {
- return "unknown", err
- }
-
- json, err := simplejson.NewJson(jsonResponse)
-
- if err != nil {
- return "unknown", err
- }
-
- return json.Get("TableDescription").Get("TableStatus").MustString(), nil
-}
-
-func (t *Table) DescribeTable() (*TableDescriptionT, error) {
- return t.Server.DescribeTable(t.Name)
-}
-
-func (s *Server) DescribeTable(name string) (*TableDescriptionT, error) {
- q := NewEmptyQuery()
- q.addTableByName(name)
-
- jsonResponse, err := s.queryServer(target("DescribeTable"), q)
- if err != nil {
- return nil, err
- }
-
- var r describeTableResponse
- err = json.Unmarshal(jsonResponse, &r)
- if err != nil {
- return nil, err
- }
-
- return &r.Table, nil
-}
-
-func (s *Server) UpdateTable(tableDescription TableDescriptionT) (string, error) {
- query := NewEmptyQuery()
- query.AddUpdateRequestTable(tableDescription)
-
- jsonResponse, err := s.queryServer(target("UpdateTable"), query)
-
- if err != nil {
- return "unknown", err
- }
-
- json, err := simplejson.NewJson(jsonResponse)
-
- if err != nil {
- return "unknown", err
- }
-
- return json.Get("TableDescription").Get("TableStatus").MustString(), nil
-}
-
-func (t *Table) ListStreams(startArn string) ([]StreamListItemT, error) {
- return t.Server.ListTableStreams(t.Name, startArn)
-}
-
-func (t *Table) LimitedListStreams(startArn string, limit int64) ([]StreamListItemT, error) {
- return t.Server.LimitedListTableStreams(t.Name, startArn, limit)
-}
-
-func keyParam(k *PrimaryKey, hashKey string, rangeKey string) string {
- value := fmt.Sprintf("{\"HashKeyElement\":{%s}", keyValue(k.KeyAttribute.Type, hashKey))
-
- if k.RangeAttribute != nil {
- value = fmt.Sprintf("%s,\"RangeKeyElement\":{%s}", value,
- keyValue(k.RangeAttribute.Type, rangeKey))
- }
-
- return fmt.Sprintf("\"Key\":%s}", value)
-}
-
-func keyValue(key string, value string) string {
- return fmt.Sprintf("\"%s\":\"%s\"", key, value)
-}