Chromium Code Reviews| OLD | NEW |
|---|---|
| 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 // | 4 // |
| 5 // Sync protocol for communication between sync client and server. | 5 // Sync protocol for communication between sync client and server. |
| 6 | 6 |
| 7 // Update proto_value_conversions{.h,.cc,_unittest.cc} if you change | 7 // Update proto_value_conversions{.h,.cc,_unittest.cc} if you change |
| 8 // any fields in this file. | 8 // any fields in this file. |
| 9 | 9 |
| 10 syntax = "proto2"; | 10 syntax = "proto2"; |
| (...skipping 437 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 448 | 448 |
| 449 // Whether to create the mobile bookmarks folder if it's not | 449 // Whether to create the mobile bookmarks folder if it's not |
| 450 // already created. Should be set to true only by mobile clients. | 450 // already created. Should be set to true only by mobile clients. |
| 451 optional bool create_mobile_bookmarks_folder = 1000 [default = false]; | 451 optional bool create_mobile_bookmarks_folder = 1000 [default = false]; |
| 452 }; | 452 }; |
| 453 | 453 |
| 454 message AuthenticateMessage { | 454 message AuthenticateMessage { |
| 455 required string auth_token = 1; | 455 required string auth_token = 1; |
| 456 }; | 456 }; |
| 457 | 457 |
| 458 message GetEncryptionKeyMessage { | |
|
tim (not reviewing)
2012/07/19 21:42:03
Comments on the messages + fields.
Nicolas Zea
2012/07/24 22:51:24
Done.
| |
| 459 } | |
| 460 | |
| 461 message GetEncryptionKeyResponse { | |
| 462 optional bytes key = 1; | |
| 463 } | |
| 464 | |
| 458 message ClientToServerMessage { | 465 message ClientToServerMessage { |
| 459 required string share = 1; | 466 required string share = 1; |
| 460 optional int32 protocol_version = 2 [default = 31]; | 467 optional int32 protocol_version = 2 [default = 31]; |
| 461 enum Contents { | 468 enum Contents { |
| 462 COMMIT = 1; | 469 COMMIT = 1; |
| 463 GET_UPDATES = 2; | 470 GET_UPDATES = 2; |
| 464 AUTHENTICATE = 3; | 471 AUTHENTICATE = 3; |
| 465 CLEAR_DATA = 4; | 472 CLEAR_DATA = 4; |
| 473 GET_ENCRYPTION_KEY = 5; | |
| 466 } | 474 } |
| 467 | 475 |
| 468 required Contents message_contents = 3; | 476 required Contents message_contents = 3; |
| 469 optional CommitMessage commit = 4; | 477 optional CommitMessage commit = 4; |
| 470 optional GetUpdatesMessage get_updates = 5; | 478 optional GetUpdatesMessage get_updates = 5; |
| 471 optional AuthenticateMessage authenticate = 6; | 479 optional AuthenticateMessage authenticate = 6; |
| 472 | 480 |
| 473 // Request to clear all Chromium data from the server. | 481 // Request to clear all Chromium data from the server. |
| 474 // DEPRECATED - this field was never used in production. | 482 // DEPRECATED - this field was never used in production. |
| 475 // optional ClearUserDataMessage clear_user_data = 9; | 483 // optional ClearUserDataMessage clear_user_data = 9; |
| 476 | 484 |
| 477 optional string store_birthday = 7; // Opaque store ID; if it changes, duck! | 485 optional string store_birthday = 7; // Opaque store ID; if it changes, duck! |
| 478 // The client sets this if it detects a sync issue. The server will tell it | 486 // The client sets this if it detects a sync issue. The server will tell it |
| 479 // if it should perform a refresh. | 487 // if it should perform a refresh. |
| 480 optional bool sync_problem_detected = 8 [default = false]; | 488 optional bool sync_problem_detected = 8 [default = false]; |
| 481 | 489 |
| 482 // Client side state information for debugging purpose. | 490 // Client side state information for debugging purpose. |
| 483 // This is only sent on the first getupdates of every sync cycle, | 491 // This is only sent on the first getupdates of every sync cycle, |
| 484 // as an optimization to save bandwidth. | 492 // as an optimization to save bandwidth. |
| 485 optional DebugInfo debug_info = 10; | 493 optional DebugInfo debug_info = 10; |
| 494 | |
| 495 optional GetEncryptionKeyMessage get_encryption_key = 11; | |
| 486 }; | 496 }; |
| 487 | 497 |
| 488 message CommitResponse { | 498 message CommitResponse { |
| 489 enum ResponseType { | 499 enum ResponseType { |
| 490 SUCCESS = 1; | 500 SUCCESS = 1; |
| 491 CONFLICT = 2; // You're out of date; update and check your data | 501 CONFLICT = 2; // You're out of date; update and check your data |
| 492 // TODO(ncarter): What's the difference between RETRY and TRANSIENT_ERROR? | 502 // TODO(ncarter): What's the difference between RETRY and TRANSIENT_ERROR? |
| 493 RETRY = 3; // Someone has a conflicting, non-expired session open | 503 RETRY = 3; // Someone has a conflicting, non-expired session open |
| 494 INVALID_MESSAGE = 4; // What the client sent was invalid, and trying again | 504 INVALID_MESSAGE = 4; // What the client sent was invalid, and trying again |
| 495 // won't help. | 505 // won't help. |
| (...skipping 122 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 618 required double target_utilization = 2; | 628 required double target_utilization = 2; |
| 619 required double measure_interval_max = 3; | 629 required double measure_interval_max = 3; |
| 620 required double measure_interval_min = 4; | 630 required double measure_interval_min = 4; |
| 621 required double observation_window = 5; | 631 required double observation_window = 5; |
| 622 }; | 632 }; |
| 623 | 633 |
| 624 message ClientToServerResponse { | 634 message ClientToServerResponse { |
| 625 optional CommitResponse commit = 1; | 635 optional CommitResponse commit = 1; |
| 626 optional GetUpdatesResponse get_updates = 2; | 636 optional GetUpdatesResponse get_updates = 2; |
| 627 optional AuthenticateResponse authenticate = 3; | 637 optional AuthenticateResponse authenticate = 3; |
| 628 // DEPRECATED - this field was never used in production. | |
| 629 // optional ClearUserDataResponse clear_user_data = 9; | |
| 630 optional GetUpdatesMetadataResponse stream_metadata = 10; | |
| 631 // If GetUpdatesStreamingResponse is contained in the ClientToServerResponse, | |
| 632 // none of the other fields (error_code and etc) will be set. | |
| 633 optional GetUpdatesStreamingResponse stream_data = 11; | |
| 634 | |
| 635 message Error { | |
| 636 optional SyncEnums.ErrorType error_type = 1 [default = UNKNOWN]; | |
| 637 optional string error_description = 2; | |
| 638 optional string url = 3; | |
| 639 optional SyncEnums.Action action = 4 [default = UNKNOWN_ACTION]; | |
| 640 | |
| 641 // Currently only meaningful if |error_type| is throttled. If this field | |
| 642 // is absent then the whole client (all datatypes) is throttled. | |
| 643 repeated int32 error_data_type_ids = 5; | |
| 644 } | |
| 645 | |
| 646 optional Error error = 13; | |
| 647 | 638 |
| 648 // Up until protocol_version 24, the default was SUCCESS which made it | 639 // Up until protocol_version 24, the default was SUCCESS which made it |
| 649 // impossible to add new enum values since older clients would parse any | 640 // impossible to add new enum values since older clients would parse any |
| 650 // out-of-range value as SUCCESS. Starting with 25, unless explicitly set, | 641 // out-of-range value as SUCCESS. Starting with 25, unless explicitly set, |
| 651 // the error_code will be UNKNOWN so that clients know when they're | 642 // the error_code will be UNKNOWN so that clients know when they're |
| 652 // out-of-date. Note also that when using protocol_version < 25, | 643 // out-of-date. Note also that when using protocol_version < 25, |
| 653 // TRANSIENT_ERROR is not supported. Instead, the server sends back a HTTP | 644 // TRANSIENT_ERROR is not supported. Instead, the server sends back a HTTP |
| 654 // 400 error code. This is deprecated now. | 645 // 400 error code. This is deprecated now. |
| 655 optional SyncEnums.ErrorType error_code = 4 [default = UNKNOWN]; | 646 optional SyncEnums.ErrorType error_code = 4 [default = UNKNOWN]; |
| 656 optional string error_message = 5; | 647 optional string error_message = 5; |
| 657 | 648 |
| 658 // Opaque store ID; if it changes, the contents of the client's cache | 649 // Opaque store ID; if it changes, the contents of the client's cache |
| 659 // is meaningless to this server. This happens most typically when | 650 // is meaningless to this server. This happens most typically when |
| 660 // you switch from one storage backend instance (say, a test instance) | 651 // you switch from one storage backend instance (say, a test instance) |
| 661 // to another (say, the official instance). | 652 // to another (say, the official instance). |
| 662 optional string store_birthday = 6; | 653 optional string store_birthday = 6; |
| 663 | 654 |
| 664 optional ClientCommand client_command = 7; | 655 optional ClientCommand client_command = 7; |
| 665 optional ProfilingData profiling_data = 8; | 656 optional ProfilingData profiling_data = 8; |
| 657 // DEPRECATED - this field was never used in production. | |
| 658 // optional ClearUserDataResponse clear_user_data = 9; | |
| 659 optional GetUpdatesMetadataResponse stream_metadata = 10; | |
| 660 // If GetUpdatesStreamingResponse is contained in the ClientToServerResponse, | |
| 661 // none of the other fields (error_code and etc) will be set. | |
| 662 optional GetUpdatesStreamingResponse stream_data = 11; | |
| 666 | 663 |
| 667 // The data types whose storage has been migrated. Present when the value of | 664 // The data types whose storage has been migrated. Present when the value of |
| 668 // error_code is MIGRATION_DONE. | 665 // error_code is MIGRATION_DONE. |
| 669 repeated int32 migrated_data_type_id = 12; | 666 repeated int32 migrated_data_type_id = 12; |
| 667 | |
| 668 message Error { | |
| 669 optional SyncEnums.ErrorType error_type = 1 [default = UNKNOWN]; | |
| 670 optional string error_description = 2; | |
| 671 optional string url = 3; | |
| 672 optional SyncEnums.Action action = 4 [default = UNKNOWN_ACTION]; | |
| 673 | |
| 674 // Currently only meaningful if |error_type| is throttled. If this field | |
| 675 // is absent then the whole client (all datatypes) is throttled. | |
| 676 repeated int32 error_data_type_ids = 5; | |
| 677 } | |
| 678 optional Error error = 13; | |
| 679 | |
| 680 optional GetEncryptionKeyResponse get_encryption_key = 14; | |
| 670 }; | 681 }; |
| 671 | 682 |
| OLD | NEW |