| // Copyright 2019 The Flutter Authors. All rights reserved. |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| |
| syntax = "proto2"; |
| |
| package cocoon; |
| |
| // Message used in the serialization of [Key] objects. |
| // |
| // These are serialized to protocol buffers to match the behavior of the Go |
| // AppEngine datastore library. This parity is required while Cocoon operates |
| // with two backends, because the serialized values vended by one backend must |
| // be deserializable by the other backend. |
| // |
| // See also: |
| // |
| // * <https://github.com/golang/appengine/blob/b2f4a3cf3c67576a2ee09e1fe62656a5086ce880/internal/datastore/datastore_v3.proto#L89> |
| message Path { |
| repeated group Element = 1 { |
| required string type = 2; |
| optional int64 id = 3; |
| optional string name = 4; |
| } |
| } |
| |
| // Message used in the serialization of [Key] objects. |
| // |
| // These are serialized to protocol buffers to match the behavior of the Go |
| // AppEngine datastore library. This parity is required while Cocoon operates |
| // with two backends, because the serialized values vended by one backend must |
| // be deserializable by the other backend. |
| // |
| // See also: |
| // |
| // * <https://github.com/golang/appengine/blob/b2f4a3cf3c67576a2ee09e1fe62656a5086ce880/internal/datastore/datastore_v3.proto#L97> |
| message Reference { |
| required string app = 13; |
| optional string name_space = 20; |
| required Path path = 14; |
| } |