Class: Google::Apis::FirestoreV1::GoogleFirestoreAdminV1ChangeStream

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 Change Stream is a resource that allows users to receive change notifications from a Firestore database.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ GoogleFirestoreAdminV1ChangeStream

Returns a new instance of GoogleFirestoreAdminV1ChangeStream.



1648
1649
1650
# File 'lib/google/apis/firestore_v1/classes.rb', line 1648

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

Instance Attribute Details

#collection_group_scopeGoogle::Apis::FirestoreV1::GoogleFirestoreAdminV1CollectionGroupScope

The change stream is scoped to a collection group. Only events associated with the given collection group are visible to the Change Stream. Only a single change stream can be enabled per collection group. Corresponds to the JSON property collectionGroupScope



1604
1605
1606
# File 'lib/google/apis/firestore_v1/classes.rb', line 1604

def collection_group_scope
  @collection_group_scope
end

#create_timeString

Output only. The time the Change Stream was created. Corresponds to the JSON property createTime

Returns:

  • (String)


1609
1610
1611
# File 'lib/google/apis/firestore_v1/classes.rb', line 1609

def create_time
  @create_time
end

#database_scopeGoogle::Apis::FirestoreV1::GoogleFirestoreAdminV1DatabaseScope

The change stream is scoped to the entire database. All events in the database are visible to the Change Stream. One Database scope Change Stream is allowed per database. Corresponds to the JSON property databaseScope



1616
1617
1618
# File 'lib/google/apis/firestore_v1/classes.rb', line 1616

def database_scope
  @database_scope
end

#etagString

Optional. An etag used to determine which version of the configuration is being edited. Corresponds to the JSON property etag

Returns:

  • (String)


1622
1623
1624
# File 'lib/google/apis/firestore_v1/classes.rb', line 1622

def etag
  @etag
end

#nameString

Identifier. The external resource name of the change stream. Format projects/ project/databases/database/changeStreams/change_stream` Corresponds to the JSON propertyname`

Returns:

  • (String)


1628
1629
1630
# File 'lib/google/apis/firestore_v1/classes.rb', line 1628

def name
  @name
end

#retention_periodString

Required. The retention period of the change stream. This is the amount of time a change event is available on the change stream. Must be from 1 to 7 days, inclusive. The retention_period must be in day granularity, i.e. it must be a multiple of 24 hours. Corresponds to the JSON property retentionPeriod

Returns:

  • (String)


1636
1637
1638
# File 'lib/google/apis/firestore_v1/classes.rb', line 1636

def retention_period
  @retention_period
end

#start_timeString

Output only. The time the Change Stream started recording events. Corresponds to the JSON property startTime

Returns:

  • (String)


1641
1642
1643
# File 'lib/google/apis/firestore_v1/classes.rb', line 1641

def start_time
  @start_time
end

#update_timeString

Output only. The time the Change Stream was last updated. Corresponds to the JSON property updateTime

Returns:

  • (String)


1646
1647
1648
# File 'lib/google/apis/firestore_v1/classes.rb', line 1646

def update_time
  @update_time
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



1653
1654
1655
1656
1657
1658
1659
1660
1661
1662
# File 'lib/google/apis/firestore_v1/classes.rb', line 1653

def update!(**args)
  @collection_group_scope = args[:collection_group_scope] if args.key?(:collection_group_scope)
  @create_time = args[:create_time] if args.key?(:create_time)
  @database_scope = args[:database_scope] if args.key?(:database_scope)
  @etag = args[:etag] if args.key?(:etag)
  @name = args[:name] if args.key?(:name)
  @retention_period = args[:retention_period] if args.key?(:retention_period)
  @start_time = args[:start_time] if args.key?(:start_time)
  @update_time = args[:update_time] if args.key?(:update_time)
end