Home | History | Annotate | Download | only in protocol
      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
      3 // found in the LICENSE file.
      4 //
      5 // Sync protocol datatype extension for autofill.
      6 
      7 // Update proto_value_conversions{.h,.cc,_unittest.cc} if you change
      8 // any fields in this file.
      9 
     10 syntax = "proto2";
     11 
     12 option optimize_for = LITE_RUNTIME;
     13 option retain_unknown_fields = true;
     14 
     15 package sync_pb;
     16 
     17 // Properties of autofill sync objects.
     18 
     19 // An AutofillProfile.
     20 message AutofillProfileSpecifics {
     21   optional string guid = 15;
     22   optional string origin = 16;
     23 
     24   // Contact info.
     25   repeated string name_first = 2;
     26   repeated string name_middle = 3;
     27   repeated string name_last = 4;
     28   repeated string name_full = 21;
     29   repeated string email_address = 5;
     30   optional string company_name = 6;
     31 
     32   // Address.
     33   optional string address_home_line1 = 7;
     34   optional string address_home_line2 = 8;
     35   optional string address_home_city = 9;
     36   optional string address_home_state = 10;
     37   optional string address_home_zip = 11;
     38   optional string address_home_country = 12;
     39 
     40   // Additional address fields for i18n.
     41   optional string address_home_street_address = 17;
     42   optional string address_home_sorting_code = 18;
     43   optional string address_home_dependent_locality = 19;
     44   optional string address_home_language_code = 20;
     45 
     46   // Phone.
     47   repeated string phone_home_whole_number = 13;
     48 
     49   // Deprecated.
     50   optional string label = 1 [deprecated=true];
     51   optional string phone_fax_whole_number = 14 [deprecated=true];
     52 }
     53 
     54 message AutofillSpecifics {
     55   // If any of these 3 fields are present, then all 3 should be, and it implies
     56   // that this entity represents a classic autofill object.  In this case,
     57   // none of the autofill++ objects below should be present.
     58   optional string name = 1;
     59   optional string value = 2;
     60   repeated int64 usage_timestamp = 3;
     61 
     62   // An autofill++ profile object.  If present, indicates this entity
     63   // represents an AutofillProfile exclusively, and no other fields (such as
     64   // name/value or credit_card) should be present.
     65   optional AutofillProfileSpecifics profile = 4;
     66 
     67   // Obsolete credit card fields.
     68   // optional bytes deprecated_encrypted_credit_card = 5;
     69   // optional AutofillCreditCardSpecifics deprecated_credit_card = 6;
     70 }
     71