a9561eb1b190625c9adb5a9513e72c4dedafc1cb2d4c5236c9a6957ec7dfd5a9
.
- Image IDs should be sufficiently random so as to be globally unique.
- 32 bytes read from /dev/urandom
is sufficient for all
- practical purposes. Alternatively, an image ID may be derived as a
- cryptographic hash of image contents as the result is considered
- indistinguishable from random. The choice is left up to implementors.
- parent
field which
- refers to the Image from which another directly descends. An image
- contains a separate JSON metadata file and set of changes relative to
- the filesystem of its parent image. Image Ancestor and
- Image Descendant are also common terms.
- :
) is
- often referred to as a tag as well, though it strictly refers to the
- full name of an image. Acceptable values for a tag suffix are
- implementation specific, but they SHOULD be limited to the set of
- alphanumeric characters [a-zA-z0-9]
, punctuation
- characters [._-]
, and MUST NOT contain a :
- character.
- :
). For example, in an image tagged with the name
- my-app:3.1.4
, my-app
is the Repository
- component of the name. Acceptable values for repository name are
- implementation specific, but they SHOULD be limited to the set of
- alphanumeric characters [a-zA-z0-9]
, and punctuation
- characters [._-]
, however it MAY contain additional
- /
and :
characters for organizational
- purposes, with the last :
character being interpreted
- dividing the repository component of the name from the tag suffix
- component.
- string
- string
- string
- string
- string
- string
- string
- integer
- struct
- null
, in
- which case any execution parameters should be specified at creation of
- the container.
-
- string
- The username or UID which the process in the container should - run as. This acts as a default value to use when the value is - not specified when creating a container.
- -All of the following are valid:
- -user
uid
user:group
uid:gid
uid:group
user:gid
If group
/gid
is not specified, the
- default group and supplementary groups of the given
- user
/uid
in /etc/passwd
- from the container are applied.
integer
- integer
- -1
to
- disable swap. This acts as a default value to use when the
- value is not specified when creating a container.
- integer
- struct
- map[string]struct{}
and is represented in JSON as
- an object mapping its keys to an empty object. Here is an
- example:
-
-{ - "8080": {}, - "53/udp": {}, - "2356/tcp": {} -}- - Its keys can be in the format of: -
"port/tcp"
- "port/udp"
- "port"
- "tcp"
if not
- specified.
-
- These values act as defaults and are merged with any specified
- when creating a container.
- array of strings
- VARNAME="var value"
.
- These values act as defaults and are merged with any specified
- when creating a container.
- array of strings
- array of strings
- Entrypoint
value is
- not specified, then the first entry of the Cmd
- array should be interpreted as the executable to run.
- struct
- map[string]struct{}
and is represented in
- JSON as an object mapping its keys to an empty object. Here is
- an example:
-{ - "/var/my-app-data/": {}, - "/etc/some-config.d/": {}, -}-
string
- meaning
field is reserved and should not be used.
- Meaning *int32 `protobuf:"varint,14,opt,name=meaning" json:"meaning,omitempty"`
- // If the value should be indexed.
- //
- // The indexed
property may be set for a
- // null
value.
- // When indexed
is true
, stringValue
- // is limited to 500 characters and the blob value is limited to 500 bytes.
- // Exception: If meaning is set to 2, string_value is limited to 2038
- // characters regardless of indexed.
- // When indexed is true, meaning 15 and 22 are not allowed, and meaning 16
- // will be ignored on input (and will never be set on output).
- // Input values by default have indexed
set to
- // true
; however, you can explicitly set indexed
to
- // true
if you want. (An output value never has
- // indexed
explicitly set to true
.) If a value is
- // itself an entity, it cannot have indexed
set to
- // true
.
- // Exception: An entity value with meaning 9, 20 or 21 may be indexed.
- Indexed *bool `protobuf:"varint,15,opt,name=indexed,def=1" json:"indexed,omitempty"`
- XXX_unrecognized []byte `json:"-"`
-}
-
-func (m *Value) Reset() { *m = Value{} }
-func (m *Value) String() string { return proto.CompactTextString(m) }
-func (*Value) ProtoMessage() {}
-
-const Default_Value_Indexed bool = true
-
-func (m *Value) GetBooleanValue() bool {
- if m != nil && m.BooleanValue != nil {
- return *m.BooleanValue
- }
- return false
-}
-
-func (m *Value) GetIntegerValue() int64 {
- if m != nil && m.IntegerValue != nil {
- return *m.IntegerValue
- }
- return 0
-}
-
-func (m *Value) GetDoubleValue() float64 {
- if m != nil && m.DoubleValue != nil {
- return *m.DoubleValue
- }
- return 0
-}
-
-func (m *Value) GetTimestampMicrosecondsValue() int64 {
- if m != nil && m.TimestampMicrosecondsValue != nil {
- return *m.TimestampMicrosecondsValue
- }
- return 0
-}
-
-func (m *Value) GetKeyValue() *Key {
- if m != nil {
- return m.KeyValue
- }
- return nil
-}
-
-func (m *Value) GetBlobKeyValue() string {
- if m != nil && m.BlobKeyValue != nil {
- return *m.BlobKeyValue
- }
- return ""
-}
-
-func (m *Value) GetStringValue() string {
- if m != nil && m.StringValue != nil {
- return *m.StringValue
- }
- return ""
-}
-
-func (m *Value) GetBlobValue() []byte {
- if m != nil {
- return m.BlobValue
- }
- return nil
-}
-
-func (m *Value) GetEntityValue() *Entity {
- if m != nil {
- return m.EntityValue
- }
- return nil
-}
-
-func (m *Value) GetListValue() []*Value {
- if m != nil {
- return m.ListValue
- }
- return nil
-}
-
-func (m *Value) GetMeaning() int32 {
- if m != nil && m.Meaning != nil {
- return *m.Meaning
- }
- return 0
-}
-
-func (m *Value) GetIndexed() bool {
- if m != nil && m.Indexed != nil {
- return *m.Indexed
- }
- return Default_Value_Indexed
-}
-
-// An entity property.
-type Property struct {
- // The name of the property.
- // A property name matching regex "__.*__" is reserved.
- // A reserved property name is forbidden in certain documented contexts.
- // The name must not contain more than 500 characters.
- // Cannot be "".
- Name *string `protobuf:"bytes,1,req,name=name" json:"name,omitempty"`
- // The value(s) of the property.
- // Each value can have only one value property populated. For example,
- // you cannot have a values list of { value: { integerValue: 22,
- // stringValue: "a" } }
, but you can have { value: { listValue:
- // [ { integerValue: 22 }, { stringValue: "a" } ] }
.
- Value *Value `protobuf:"bytes,4,req,name=value" json:"value,omitempty"`
- XXX_unrecognized []byte `json:"-"`
-}
-
-func (m *Property) Reset() { *m = Property{} }
-func (m *Property) String() string { return proto.CompactTextString(m) }
-func (*Property) ProtoMessage() {}
-
-func (m *Property) GetName() string {
- if m != nil && m.Name != nil {
- return *m.Name
- }
- return ""
-}
-
-func (m *Property) GetValue() *Value {
- if m != nil {
- return m.Value
- }
- return nil
-}
-
-// An entity.
-//
-// An entity is limited to 1 megabyte when stored. That roughly
-// corresponds to a limit of 1 megabyte for the serialized form of this
-// message.
-type Entity struct {
- // The entity's key.
- //
- // An entity must have a key, unless otherwise documented (for example,
- // an entity in Value.entityValue
may have no key).
- // An entity's kind is its key's path's last element's kind,
- // or null if it has no key.
- Key *Key `protobuf:"bytes,1,opt,name=key" json:"key,omitempty"`
- // The entity's properties.
- // Each property's name must be unique for its entity.
- Property []*Property `protobuf:"bytes,2,rep,name=property" json:"property,omitempty"`
- XXX_unrecognized []byte `json:"-"`
-}
-
-func (m *Entity) Reset() { *m = Entity{} }
-func (m *Entity) String() string { return proto.CompactTextString(m) }
-func (*Entity) ProtoMessage() {}
-
-func (m *Entity) GetKey() *Key {
- if m != nil {
- return m.Key
- }
- return nil
-}
-
-func (m *Entity) GetProperty() []*Property {
- if m != nil {
- return m.Property
- }
- return nil
-}
-
-// The result of fetching an entity from the datastore.
-type EntityResult struct {
- // The resulting entity.
- Entity *Entity `protobuf:"bytes,1,req,name=entity" json:"entity,omitempty"`
- XXX_unrecognized []byte `json:"-"`
-}
-
-func (m *EntityResult) Reset() { *m = EntityResult{} }
-func (m *EntityResult) String() string { return proto.CompactTextString(m) }
-func (*EntityResult) ProtoMessage() {}
-
-func (m *EntityResult) GetEntity() *Entity {
- if m != nil {
- return m.Entity
- }
- return nil
-}
-
-// A query.
-type Query struct {
- // The projection to return. If not set the entire entity is returned.
- Projection []*PropertyExpression `protobuf:"bytes,2,rep,name=projection" json:"projection,omitempty"`
- // The kinds to query (if empty, returns entities from all kinds).
- Kind []*KindExpression `protobuf:"bytes,3,rep,name=kind" json:"kind,omitempty"`
- // The filter to apply (optional).
- Filter *Filter `protobuf:"bytes,4,opt,name=filter" json:"filter,omitempty"`
- // The order to apply to the query results (if empty, order is unspecified).
- Order []*PropertyOrder `protobuf:"bytes,5,rep,name=order" json:"order,omitempty"`
- // The properties to group by (if empty, no grouping is applied to the
- // result set).
- GroupBy []*PropertyReference `protobuf:"bytes,6,rep,name=group_by" json:"group_by,omitempty"`
- // A starting point for the query results. Optional. Query cursors are
- // returned in query result batches.
- StartCursor []byte `protobuf:"bytes,7,opt,name=start_cursor" json:"start_cursor,omitempty"`
- // An ending point for the query results. Optional. Query cursors are
- // returned in query result batches.
- EndCursor []byte `protobuf:"bytes,8,opt,name=end_cursor" json:"end_cursor,omitempty"`
- // The number of results to skip. Applies before limit, but after all other
- // constraints (optional, defaults to 0).
- Offset *int32 `protobuf:"varint,10,opt,name=offset,def=0" json:"offset,omitempty"`
- // The maximum number of results to return. Applies after all other
- // constraints. Optional.
- Limit *int32 `protobuf:"varint,11,opt,name=limit" json:"limit,omitempty"`
- XXX_unrecognized []byte `json:"-"`
-}
-
-func (m *Query) Reset() { *m = Query{} }
-func (m *Query) String() string { return proto.CompactTextString(m) }
-func (*Query) ProtoMessage() {}
-
-const Default_Query_Offset int32 = 0
-
-func (m *Query) GetProjection() []*PropertyExpression {
- if m != nil {
- return m.Projection
- }
- return nil
-}
-
-func (m *Query) GetKind() []*KindExpression {
- if m != nil {
- return m.Kind
- }
- return nil
-}
-
-func (m *Query) GetFilter() *Filter {
- if m != nil {
- return m.Filter
- }
- return nil
-}
-
-func (m *Query) GetOrder() []*PropertyOrder {
- if m != nil {
- return m.Order
- }
- return nil
-}
-
-func (m *Query) GetGroupBy() []*PropertyReference {
- if m != nil {
- return m.GroupBy
- }
- return nil
-}
-
-func (m *Query) GetStartCursor() []byte {
- if m != nil {
- return m.StartCursor
- }
- return nil
-}
-
-func (m *Query) GetEndCursor() []byte {
- if m != nil {
- return m.EndCursor
- }
- return nil
-}
-
-func (m *Query) GetOffset() int32 {
- if m != nil && m.Offset != nil {
- return *m.Offset
- }
- return Default_Query_Offset
-}
-
-func (m *Query) GetLimit() int32 {
- if m != nil && m.Limit != nil {
- return *m.Limit
- }
- return 0
-}
-
-// A representation of a kind.
-type KindExpression struct {
- // The name of the kind.
- Name *string `protobuf:"bytes,1,req,name=name" json:"name,omitempty"`
- XXX_unrecognized []byte `json:"-"`
-}
-
-func (m *KindExpression) Reset() { *m = KindExpression{} }
-func (m *KindExpression) String() string { return proto.CompactTextString(m) }
-func (*KindExpression) ProtoMessage() {}
-
-func (m *KindExpression) GetName() string {
- if m != nil && m.Name != nil {
- return *m.Name
- }
- return ""
-}
-
-// A reference to a property relative to the kind expressions.
-// exactly.
-type PropertyReference struct {
- // The name of the property.
- Name *string `protobuf:"bytes,2,req,name=name" json:"name,omitempty"`
- XXX_unrecognized []byte `json:"-"`
-}
-
-func (m *PropertyReference) Reset() { *m = PropertyReference{} }
-func (m *PropertyReference) String() string { return proto.CompactTextString(m) }
-func (*PropertyReference) ProtoMessage() {}
-
-func (m *PropertyReference) GetName() string {
- if m != nil && m.Name != nil {
- return *m.Name
- }
- return ""
-}
-
-// A representation of a property in a projection.
-type PropertyExpression struct {
- // The property to project.
- Property *PropertyReference `protobuf:"bytes,1,req,name=property" json:"property,omitempty"`
- // The aggregation function to apply to the property. Optional.
- // Can only be used when grouping by at least one property. Must
- // then be set on all properties in the projection that are not
- // being grouped by.
- AggregationFunction *PropertyExpression_AggregationFunction `protobuf:"varint,2,opt,name=aggregation_function,enum=datastore.PropertyExpression_AggregationFunction" json:"aggregation_function,omitempty"`
- XXX_unrecognized []byte `json:"-"`
-}
-
-func (m *PropertyExpression) Reset() { *m = PropertyExpression{} }
-func (m *PropertyExpression) String() string { return proto.CompactTextString(m) }
-func (*PropertyExpression) ProtoMessage() {}
-
-func (m *PropertyExpression) GetProperty() *PropertyReference {
- if m != nil {
- return m.Property
- }
- return nil
-}
-
-func (m *PropertyExpression) GetAggregationFunction() PropertyExpression_AggregationFunction {
- if m != nil && m.AggregationFunction != nil {
- return *m.AggregationFunction
- }
- return PropertyExpression_FIRST
-}
-
-// The desired order for a specific property.
-type PropertyOrder struct {
- // The property to order by.
- Property *PropertyReference `protobuf:"bytes,1,req,name=property" json:"property,omitempty"`
- // The direction to order by.
- Direction *PropertyOrder_Direction `protobuf:"varint,2,opt,name=direction,enum=datastore.PropertyOrder_Direction,def=1" json:"direction,omitempty"`
- XXX_unrecognized []byte `json:"-"`
-}
-
-func (m *PropertyOrder) Reset() { *m = PropertyOrder{} }
-func (m *PropertyOrder) String() string { return proto.CompactTextString(m) }
-func (*PropertyOrder) ProtoMessage() {}
-
-const Default_PropertyOrder_Direction PropertyOrder_Direction = PropertyOrder_ASCENDING
-
-func (m *PropertyOrder) GetProperty() *PropertyReference {
- if m != nil {
- return m.Property
- }
- return nil
-}
-
-func (m *PropertyOrder) GetDirection() PropertyOrder_Direction {
- if m != nil && m.Direction != nil {
- return *m.Direction
- }
- return Default_PropertyOrder_Direction
-}
-
-// A holder for any type of filter. Exactly one field should be specified.
-type Filter struct {
- // A composite filter.
- CompositeFilter *CompositeFilter `protobuf:"bytes,1,opt,name=composite_filter" json:"composite_filter,omitempty"`
- // A filter on a property.
- PropertyFilter *PropertyFilter `protobuf:"bytes,2,opt,name=property_filter" json:"property_filter,omitempty"`
- XXX_unrecognized []byte `json:"-"`
-}
-
-func (m *Filter) Reset() { *m = Filter{} }
-func (m *Filter) String() string { return proto.CompactTextString(m) }
-func (*Filter) ProtoMessage() {}
-
-func (m *Filter) GetCompositeFilter() *CompositeFilter {
- if m != nil {
- return m.CompositeFilter
- }
- return nil
-}
-
-func (m *Filter) GetPropertyFilter() *PropertyFilter {
- if m != nil {
- return m.PropertyFilter
- }
- return nil
-}
-
-// A filter that merges the multiple other filters using the given operation.
-type CompositeFilter struct {
- // The operator for combining multiple filters.
- Operator *CompositeFilter_Operator `protobuf:"varint,1,req,name=operator,enum=datastore.CompositeFilter_Operator" json:"operator,omitempty"`
- // The list of filters to combine.
- // Must contain at least one filter.
- Filter []*Filter `protobuf:"bytes,2,rep,name=filter" json:"filter,omitempty"`
- XXX_unrecognized []byte `json:"-"`
-}
-
-func (m *CompositeFilter) Reset() { *m = CompositeFilter{} }
-func (m *CompositeFilter) String() string { return proto.CompactTextString(m) }
-func (*CompositeFilter) ProtoMessage() {}
-
-func (m *CompositeFilter) GetOperator() CompositeFilter_Operator {
- if m != nil && m.Operator != nil {
- return *m.Operator
- }
- return CompositeFilter_AND
-}
-
-func (m *CompositeFilter) GetFilter() []*Filter {
- if m != nil {
- return m.Filter
- }
- return nil
-}
-
-// A filter on a specific property.
-type PropertyFilter struct {
- // The property to filter by.
- Property *PropertyReference `protobuf:"bytes,1,req,name=property" json:"property,omitempty"`
- // The operator to filter by.
- Operator *PropertyFilter_Operator `protobuf:"varint,2,req,name=operator,enum=datastore.PropertyFilter_Operator" json:"operator,omitempty"`
- // The value to compare the property to.
- Value *Value `protobuf:"bytes,3,req,name=value" json:"value,omitempty"`
- XXX_unrecognized []byte `json:"-"`
-}
-
-func (m *PropertyFilter) Reset() { *m = PropertyFilter{} }
-func (m *PropertyFilter) String() string { return proto.CompactTextString(m) }
-func (*PropertyFilter) ProtoMessage() {}
-
-func (m *PropertyFilter) GetProperty() *PropertyReference {
- if m != nil {
- return m.Property
- }
- return nil
-}
-
-func (m *PropertyFilter) GetOperator() PropertyFilter_Operator {
- if m != nil && m.Operator != nil {
- return *m.Operator
- }
- return PropertyFilter_LESS_THAN
-}
-
-func (m *PropertyFilter) GetValue() *Value {
- if m != nil {
- return m.Value
- }
- return nil
-}
-
-// A GQL query.
-type GqlQuery struct {
- QueryString *string `protobuf:"bytes,1,req,name=query_string" json:"query_string,omitempty"`
- // When false, the query string must not contain a literal.
- AllowLiteral *bool `protobuf:"varint,2,opt,name=allow_literal,def=0" json:"allow_literal,omitempty"`
- // A named argument must set field GqlQueryArg.name.
- // No two named arguments may have the same name.
- // For each non-reserved named binding site in the query string,
- // there must be a named argument with that name,
- // but not necessarily the inverse.
- NameArg []*GqlQueryArg `protobuf:"bytes,3,rep,name=name_arg" json:"name_arg,omitempty"`
- // Numbered binding site @1 references the first numbered argument,
- // effectively using 1-based indexing, rather than the usual 0.
- // A numbered argument must NOT set field GqlQueryArg.name.
- // For each binding site numbered i in query_string,
- // there must be an ith numbered argument.
- // The inverse must also be true.
- NumberArg []*GqlQueryArg `protobuf:"bytes,4,rep,name=number_arg" json:"number_arg,omitempty"`
- XXX_unrecognized []byte `json:"-"`
-}
-
-func (m *GqlQuery) Reset() { *m = GqlQuery{} }
-func (m *GqlQuery) String() string { return proto.CompactTextString(m) }
-func (*GqlQuery) ProtoMessage() {}
-
-const Default_GqlQuery_AllowLiteral bool = false
-
-func (m *GqlQuery) GetQueryString() string {
- if m != nil && m.QueryString != nil {
- return *m.QueryString
- }
- return ""
-}
-
-func (m *GqlQuery) GetAllowLiteral() bool {
- if m != nil && m.AllowLiteral != nil {
- return *m.AllowLiteral
- }
- return Default_GqlQuery_AllowLiteral
-}
-
-func (m *GqlQuery) GetNameArg() []*GqlQueryArg {
- if m != nil {
- return m.NameArg
- }
- return nil
-}
-
-func (m *GqlQuery) GetNumberArg() []*GqlQueryArg {
- if m != nil {
- return m.NumberArg
- }
- return nil
-}
-
-// A binding argument for a GQL query.
-// Exactly one of fields value and cursor must be set.
-type GqlQueryArg struct {
- // Must match regex "[A-Za-z_$][A-Za-z_$0-9]*".
- // Must not match regex "__.*__".
- // Must not be "".
- Name *string `protobuf:"bytes,1,opt,name=name" json:"name,omitempty"`
- Value *Value `protobuf:"bytes,2,opt,name=value" json:"value,omitempty"`
- Cursor []byte `protobuf:"bytes,3,opt,name=cursor" json:"cursor,omitempty"`
- XXX_unrecognized []byte `json:"-"`
-}
-
-func (m *GqlQueryArg) Reset() { *m = GqlQueryArg{} }
-func (m *GqlQueryArg) String() string { return proto.CompactTextString(m) }
-func (*GqlQueryArg) ProtoMessage() {}
-
-func (m *GqlQueryArg) GetName() string {
- if m != nil && m.Name != nil {
- return *m.Name
- }
- return ""
-}
-
-func (m *GqlQueryArg) GetValue() *Value {
- if m != nil {
- return m.Value
- }
- return nil
-}
-
-func (m *GqlQueryArg) GetCursor() []byte {
- if m != nil {
- return m.Cursor
- }
- return nil
-}
-
-// A batch of results produced by a query.
-type QueryResultBatch struct {
- // The result type for every entity in entityResults.
- EntityResultType *EntityResult_ResultType `protobuf:"varint,1,req,name=entity_result_type,enum=datastore.EntityResult_ResultType" json:"entity_result_type,omitempty"`
- // The results for this batch.
- EntityResult []*EntityResult `protobuf:"bytes,2,rep,name=entity_result" json:"entity_result,omitempty"`
- // A cursor that points to the position after the last result in the batch.
- // May be absent.
- EndCursor []byte `protobuf:"bytes,4,opt,name=end_cursor" json:"end_cursor,omitempty"`
- // The state of the query after the current batch.
- MoreResults *QueryResultBatch_MoreResultsType `protobuf:"varint,5,req,name=more_results,enum=datastore.QueryResultBatch_MoreResultsType" json:"more_results,omitempty"`
- // The number of results skipped because of Query.offset
.
- SkippedResults *int32 `protobuf:"varint,6,opt,name=skipped_results" json:"skipped_results,omitempty"`
- XXX_unrecognized []byte `json:"-"`
-}
-
-func (m *QueryResultBatch) Reset() { *m = QueryResultBatch{} }
-func (m *QueryResultBatch) String() string { return proto.CompactTextString(m) }
-func (*QueryResultBatch) ProtoMessage() {}
-
-func (m *QueryResultBatch) GetEntityResultType() EntityResult_ResultType {
- if m != nil && m.EntityResultType != nil {
- return *m.EntityResultType
- }
- return EntityResult_FULL
-}
-
-func (m *QueryResultBatch) GetEntityResult() []*EntityResult {
- if m != nil {
- return m.EntityResult
- }
- return nil
-}
-
-func (m *QueryResultBatch) GetEndCursor() []byte {
- if m != nil {
- return m.EndCursor
- }
- return nil
-}
-
-func (m *QueryResultBatch) GetMoreResults() QueryResultBatch_MoreResultsType {
- if m != nil && m.MoreResults != nil {
- return *m.MoreResults
- }
- return QueryResultBatch_NOT_FINISHED
-}
-
-func (m *QueryResultBatch) GetSkippedResults() int32 {
- if m != nil && m.SkippedResults != nil {
- return *m.SkippedResults
- }
- return 0
-}
-
-// A set of changes to apply.
-//
-// No entity in this message may have a reserved property name,
-// not even a property in an entity in a value.
-// No value in this message may have meaning 18,
-// not even a value in an entity in another value.
-//
-// If entities with duplicate keys are present, an arbitrary choice will
-// be made as to which is written.
-type Mutation struct {
- // Entities to upsert.
- // Each upserted entity's key must have a complete path and
- // must not be reserved/read-only.
- Upsert []*Entity `protobuf:"bytes,1,rep,name=upsert" json:"upsert,omitempty"`
- // Entities to update.
- // Each updated entity's key must have a complete path and
- // must not be reserved/read-only.
- Update []*Entity `protobuf:"bytes,2,rep,name=update" json:"update,omitempty"`
- // Entities to insert.
- // Each inserted entity's key must have a complete path and
- // must not be reserved/read-only.
- Insert []*Entity `protobuf:"bytes,3,rep,name=insert" json:"insert,omitempty"`
- // Insert entities with a newly allocated ID.
- // Each inserted entity's key must omit the final identifier in its path and
- // must not be reserved/read-only.
- InsertAutoId []*Entity `protobuf:"bytes,4,rep,name=insert_auto_id" json:"insert_auto_id,omitempty"`
- // Keys of entities to delete.
- // Each key must have a complete key path and must not be reserved/read-only.
- Delete []*Key `protobuf:"bytes,5,rep,name=delete" json:"delete,omitempty"`
- // Ignore a user specified read-only period. Optional.
- Force *bool `protobuf:"varint,6,opt,name=force" json:"force,omitempty"`
- XXX_unrecognized []byte `json:"-"`
-}
-
-func (m *Mutation) Reset() { *m = Mutation{} }
-func (m *Mutation) String() string { return proto.CompactTextString(m) }
-func (*Mutation) ProtoMessage() {}
-
-func (m *Mutation) GetUpsert() []*Entity {
- if m != nil {
- return m.Upsert
- }
- return nil
-}
-
-func (m *Mutation) GetUpdate() []*Entity {
- if m != nil {
- return m.Update
- }
- return nil
-}
-
-func (m *Mutation) GetInsert() []*Entity {
- if m != nil {
- return m.Insert
- }
- return nil
-}
-
-func (m *Mutation) GetInsertAutoId() []*Entity {
- if m != nil {
- return m.InsertAutoId
- }
- return nil
-}
-
-func (m *Mutation) GetDelete() []*Key {
- if m != nil {
- return m.Delete
- }
- return nil
-}
-
-func (m *Mutation) GetForce() bool {
- if m != nil && m.Force != nil {
- return *m.Force
- }
- return false
-}
-
-// The result of applying a mutation.
-type MutationResult struct {
- // Number of index writes.
- IndexUpdates *int32 `protobuf:"varint,1,req,name=index_updates" json:"index_updates,omitempty"`
- // Keys for insertAutoId
entities. One per entity from the
- // request, in the same order.
- InsertAutoIdKey []*Key `protobuf:"bytes,2,rep,name=insert_auto_id_key" json:"insert_auto_id_key,omitempty"`
- XXX_unrecognized []byte `json:"-"`
-}
-
-func (m *MutationResult) Reset() { *m = MutationResult{} }
-func (m *MutationResult) String() string { return proto.CompactTextString(m) }
-func (*MutationResult) ProtoMessage() {}
-
-func (m *MutationResult) GetIndexUpdates() int32 {
- if m != nil && m.IndexUpdates != nil {
- return *m.IndexUpdates
- }
- return 0
-}
-
-func (m *MutationResult) GetInsertAutoIdKey() []*Key {
- if m != nil {
- return m.InsertAutoIdKey
- }
- return nil
-}
-
-// Options shared by read requests.
-type ReadOptions struct {
- // The read consistency to use.
- // Cannot be set when transaction is set.
- // Lookup and ancestor queries default to STRONG, global queries default to
- // EVENTUAL and cannot be set to STRONG.
- ReadConsistency *ReadOptions_ReadConsistency `protobuf:"varint,1,opt,name=read_consistency,enum=datastore.ReadOptions_ReadConsistency,def=0" json:"read_consistency,omitempty"`
- // The transaction to use. Optional.
- Transaction []byte `protobuf:"bytes,2,opt,name=transaction" json:"transaction,omitempty"`
- XXX_unrecognized []byte `json:"-"`
-}
-
-func (m *ReadOptions) Reset() { *m = ReadOptions{} }
-func (m *ReadOptions) String() string { return proto.CompactTextString(m) }
-func (*ReadOptions) ProtoMessage() {}
-
-const Default_ReadOptions_ReadConsistency ReadOptions_ReadConsistency = ReadOptions_DEFAULT
-
-func (m *ReadOptions) GetReadConsistency() ReadOptions_ReadConsistency {
- if m != nil && m.ReadConsistency != nil {
- return *m.ReadConsistency
- }
- return Default_ReadOptions_ReadConsistency
-}
-
-func (m *ReadOptions) GetTransaction() []byte {
- if m != nil {
- return m.Transaction
- }
- return nil
-}
-
-// The request for Lookup.
-type LookupRequest struct {
- // Options for this lookup request. Optional.
- ReadOptions *ReadOptions `protobuf:"bytes,1,opt,name=read_options" json:"read_options,omitempty"`
- // Keys of entities to look up from the datastore.
- Key []*Key `protobuf:"bytes,3,rep,name=key" json:"key,omitempty"`
- XXX_unrecognized []byte `json:"-"`
-}
-
-func (m *LookupRequest) Reset() { *m = LookupRequest{} }
-func (m *LookupRequest) String() string { return proto.CompactTextString(m) }
-func (*LookupRequest) ProtoMessage() {}
-
-func (m *LookupRequest) GetReadOptions() *ReadOptions {
- if m != nil {
- return m.ReadOptions
- }
- return nil
-}
-
-func (m *LookupRequest) GetKey() []*Key {
- if m != nil {
- return m.Key
- }
- return nil
-}
-
-// The response for Lookup.
-type LookupResponse struct {
- // Entities found as ResultType.FULL entities.
- Found []*EntityResult `protobuf:"bytes,1,rep,name=found" json:"found,omitempty"`
- // Entities not found as ResultType.KEY_ONLY entities.
- Missing []*EntityResult `protobuf:"bytes,2,rep,name=missing" json:"missing,omitempty"`
- // A list of keys that were not looked up due to resource constraints.
- Deferred []*Key `protobuf:"bytes,3,rep,name=deferred" json:"deferred,omitempty"`
- XXX_unrecognized []byte `json:"-"`
-}
-
-func (m *LookupResponse) Reset() { *m = LookupResponse{} }
-func (m *LookupResponse) String() string { return proto.CompactTextString(m) }
-func (*LookupResponse) ProtoMessage() {}
-
-func (m *LookupResponse) GetFound() []*EntityResult {
- if m != nil {
- return m.Found
- }
- return nil
-}
-
-func (m *LookupResponse) GetMissing() []*EntityResult {
- if m != nil {
- return m.Missing
- }
- return nil
-}
-
-func (m *LookupResponse) GetDeferred() []*Key {
- if m != nil {
- return m.Deferred
- }
- return nil
-}
-
-// The request for RunQuery.
-type RunQueryRequest struct {
- // The options for this query.
- ReadOptions *ReadOptions `protobuf:"bytes,1,opt,name=read_options" json:"read_options,omitempty"`
- // Entities are partitioned into subsets, identified by a dataset (usually
- // implicitly specified by the project) and namespace ID. Queries are scoped
- // to a single partition.
- // This partition ID is normalized with the standard default context
- // partition ID, but all other partition IDs in RunQueryRequest are
- // normalized with this partition ID as the context partition ID.
- PartitionId *PartitionId `protobuf:"bytes,2,opt,name=partition_id" json:"partition_id,omitempty"`
- // The query to run.
- // Either this field or field gql_query must be set, but not both.
- Query *Query `protobuf:"bytes,3,opt,name=query" json:"query,omitempty"`
- // The GQL query to run.
- // Either this field or field query must be set, but not both.
- GqlQuery *GqlQuery `protobuf:"bytes,7,opt,name=gql_query" json:"gql_query,omitempty"`
- XXX_unrecognized []byte `json:"-"`
-}
-
-func (m *RunQueryRequest) Reset() { *m = RunQueryRequest{} }
-func (m *RunQueryRequest) String() string { return proto.CompactTextString(m) }
-func (*RunQueryRequest) ProtoMessage() {}
-
-func (m *RunQueryRequest) GetReadOptions() *ReadOptions {
- if m != nil {
- return m.ReadOptions
- }
- return nil
-}
-
-func (m *RunQueryRequest) GetPartitionId() *PartitionId {
- if m != nil {
- return m.PartitionId
- }
- return nil
-}
-
-func (m *RunQueryRequest) GetQuery() *Query {
- if m != nil {
- return m.Query
- }
- return nil
-}
-
-func (m *RunQueryRequest) GetGqlQuery() *GqlQuery {
- if m != nil {
- return m.GqlQuery
- }
- return nil
-}
-
-// The response for RunQuery.
-type RunQueryResponse struct {
- // A batch of query results (always present).
- Batch *QueryResultBatch `protobuf:"bytes,1,opt,name=batch" json:"batch,omitempty"`
- XXX_unrecognized []byte `json:"-"`
-}
-
-func (m *RunQueryResponse) Reset() { *m = RunQueryResponse{} }
-func (m *RunQueryResponse) String() string { return proto.CompactTextString(m) }
-func (*RunQueryResponse) ProtoMessage() {}
-
-func (m *RunQueryResponse) GetBatch() *QueryResultBatch {
- if m != nil {
- return m.Batch
- }
- return nil
-}
-
-// The request for BeginTransaction.
-type BeginTransactionRequest struct {
- // The transaction isolation level.
- IsolationLevel *BeginTransactionRequest_IsolationLevel `protobuf:"varint,1,opt,name=isolation_level,enum=datastore.BeginTransactionRequest_IsolationLevel,def=0" json:"isolation_level,omitempty"`
- XXX_unrecognized []byte `json:"-"`
-}
-
-func (m *BeginTransactionRequest) Reset() { *m = BeginTransactionRequest{} }
-func (m *BeginTransactionRequest) String() string { return proto.CompactTextString(m) }
-func (*BeginTransactionRequest) ProtoMessage() {}
-
-const Default_BeginTransactionRequest_IsolationLevel BeginTransactionRequest_IsolationLevel = BeginTransactionRequest_SNAPSHOT
-
-func (m *BeginTransactionRequest) GetIsolationLevel() BeginTransactionRequest_IsolationLevel {
- if m != nil && m.IsolationLevel != nil {
- return *m.IsolationLevel
- }
- return Default_BeginTransactionRequest_IsolationLevel
-}
-
-// The response for BeginTransaction.
-type BeginTransactionResponse struct {
- // The transaction identifier (always present).
- Transaction []byte `protobuf:"bytes,1,opt,name=transaction" json:"transaction,omitempty"`
- XXX_unrecognized []byte `json:"-"`
-}
-
-func (m *BeginTransactionResponse) Reset() { *m = BeginTransactionResponse{} }
-func (m *BeginTransactionResponse) String() string { return proto.CompactTextString(m) }
-func (*BeginTransactionResponse) ProtoMessage() {}
-
-func (m *BeginTransactionResponse) GetTransaction() []byte {
- if m != nil {
- return m.Transaction
- }
- return nil
-}
-
-// The request for Rollback.
-type RollbackRequest struct {
- // The transaction identifier, returned by a call to
- // beginTransaction
.
- Transaction []byte `protobuf:"bytes,1,req,name=transaction" json:"transaction,omitempty"`
- XXX_unrecognized []byte `json:"-"`
-}
-
-func (m *RollbackRequest) Reset() { *m = RollbackRequest{} }
-func (m *RollbackRequest) String() string { return proto.CompactTextString(m) }
-func (*RollbackRequest) ProtoMessage() {}
-
-func (m *RollbackRequest) GetTransaction() []byte {
- if m != nil {
- return m.Transaction
- }
- return nil
-}
-
-// The response for Rollback.
-type RollbackResponse struct {
- XXX_unrecognized []byte `json:"-"`
-}
-
-func (m *RollbackResponse) Reset() { *m = RollbackResponse{} }
-func (m *RollbackResponse) String() string { return proto.CompactTextString(m) }
-func (*RollbackResponse) ProtoMessage() {}
-
-// The request for Commit.
-type CommitRequest struct {
- // The transaction identifier, returned by a call to
- // beginTransaction
. Must be set when mode is TRANSACTIONAL.
- Transaction []byte `protobuf:"bytes,1,opt,name=transaction" json:"transaction,omitempty"`
- // The mutation to perform. Optional.
- Mutation *Mutation `protobuf:"bytes,2,opt,name=mutation" json:"mutation,omitempty"`
- // The type of commit to perform. Either TRANSACTIONAL or NON_TRANSACTIONAL.
- Mode *CommitRequest_Mode `protobuf:"varint,5,opt,name=mode,enum=datastore.CommitRequest_Mode,def=1" json:"mode,omitempty"`
- XXX_unrecognized []byte `json:"-"`
-}
-
-func (m *CommitRequest) Reset() { *m = CommitRequest{} }
-func (m *CommitRequest) String() string { return proto.CompactTextString(m) }
-func (*CommitRequest) ProtoMessage() {}
-
-const Default_CommitRequest_Mode CommitRequest_Mode = CommitRequest_TRANSACTIONAL
-
-func (m *CommitRequest) GetTransaction() []byte {
- if m != nil {
- return m.Transaction
- }
- return nil
-}
-
-func (m *CommitRequest) GetMutation() *Mutation {
- if m != nil {
- return m.Mutation
- }
- return nil
-}
-
-func (m *CommitRequest) GetMode() CommitRequest_Mode {
- if m != nil && m.Mode != nil {
- return *m.Mode
- }
- return Default_CommitRequest_Mode
-}
-
-// The response for Commit.
-type CommitResponse struct {
- // The result of performing the mutation (if any).
- MutationResult *MutationResult `protobuf:"bytes,1,opt,name=mutation_result" json:"mutation_result,omitempty"`
- XXX_unrecognized []byte `json:"-"`
-}
-
-func (m *CommitResponse) Reset() { *m = CommitResponse{} }
-func (m *CommitResponse) String() string { return proto.CompactTextString(m) }
-func (*CommitResponse) ProtoMessage() {}
-
-func (m *CommitResponse) GetMutationResult() *MutationResult {
- if m != nil {
- return m.MutationResult
- }
- return nil
-}
-
-// The request for AllocateIds.
-type AllocateIdsRequest struct {
- // A list of keys with incomplete key paths to allocate IDs for.
- // No key may be reserved/read-only.
- Key []*Key `protobuf:"bytes,1,rep,name=key" json:"key,omitempty"`
- XXX_unrecognized []byte `json:"-"`
-}
-
-func (m *AllocateIdsRequest) Reset() { *m = AllocateIdsRequest{} }
-func (m *AllocateIdsRequest) String() string { return proto.CompactTextString(m) }
-func (*AllocateIdsRequest) ProtoMessage() {}
-
-func (m *AllocateIdsRequest) GetKey() []*Key {
- if m != nil {
- return m.Key
- }
- return nil
-}
-
-// The response for AllocateIds.
-type AllocateIdsResponse struct {
- // The keys specified in the request (in the same order), each with
- // its key path completed with a newly allocated ID.
- Key []*Key `protobuf:"bytes,1,rep,name=key" json:"key,omitempty"`
- XXX_unrecognized []byte `json:"-"`
-}
-
-func (m *AllocateIdsResponse) Reset() { *m = AllocateIdsResponse{} }
-func (m *AllocateIdsResponse) String() string { return proto.CompactTextString(m) }
-func (*AllocateIdsResponse) ProtoMessage() {}
-
-func (m *AllocateIdsResponse) GetKey() []*Key {
- if m != nil {
- return m.Key
- }
- return nil
-}
-
-func init() {
- proto.RegisterEnum("datastore.EntityResult_ResultType", EntityResult_ResultType_name, EntityResult_ResultType_value)
- proto.RegisterEnum("datastore.PropertyExpression_AggregationFunction", PropertyExpression_AggregationFunction_name, PropertyExpression_AggregationFunction_value)
- proto.RegisterEnum("datastore.PropertyOrder_Direction", PropertyOrder_Direction_name, PropertyOrder_Direction_value)
- proto.RegisterEnum("datastore.CompositeFilter_Operator", CompositeFilter_Operator_name, CompositeFilter_Operator_value)
- proto.RegisterEnum("datastore.PropertyFilter_Operator", PropertyFilter_Operator_name, PropertyFilter_Operator_value)
- proto.RegisterEnum("datastore.QueryResultBatch_MoreResultsType", QueryResultBatch_MoreResultsType_name, QueryResultBatch_MoreResultsType_value)
- proto.RegisterEnum("datastore.ReadOptions_ReadConsistency", ReadOptions_ReadConsistency_name, ReadOptions_ReadConsistency_value)
- proto.RegisterEnum("datastore.BeginTransactionRequest_IsolationLevel", BeginTransactionRequest_IsolationLevel_name, BeginTransactionRequest_IsolationLevel_value)
- proto.RegisterEnum("datastore.CommitRequest_Mode", CommitRequest_Mode_name, CommitRequest_Mode_value)
-}
diff --git a/vendor/google.golang.org/cloud/internal/datastore/datastore_v1.proto b/vendor/google.golang.org/cloud/internal/datastore/datastore_v1.proto
deleted file mode 100644
index 36bb9df7..00000000
--- a/vendor/google.golang.org/cloud/internal/datastore/datastore_v1.proto
+++ /dev/null
@@ -1,594 +0,0 @@
-// Copyright 2013 Google Inc. All Rights Reserved.
-//
-// The datastore v1 service proto definitions
-
-syntax = "proto2";
-
-package datastore;
-option java_package = "com.google.api.services.datastore";
-
-
-// An identifier for a particular subset of entities.
-//
-// Entities are partitioned into various subsets, each used by different
-// datasets and different namespaces within a dataset and so forth.
-//
-// All input partition IDs are normalized before use.
-// A partition ID is normalized as follows:
-// If the partition ID is unset or is set to an empty partition ID, replace it
-// with the context partition ID.
-// Otherwise, if the partition ID has no dataset ID, assign it the context
-// partition ID's dataset ID.
-// Unless otherwise documented, the context partition ID has the dataset ID set
-// to the context dataset ID and no other partition dimension set.
-//
-// A partition ID is empty if all of its fields are unset.
-//
-// Partition dimension:
-// A dimension may be unset.
-// A dimension's value must never be "".
-// A dimension's value must match [A-Za-z\d\.\-_]{1,100}
-// If the value of any dimension matches regex "__.*__",
-// the partition is reserved/read-only.
-// A reserved/read-only partition ID is forbidden in certain documented contexts.
-//
-// Dataset ID:
-// A dataset id's value must never be "".
-// A dataset id's value must match
-// ([a-z\d\-]{1,100}~)?([a-z\d][a-z\d\-\.]{0,99}:)?([a-z\d][a-z\d\-]{0,99}
-message PartitionId {
- // The dataset ID.
- optional string dataset_id = 3;
- // The namespace.
- optional string namespace = 4;
-}
-
-// A unique identifier for an entity.
-// If a key's partition id or any of its path kinds or names are
-// reserved/read-only, the key is reserved/read-only.
-// A reserved/read-only key is forbidden in certain documented contexts.
-message Key {
- // Entities are partitioned into subsets, currently identified by a dataset
- // (usually implicitly specified by the project) and namespace ID.
- // Queries are scoped to a single partition.
- optional PartitionId partition_id = 1;
-
- // A (kind, ID/name) pair used to construct a key path.
- //
- // At most one of name or ID may be set.
- // If either is set, the element is complete.
- // If neither is set, the element is incomplete.
- message PathElement {
- // The kind of the entity.
- // A kind matching regex "__.*__" is reserved/read-only.
- // A kind must not contain more than 500 characters.
- // Cannot be "".
- required string kind = 1;
- // The ID of the entity.
- // Never equal to zero. Values less than zero are discouraged and will not
- // be supported in the future.
- optional int64 id = 2;
- // The name of the entity.
- // A name matching regex "__.*__" is reserved/read-only.
- // A name must not be more than 500 characters.
- // Cannot be "".
- optional string name = 3;
- }
-
- // The entity path.
- // An entity path consists of one or more elements composed of a kind and a
- // string or numerical identifier, which identify entities. The first
- // element identifies a root entity, the second element identifies
- // a child of the root entity, the third element a child of the
- // second entity, and so forth. The entities identified by all prefixes of
- // the path are called the element's ancestors.
- // An entity path is always fully complete: ALL of the entity's ancestors
- // are required to be in the path along with the entity identifier itself.
- // The only exception is that in some documented cases, the identifier in the
- // last path element (for the entity) itself may be omitted. A path can never
- // be empty.
- repeated PathElement path_element = 2;
-}
-
-// A message that can hold any of the supported value types and associated
-// metadata.
-//
-// At most one of the meaning
field is reserved and should not be used.
- optional int32 meaning = 14;
-
- // If the value should be indexed.
- //
- // The indexed
property may be set for a
- // null
value.
- // When indexed
is true
, stringValue
- // is limited to 500 characters and the blob value is limited to 500 bytes.
- // Exception: If meaning is set to 2, string_value is limited to 2038
- // characters regardless of indexed.
- // When indexed is true, meaning 15 and 22 are not allowed, and meaning 16
- // will be ignored on input (and will never be set on output).
- // Input values by default have indexed
set to
- // true
; however, you can explicitly set indexed
to
- // true
if you want. (An output value never has
- // indexed
explicitly set to true
.) If a value is
- // itself an entity, it cannot have indexed
set to
- // true
.
- // Exception: An entity value with meaning 9, 20 or 21 may be indexed.
- optional bool indexed = 15 [default = true];
-}
-
-// An entity property.
-message Property {
- // The name of the property.
- // A property name matching regex "__.*__" is reserved.
- // A reserved property name is forbidden in certain documented contexts.
- // The name must not contain more than 500 characters.
- // Cannot be "".
- required string name = 1;
-
- // The value(s) of the property.
- // Each value can have only one value property populated. For example,
- // you cannot have a values list of { value: { integerValue: 22,
- // stringValue: "a" } }
, but you can have { value: { listValue:
- // [ { integerValue: 22 }, { stringValue: "a" } ] }
.
- required Value value = 4;
-}
-
-// An entity.
-//
-// An entity is limited to 1 megabyte when stored. That roughly
-// corresponds to a limit of 1 megabyte for the serialized form of this
-// message.
-message Entity {
- // The entity's key.
- //
- // An entity must have a key, unless otherwise documented (for example,
- // an entity in Value.entityValue
may have no key).
- // An entity's kind is its key's path's last element's kind,
- // or null if it has no key.
- optional Key key = 1;
- // The entity's properties.
- // Each property's name must be unique for its entity.
- repeated Property property = 2;
-}
-
-// The result of fetching an entity from the datastore.
-message EntityResult {
- // Specifies what data the 'entity' field contains.
- // A ResultType is either implied (for example, in LookupResponse.found it
- // is always FULL) or specified by context (for example, in message
- // QueryResultBatch, field 'entity_result_type' specifies a ResultType
- // for all the values in field 'entity_result').
- enum ResultType {
- FULL = 1; // The entire entity.
- PROJECTION = 2; // A projected subset of properties.
- // The entity may have no key.
- // A property value may have meaning 18.
- KEY_ONLY = 3; // Only the key.
- }
-
- // The resulting entity.
- required Entity entity = 1;
-}
-
-// A query.
-message Query {
- // The projection to return. If not set the entire entity is returned.
- repeated PropertyExpression projection = 2;
-
- // The kinds to query (if empty, returns entities from all kinds).
- repeated KindExpression kind = 3;
-
- // The filter to apply (optional).
- optional Filter filter = 4;
-
- // The order to apply to the query results (if empty, order is unspecified).
- repeated PropertyOrder order = 5;
-
- // The properties to group by (if empty, no grouping is applied to the
- // result set).
- repeated PropertyReference group_by = 6;
-
- // A starting point for the query results. Optional. Query cursors are
- // returned in query result batches.
- optional bytes /* serialized QueryCursor */ start_cursor = 7;
-
- // An ending point for the query results. Optional. Query cursors are
- // returned in query result batches.
- optional bytes /* serialized QueryCursor */ end_cursor = 8;
-
- // The number of results to skip. Applies before limit, but after all other
- // constraints (optional, defaults to 0).
- optional int32 offset = 10 [default=0];
-
- // The maximum number of results to return. Applies after all other
- // constraints. Optional.
- optional int32 limit = 11;
-}
-
-// A representation of a kind.
-message KindExpression {
- // The name of the kind.
- required string name = 1;
-}
-
-// A reference to a property relative to the kind expressions.
-// exactly.
-message PropertyReference {
- // The name of the property.
- required string name = 2;
-}
-
-// A representation of a property in a projection.
-message PropertyExpression {
- enum AggregationFunction {
- FIRST = 1;
- }
- // The property to project.
- required PropertyReference property = 1;
- // The aggregation function to apply to the property. Optional.
- // Can only be used when grouping by at least one property. Must
- // then be set on all properties in the projection that are not
- // being grouped by.
- optional AggregationFunction aggregation_function = 2;
-}
-
-// The desired order for a specific property.
-message PropertyOrder {
- enum Direction {
- ASCENDING = 1;
- DESCENDING = 2;
- }
- // The property to order by.
- required PropertyReference property = 1;
- // The direction to order by.
- optional Direction direction = 2 [default=ASCENDING];
-}
-
-// A holder for any type of filter. Exactly one field should be specified.
-message Filter {
- // A composite filter.
- optional CompositeFilter composite_filter = 1;
- // A filter on a property.
- optional PropertyFilter property_filter = 2;
-}
-
-// A filter that merges the multiple other filters using the given operation.
-message CompositeFilter {
- enum Operator {
- AND = 1;
- }
-
- // The operator for combining multiple filters.
- required Operator operator = 1;
- // The list of filters to combine.
- // Must contain at least one filter.
- repeated Filter filter = 2;
-}
-
-// A filter on a specific property.
-message PropertyFilter {
- enum Operator {
- LESS_THAN = 1;
- LESS_THAN_OR_EQUAL = 2;
- GREATER_THAN = 3;
- GREATER_THAN_OR_EQUAL = 4;
- EQUAL = 5;
-
- HAS_ANCESTOR = 11;
- }
-
- // The property to filter by.
- required PropertyReference property = 1;
- // The operator to filter by.
- required Operator operator = 2;
- // The value to compare the property to.
- required Value value = 3;
-}
-
-// A GQL query.
-message GqlQuery {
- required string query_string = 1;
- // When false, the query string must not contain a literal.
- optional bool allow_literal = 2 [default = false];
- // A named argument must set field GqlQueryArg.name.
- // No two named arguments may have the same name.
- // For each non-reserved named binding site in the query string,
- // there must be a named argument with that name,
- // but not necessarily the inverse.
- repeated GqlQueryArg name_arg = 3;
- // Numbered binding site @1 references the first numbered argument,
- // effectively using 1-based indexing, rather than the usual 0.
- // A numbered argument must NOT set field GqlQueryArg.name.
- // For each binding site numbered i in query_string,
- // there must be an ith numbered argument.
- // The inverse must also be true.
- repeated GqlQueryArg number_arg = 4;
-}
-
-// A binding argument for a GQL query.
-// Exactly one of fields value and cursor must be set.
-message GqlQueryArg {
- // Must match regex "[A-Za-z_$][A-Za-z_$0-9]*".
- // Must not match regex "__.*__".
- // Must not be "".
- optional string name = 1;
- optional Value value = 2;
- optional bytes cursor = 3;
-}
-
-// A batch of results produced by a query.
-message QueryResultBatch {
- // The possible values for the 'more_results' field.
- enum MoreResultsType {
- NOT_FINISHED = 1; // There are additional batches to fetch from this query.
- MORE_RESULTS_AFTER_LIMIT = 2; // The query is finished, but there are more
- // results after the limit.
- NO_MORE_RESULTS = 3; // The query has been exhausted.
- }
-
- // The result type for every entity in entityResults.
- required EntityResult.ResultType entity_result_type = 1;
- // The results for this batch.
- repeated EntityResult entity_result = 2;
-
- // A cursor that points to the position after the last result in the batch.
- // May be absent.
- optional bytes /* serialized QueryCursor */ end_cursor = 4;
-
- // The state of the query after the current batch.
- required MoreResultsType more_results = 5;
-
- // The number of results skipped because of Query.offset
.
- optional int32 skipped_results = 6;
-}
-
-// A set of changes to apply.
-//
-// No entity in this message may have a reserved property name,
-// not even a property in an entity in a value.
-// No value in this message may have meaning 18,
-// not even a value in an entity in another value.
-//
-// If entities with duplicate keys are present, an arbitrary choice will
-// be made as to which is written.
-message Mutation {
- // Entities to upsert.
- // Each upserted entity's key must have a complete path and
- // must not be reserved/read-only.
- repeated Entity upsert = 1;
- // Entities to update.
- // Each updated entity's key must have a complete path and
- // must not be reserved/read-only.
- repeated Entity update = 2;
- // Entities to insert.
- // Each inserted entity's key must have a complete path and
- // must not be reserved/read-only.
- repeated Entity insert = 3;
- // Insert entities with a newly allocated ID.
- // Each inserted entity's key must omit the final identifier in its path and
- // must not be reserved/read-only.
- repeated Entity insert_auto_id = 4;
- // Keys of entities to delete.
- // Each key must have a complete key path and must not be reserved/read-only.
- repeated Key delete = 5;
- // Ignore a user specified read-only period. Optional.
- optional bool force = 6;
-}
-
-// The result of applying a mutation.
-message MutationResult {
- // Number of index writes.
- required int32 index_updates = 1;
- // Keys for insertAutoId
entities. One per entity from the
- // request, in the same order.
- repeated Key insert_auto_id_key = 2;
-}
-
-// Options shared by read requests.
-message ReadOptions {
- enum ReadConsistency {
- DEFAULT = 0;
- STRONG = 1;
- EVENTUAL = 2;
- }
-
- // The read consistency to use.
- // Cannot be set when transaction is set.
- // Lookup and ancestor queries default to STRONG, global queries default to
- // EVENTUAL and cannot be set to STRONG.
- optional ReadConsistency read_consistency = 1 [default=DEFAULT];
-
- // The transaction to use. Optional.
- optional bytes /* serialized Transaction */ transaction = 2;
-}
-
-// The request for Lookup.
-message LookupRequest {
-
- // Options for this lookup request. Optional.
- optional ReadOptions read_options = 1;
- // Keys of entities to look up from the datastore.
- repeated Key key = 3;
-}
-
-// The response for Lookup.
-message LookupResponse {
-
- // The order of results in these fields is undefined and has no relation to
- // the order of the keys in the input.
-
- // Entities found as ResultType.FULL entities.
- repeated EntityResult found = 1;
-
- // Entities not found as ResultType.KEY_ONLY entities.
- repeated EntityResult missing = 2;
-
- // A list of keys that were not looked up due to resource constraints.
- repeated Key deferred = 3;
-}
-
-
-// The request for RunQuery.
-message RunQueryRequest {
-
- // The options for this query.
- optional ReadOptions read_options = 1;
-
- // Entities are partitioned into subsets, identified by a dataset (usually
- // implicitly specified by the project) and namespace ID. Queries are scoped
- // to a single partition.
- // This partition ID is normalized with the standard default context
- // partition ID, but all other partition IDs in RunQueryRequest are
- // normalized with this partition ID as the context partition ID.
- optional PartitionId partition_id = 2;
-
- // The query to run.
- // Either this field or field gql_query must be set, but not both.
- optional Query query = 3;
- // The GQL query to run.
- // Either this field or field query must be set, but not both.
- optional GqlQuery gql_query = 7;
-}
-
-// The response for RunQuery.
-message RunQueryResponse {
-
- // A batch of query results (always present).
- optional QueryResultBatch batch = 1;
-
-}
-
-// The request for BeginTransaction.
-message BeginTransactionRequest {
-
- enum IsolationLevel {
- SNAPSHOT = 0; // Read from a consistent snapshot. Concurrent transactions
- // conflict if their mutations conflict. For example:
- // Read(A),Write(B) may not conflict with Read(B),Write(A),
- // but Read(B),Write(B) does conflict with Read(B),Write(B).
- SERIALIZABLE = 1; // Read from a consistent snapshot. Concurrent
- // transactions conflict if they cannot be serialized.
- // For example Read(A),Write(B) does conflict with
- // Read(B),Write(A) but Read(A) may not conflict with
- // Write(A).
- }
-
- // The transaction isolation level.
- optional IsolationLevel isolation_level = 1 [default=SNAPSHOT];
-}
-
-// The response for BeginTransaction.
-message BeginTransactionResponse {
-
- // The transaction identifier (always present).
- optional bytes /* serialized Transaction */ transaction = 1;
-}
-
-// The request for Rollback.
-message RollbackRequest {
-
- // The transaction identifier, returned by a call to
- // beginTransaction
.
- required bytes /* serialized Transaction */ transaction = 1;
-}
-
-// The response for Rollback.
-message RollbackResponse {
-// Empty
-}
-
-// The request for Commit.
-message CommitRequest {
-
- enum Mode {
- TRANSACTIONAL = 1;
- NON_TRANSACTIONAL = 2;
- }
-
- // The transaction identifier, returned by a call to
- // beginTransaction
. Must be set when mode is TRANSACTIONAL.
- optional bytes /* serialized Transaction */ transaction = 1;
- // The mutation to perform. Optional.
- optional Mutation mutation = 2;
- // The type of commit to perform. Either TRANSACTIONAL or NON_TRANSACTIONAL.
- optional Mode mode = 5 [default=TRANSACTIONAL];
-}
-
-// The response for Commit.
-message CommitResponse {
-
- // The result of performing the mutation (if any).
- optional MutationResult mutation_result = 1;
-}
-
-// The request for AllocateIds.
-message AllocateIdsRequest {
-
- // A list of keys with incomplete key paths to allocate IDs for.
- // No key may be reserved/read-only.
- repeated Key key = 1;
-}
-
-// The response for AllocateIds.
-message AllocateIdsResponse {
-
- // The keys specified in the request (in the same order), each with
- // its key path completed with a newly allocated ID.
- repeated Key key = 1;
-}
-
-// Each rpc normalizes the partition IDs of the keys in its input entities,
-// and always returns entities with keys with normalized partition IDs.
-// (Note that applies to all entities, including entities in values.)
-service DatastoreService {
- // Look up some entities by key.
- rpc Lookup(LookupRequest) returns (LookupResponse) {
- };
- // Query for entities.
- rpc RunQuery(RunQueryRequest) returns (RunQueryResponse) {
- };
- // Begin a new transaction.
- rpc BeginTransaction(BeginTransactionRequest) returns (BeginTransactionResponse) {
- };
- // Commit a transaction, optionally creating, deleting or modifying some
- // entities.
- rpc Commit(CommitRequest) returns (CommitResponse) {
- };
- // Roll back a transaction.
- rpc Rollback(RollbackRequest) returns (RollbackResponse) {
- };
- // Allocate IDs for incomplete keys (useful for referencing an entity before
- // it is inserted).
- rpc AllocateIds(AllocateIdsRequest) returns (AllocateIdsResponse) {
- };
-}
diff --git a/vendor/google.golang.org/cloud/internal/testutil/context.go b/vendor/google.golang.org/cloud/internal/testutil/context.go
deleted file mode 100644
index aafd6838..00000000
--- a/vendor/google.golang.org/cloud/internal/testutil/context.go
+++ /dev/null
@@ -1,57 +0,0 @@
-// Copyright 2014 Google Inc. All Rights Reserved.
-//
-// Licensed under the Apache License, Version 2.0 (the "License");
-// you may not use this file except in compliance with the License.
-// You may obtain a copy of the License at
-//
-// http://www.apache.org/licenses/LICENSE-2.0
-//
-// Unless required by applicable law or agreed to in writing, software
-// distributed under the License is distributed on an "AS IS" BASIS,
-// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-// See the License for the specific language governing permissions and
-// limitations under the License.
-
-// Package testutil contains helper functions for writing tests.
-package testutil
-
-import (
- "io/ioutil"
- "log"
- "net/http"
- "os"
-
- "golang.org/x/net/context"
- "golang.org/x/oauth2"
- "golang.org/x/oauth2/google"
- "google.golang.org/cloud"
-)
-
-const (
- envProjID = "GCLOUD_TESTS_GOLANG_PROJECT_ID"
- envPrivateKey = "GCLOUD_TESTS_GOLANG_KEY"
-)
-
-func Context(scopes ...string) context.Context {
- key, projID := os.Getenv(envPrivateKey), os.Getenv(envProjID)
- if key == "" || projID == "" {
- log.Fatal("GCLOUD_TESTS_GOLANG_KEY and GCLOUD_TESTS_GOLANG_PROJECT_ID must be set. See CONTRIBUTING.md for details.")
- }
- jsonKey, err := ioutil.ReadFile(key)
- if err != nil {
- log.Fatalf("Cannot read the JSON key file, err: %v", err)
- }
- conf, err := google.JWTConfigFromJSON(jsonKey, scopes...)
- if err != nil {
- log.Fatal(err)
- }
- return cloud.NewContext(projID, conf.Client(oauth2.NoContext))
-}
-
-func NoAuthContext() context.Context {
- projID := os.Getenv(envProjID)
- if projID == "" {
- log.Fatal("GCLOUD_TESTS_GOLANG_PROJECT_ID must be set. See CONTRIBUTING.md for details.")
- }
- return cloud.NewContext(projID, &http.Client{Transport: http.DefaultTransport})
-}