Class: Google::Apis::CloudsearchV1::ThreadUpdate
- Inherits:
-
Object
- Object
- Google::Apis::CloudsearchV1::ThreadUpdate
- Includes:
- Google::Apis::Core::Hashable, Google::Apis::Core::JsonObjectSupport
- Defined in:
- lib/google/apis/cloudsearch_v1/classes.rb,
lib/google/apis/cloudsearch_v1/representations.rb,
lib/google/apis/cloudsearch_v1/representations.rb
Overview
HistoryRecord for changes associated with a thread, namely: MESSAGE_ADDED MESSAGE_DELETED LABEL_ADDED LABEL_REMOVED ATTRIBUTE_SET ATTRIBUTE_REMOVED THREAD_KEY_SET All label_ids refer to the (unchanging) value as defined by the Label.id field in labels.proto. In particular, it is not the canonical_name.
Instance Attribute Summary collapse
-
#attribute_removed ⇒ Google::Apis::CloudsearchV1::AttributeRemoved
An attribute was deleted from some (subset of the) messages in this thread.
-
#attribute_set ⇒ Google::Apis::CloudsearchV1::AttributeSet
An attribute was added to some (subset of the) messages in this thread.
-
#label_added ⇒ Google::Apis::CloudsearchV1::LabelAdded
A label was added to some (subset of the) messages in this thread.
-
#label_removed ⇒ Google::Apis::CloudsearchV1::LabelRemoved
A label was removed from some (subset of the) messages in this thread.
-
#last_history_record_id ⇒ Fixnum
Indicates the record id of the last operation that modified this thread.
-
#message_added ⇒ Google::Apis::CloudsearchV1::MessageAdded
A message was added.
-
#message_deleted ⇒ Google::Apis::CloudsearchV1::MessageDeleted
Some (subset of the) messages in this thread were deleted.
-
#original_thread_key ⇒ Google::Apis::CloudsearchV1::MultiKey
A union-like type for identifiying an object in storage.
-
#pre_state ⇒ Array<Google::Apis::CloudsearchV1::PreState>
The PreStates of all messages before the transaction.
-
#thread_key ⇒ Google::Apis::CloudsearchV1::MultiKey
A union-like type for identifiying an object in storage.
-
#thread_key_set ⇒ Google::Apis::CloudsearchV1::ThreadKeySet
The ThreadKey was set on some (subset of the) messages in this thread.
-
#thread_locator ⇒ String
Thread PLID Corresponds to the JSON property
threadLocator. -
#topic_state_update ⇒ Google::Apis::CloudsearchV1::TopicStateUpdate
Corresponds to the JSON property
topicStateUpdate.
Instance Method Summary collapse
-
#initialize(**args) ⇒ ThreadUpdate
constructor
A new instance of ThreadUpdate.
-
#update!(**args) ⇒ Object
Update properties of this object.
Constructor Details
#initialize(**args) ⇒ ThreadUpdate
Returns a new instance of ThreadUpdate.
19640 19641 19642 |
# File 'lib/google/apis/cloudsearch_v1/classes.rb', line 19640 def initialize(**args) update!(**args) end |
Instance Attribute Details
#attribute_removed ⇒ Google::Apis::CloudsearchV1::AttributeRemoved
An attribute was deleted from some (subset of the) messages in this thread.
Corresponds to the JSON property attributeRemoved
19524 19525 19526 |
# File 'lib/google/apis/cloudsearch_v1/classes.rb', line 19524 def attribute_removed @attribute_removed end |
#attribute_set ⇒ Google::Apis::CloudsearchV1::AttributeSet
An attribute was added to some (subset of the) messages in this thread.
Corresponds to the JSON property attributeSet
19529 19530 19531 |
# File 'lib/google/apis/cloudsearch_v1/classes.rb', line 19529 def attribute_set @attribute_set end |
#label_added ⇒ Google::Apis::CloudsearchV1::LabelAdded
A label was added to some (subset of the) messages in this thread.
Corresponds to the JSON property labelAdded
19534 19535 19536 |
# File 'lib/google/apis/cloudsearch_v1/classes.rb', line 19534 def label_added @label_added end |
#label_removed ⇒ Google::Apis::CloudsearchV1::LabelRemoved
A label was removed from some (subset of the) messages in this thread.
Corresponds to the JSON property labelRemoved
19539 19540 19541 |
# File 'lib/google/apis/cloudsearch_v1/classes.rb', line 19539 def label_removed @label_removed end |
#last_history_record_id ⇒ Fixnum
Indicates the record id of the last operation that modified this thread.
Corresponds to the JSON property lastHistoryRecordId
19544 19545 19546 |
# File 'lib/google/apis/cloudsearch_v1/classes.rb', line 19544 def last_history_record_id @last_history_record_id end |
#message_added ⇒ Google::Apis::CloudsearchV1::MessageAdded
A message was added. Specifying id and initial labels.
Corresponds to the JSON property messageAdded
19549 19550 19551 |
# File 'lib/google/apis/cloudsearch_v1/classes.rb', line 19549 def @message_added end |
#message_deleted ⇒ Google::Apis::CloudsearchV1::MessageDeleted
Some (subset of the) messages in this thread were deleted.
Corresponds to the JSON property messageDeleted
19554 19555 19556 |
# File 'lib/google/apis/cloudsearch_v1/classes.rb', line 19554 def @message_deleted end |
#original_thread_key ⇒ Google::Apis::CloudsearchV1::MultiKey
A union-like type for identifiying an object in storage. MultiKeys contain
multiple key fields, each in a separate key space. At least one key field must
be set. More than one key field may be set as long as all key values refer to
the same object. All objects in storage have unique server_id keys. All
MultiKeys returned from storage to storage clients will always have the
server_id field set. When creating an object, if a MultiKey without a
server_id is supplied to storage, the storage system will auto-assign a server
ID to the new object. For all other storage requests (i.e. those not creating
new objects), clients may omit server_id (as long as they supply another key).
Instead of server ids, clients can specify string based
client_assigned_perm_id keys. Mail message drafts are a prime example of these
kinds of objects. Each time a user saves a new version of a draft, the storage
system needs to create a new object with the updated draft content and needs
to delete the object containing the old content. The new object gets a new
SERVER_ID but should get the same CLIENT_ASSIGNED_PERM_ID as the now-deleted
object containing the old content. Carrying forward the perm ID allows it to
be used to consistently refer to the same logical object across revisions.
These perm IDs save sync clients from having to deal with changing object IDs.
For example, assume there's a mail message in storage with SERVER_ID = 123 and
CLIENT_ASSIGNED_PERM_ID = "foo". The following are all valid ways of
addressing the object using MultiKeys: 1) MultiKey server_id = 123 2)
MultiKey server_id = 123, client_assigned_perm_id = "foo" 3) MultiKey
client_assigned_perm_id = "foo" Multikeys are never serialized in the
storage. The individual keys are extracted and processed separately. Both the
integer ids as well as string ids are indexed for efficient retrieval using
the same fields in the backend. See go/tingle-multikeys for more information
on background and motivation.
Corresponds to the JSON property originalThreadKey
19585 19586 19587 |
# File 'lib/google/apis/cloudsearch_v1/classes.rb', line 19585 def original_thread_key @original_thread_key end |
#pre_state ⇒ Array<Google::Apis::CloudsearchV1::PreState>
The PreStates of all messages before the transaction. These are suppressed if
the client requested that prestates not be included in the output of the
GetHistoryRequest.
Corresponds to the JSON property preState
19592 19593 19594 |
# File 'lib/google/apis/cloudsearch_v1/classes.rb', line 19592 def pre_state @pre_state end |
#thread_key ⇒ Google::Apis::CloudsearchV1::MultiKey
A union-like type for identifiying an object in storage. MultiKeys contain
multiple key fields, each in a separate key space. At least one key field must
be set. More than one key field may be set as long as all key values refer to
the same object. All objects in storage have unique server_id keys. All
MultiKeys returned from storage to storage clients will always have the
server_id field set. When creating an object, if a MultiKey without a
server_id is supplied to storage, the storage system will auto-assign a server
ID to the new object. For all other storage requests (i.e. those not creating
new objects), clients may omit server_id (as long as they supply another key).
Instead of server ids, clients can specify string based
client_assigned_perm_id keys. Mail message drafts are a prime example of these
kinds of objects. Each time a user saves a new version of a draft, the storage
system needs to create a new object with the updated draft content and needs
to delete the object containing the old content. The new object gets a new
SERVER_ID but should get the same CLIENT_ASSIGNED_PERM_ID as the now-deleted
object containing the old content. Carrying forward the perm ID allows it to
be used to consistently refer to the same logical object across revisions.
These perm IDs save sync clients from having to deal with changing object IDs.
For example, assume there's a mail message in storage with SERVER_ID = 123 and
CLIENT_ASSIGNED_PERM_ID = "foo". The following are all valid ways of
addressing the object using MultiKeys: 1) MultiKey server_id = 123 2)
MultiKey server_id = 123, client_assigned_perm_id = "foo" 3) MultiKey
client_assigned_perm_id = "foo" Multikeys are never serialized in the
storage. The individual keys are extracted and processed separately. Both the
integer ids as well as string ids are indexed for efficient retrieval using
the same fields in the backend. See go/tingle-multikeys for more information
on background and motivation.
Corresponds to the JSON property threadKey
19623 19624 19625 |
# File 'lib/google/apis/cloudsearch_v1/classes.rb', line 19623 def thread_key @thread_key end |
#thread_key_set ⇒ Google::Apis::CloudsearchV1::ThreadKeySet
The ThreadKey was set on some (subset of the) messages in this thread.
Corresponds to the JSON property threadKeySet
19628 19629 19630 |
# File 'lib/google/apis/cloudsearch_v1/classes.rb', line 19628 def thread_key_set @thread_key_set end |
#thread_locator ⇒ String
Thread PLID
Corresponds to the JSON property threadLocator
19633 19634 19635 |
# File 'lib/google/apis/cloudsearch_v1/classes.rb', line 19633 def thread_locator @thread_locator end |
#topic_state_update ⇒ Google::Apis::CloudsearchV1::TopicStateUpdate
Corresponds to the JSON property topicStateUpdate
19638 19639 19640 |
# File 'lib/google/apis/cloudsearch_v1/classes.rb', line 19638 def topic_state_update @topic_state_update end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
19645 19646 19647 19648 19649 19650 19651 19652 19653 19654 19655 19656 19657 19658 19659 |
# File 'lib/google/apis/cloudsearch_v1/classes.rb', line 19645 def update!(**args) @attribute_removed = args[:attribute_removed] if args.key?(:attribute_removed) @attribute_set = args[:attribute_set] if args.key?(:attribute_set) @label_added = args[:label_added] if args.key?(:label_added) @label_removed = args[:label_removed] if args.key?(:label_removed) @last_history_record_id = args[:last_history_record_id] if args.key?(:last_history_record_id) @message_added = args[:message_added] if args.key?(:message_added) @message_deleted = args[:message_deleted] if args.key?(:message_deleted) @original_thread_key = args[:original_thread_key] if args.key?(:original_thread_key) @pre_state = args[:pre_state] if args.key?(:pre_state) @thread_key = args[:thread_key] if args.key?(:thread_key) @thread_key_set = args[:thread_key_set] if args.key?(:thread_key_set) @thread_locator = args[:thread_locator] if args.key?(:thread_locator) @topic_state_update = args[:topic_state_update] if args.key?(:topic_state_update) end |