Class: Google::Apis::FirestoreV1::Document

Inherits:
Object
  • Object
show all
Includes:
Core::Hashable, Core::JsonObjectSupport
Defined in:
lib/google/apis/firestore_v1/classes.rb,
lib/google/apis/firestore_v1/representations.rb,
lib/google/apis/firestore_v1/representations.rb

Overview

A Firestore document. Must not exceed 1 MiB - 4 bytes.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ Document

Returns a new instance of Document.



624
625
626
# File 'lib/google/apis/firestore_v1/classes.rb', line 624

def initialize(**args)
   update!(**args)
end

Instance Attribute Details

#create_timeString

Output only. The time at which the document was created. This value increases monotonically when a document is deleted then recreated. It can also be compared to values from other documents and the read_time of a query. Corresponds to the JSON property createTime

Returns:

  • (String)


589
590
591
# File 'lib/google/apis/firestore_v1/classes.rb', line 589

def create_time
  @create_time
end

#fieldsHash<String,Google::Apis::FirestoreV1::Value>

The document's fields. The map keys represent field names. Field names matching the regular expression __.*__ are reserved. Reserved field names are forbidden except in certain documented contexts. The field names, represented as UTF-8, must not exceed 1,500 bytes and cannot be empty. Field paths may be used in other contexts to refer to structured fields defined here. For map_value, the field path is represented by a dot-delimited (.) string of segments. Each segment is either a simple field name (defined below) or a quoted field name. For example, the structured field "foo" : map_value: "x&y" : string_value: "hello" ``would be represented by the field path foo.x&y . A simple field name contains only characters `a` to `z`, `A` to `Z`, `0` to `9`, or `_`, and must not start with `0` to `9`. For example, ` foo_bar_17`. A quoted field name starts and ends with and may contain any character. Some characters, including , must be escaped using a `\`. For example, x&y represents `x&y` and bak\tikrepresents baktik `. Corresponds to the JSON propertyfields`

Returns:



608
609
610
# File 'lib/google/apis/firestore_v1/classes.rb', line 608

def fields
  @fields
end

#nameString

The resource name of the document, for example projects/project_id/ databases/database_id/documents/document_path`. Corresponds to the JSON propertyname`

Returns:

  • (String)


614
615
616
# File 'lib/google/apis/firestore_v1/classes.rb', line 614

def name
  @name
end

#update_timeString

Output only. The time at which the document was last changed. This value is initially set to the create_time then increases monotonically with each change to the document. It can also be compared to values from other documents and the read_time of a query. Corresponds to the JSON property updateTime

Returns:

  • (String)


622
623
624
# File 'lib/google/apis/firestore_v1/classes.rb', line 622

def update_time
  @update_time
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



629
630
631
632
633
634
# File 'lib/google/apis/firestore_v1/classes.rb', line 629

def update!(**args)
  @create_time = args[:create_time] if args.key?(:create_time)
  @fields = args[:fields] if args.key?(:fields)
  @name = args[:name] if args.key?(:name)
  @update_time = args[:update_time] if args.key?(:update_time)
end