Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(372)

Unified Diff: third_party/cacheinvalidation/src/proto/android_listener.proto

Issue 1162033004: Pull cacheinvalidations code directory into chromium repo. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 5 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: third_party/cacheinvalidation/src/proto/android_listener.proto
diff --git a/third_party/cacheinvalidation/src/proto/android_listener.proto b/third_party/cacheinvalidation/src/proto/android_listener.proto
new file mode 100644
index 0000000000000000000000000000000000000000..dd16a833671dbd0d9fb89e6f1725479c55ac104b
--- /dev/null
+++ b/third_party/cacheinvalidation/src/proto/android_listener.proto
@@ -0,0 +1,103 @@
+/*
+ * Copyright 2011 Google Inc.
+ *
+ * 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.
+ */
+//
+// Specification of protocols used by the AndroidListener abstraction.
+//
+// Note: unless otherwise specified in a comment, all fields in all messages
+// are required, even though they are listed as optional.
+
+syntax = "proto2";
+
+package com.google.protos.ipc.invalidation;
+
+option optimize_for = LITE_RUNTIME;
+
+
+option java_outer_classname = "NanoAndroidListenerProtocol";
+option java_package = "com.google.protos.ipc.invalidation";
+
+
+import "client.proto";
+import "client_protocol.proto";
+
+// Used to persist internal state between instantiations of Android listener
+// objects.
+message AndroidListenerState {
+ // When a registration request has failed, we track state for that object that
+ // allows retries to be delayed using exponential backoff.
+ message RetryRegistrationState {
+ // Identifier of the object for which there has been a failure.
+ optional ObjectIdP object_id = 1;
+
+ // State of exponential backoff delay generator that is used to delay any
+ // registration retries for the object.
+ optional ExponentialBackoffState exponential_backoff_state = 2;
+ }
+
+ // Set of object ids tracking the application's desired registrations.
+ repeated ObjectIdP registration = 1;
+
+ // Set of states for registrations retries. When there is a transient
+ // registration failure relative to an object, an entry is added. If
+ // registration is successful or the user gives up on the request, the entry
+ // is removed.
+ repeated RetryRegistrationState retry_registration_state = 2;
+
+ // Identifier of client with which this listener is associated. This client ID
+ // is randomly generated by the Android listener whenever a new client is
+ // started and has no relationship to 's application client ID.
+ optional bytes client_id = 3;
+
+ // Sequence number for alarm manager request codes. Sequence numbers are
+ // assigned serially for each distinct client_id. This value indicates
+ // the request code used for the last request.
+ optional int32 request_code_seq_num = 4;
+}
+
+// Represents a command that registers or unregisters a set of objects. The
+// command may be initiated by the application or by the Android listener when
+// there is a registration failure.
+message RegistrationCommand {
+ // Indicates whether this is a register command (when true) or unregister
+ // (when false) request.
+ optional bool is_register = 1;
+
+ // Identifies the objects to register or unregister.
+ repeated ObjectIdP object_id = 2;
+
+ // Identifier of client with which this listener is associated.
+ optional bytes client_id = 3;
+
+ // Indicates whether this is a delayed registration command. When a
+ // registration command intent is handled by the Android listener, this field
+ // is used to determine whether the command has been delayed yet or not. If it
+ // has not already been delayed, the listener may choose to defer the command
+ // until later.
+ optional bool is_delayed = 4;
+}
+
+// Represents a command that starts an Android invalidation client.
+message StartCommand {
+ // Type of client to start.
+ optional int32 client_type = 1;
+
+ // Name of client to start.
+ optional bytes client_name = 2;
+
+ // Whether suppression is permitted for this client.
+ optional bool allow_suppression = 3;
+}
+

Powered by Google App Engine
This is Rietveld 408576698