1 // Copyright 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 #ifndef SYNC_PROTOCOL_PROTO_ENUM_CONVERSIONS_H_ 6 #define SYNC_PROTOCOL_PROTO_ENUM_CONVERSIONS_H_ 7 8 // Keep this file in sync with the .proto files in this directory. 9 10 #include "sync/base/sync_export.h" 11 #include "sync/protocol/app_list_specifics.pb.h" 12 #include "sync/protocol/app_specifics.pb.h" 13 #include "sync/protocol/client_debug_info.pb.h" 14 #include "sync/protocol/session_specifics.pb.h" 15 #include "sync/protocol/sync.pb.h" 16 17 // Utility functions to get the string equivalent for some sync proto 18 // enums. 19 20 namespace syncer { 21 22 // The returned strings (which don't have to be freed) are in ASCII. 23 // The result of passing in an invalid enum value is undefined. 24 25 SYNC_EXPORT_PRIVATE const char* GetAppListItemTypeString( 26 sync_pb::AppListSpecifics::AppListItemType item_type); 27 28 SYNC_EXPORT_PRIVATE const char* GetBrowserTypeString( 29 sync_pb::SessionWindow::BrowserType browser_type); 30 31 SYNC_EXPORT_PRIVATE const char* GetPageTransitionString( 32 sync_pb::SyncEnums::PageTransition page_transition); 33 34 SYNC_EXPORT_PRIVATE const char* GetPageTransitionRedirectTypeString( 35 sync_pb::SyncEnums::PageTransitionRedirectType 36 redirect_type); 37 38 SYNC_EXPORT const char* GetUpdatesSourceString( 39 sync_pb::GetUpdatesCallerInfo::GetUpdatesSource updates_source); 40 41 SYNC_EXPORT const char* GetUpdatesOriginString( 42 sync_pb::SyncEnums::GetUpdatesOrigin origin); 43 44 SYNC_EXPORT_PRIVATE const char* GetResponseTypeString( 45 sync_pb::CommitResponse::ResponseType response_type); 46 47 SYNC_EXPORT_PRIVATE const char* GetErrorTypeString( 48 sync_pb::SyncEnums::ErrorType error_type); 49 50 SYNC_EXPORT_PRIVATE const char* GetActionString( 51 sync_pb::SyncEnums::Action action); 52 53 SYNC_EXPORT_PRIVATE const char* GetLaunchTypeString( 54 sync_pb::AppSpecifics::LaunchType launch_type); 55 56 57 const char* GetDeviceTypeString(sync_pb::SyncEnums::DeviceType device_type); 58 59 const char* GetFaviconTypeString(sync_pb::SessionTab::FaviconType favicon_type); 60 61 const char* PassphraseTypeString(sync_pb::NigoriSpecifics::PassphraseType type); 62 63 const char* SingletonDebugEventTypeString( 64 sync_pb::SyncEnums::SingletonDebugEventType type); 65 66 const char* GetBlockedStateString(sync_pb::TabNavigation::BlockedState state); 67 68 } // namespace syncer 69 70 #endif // SYNC_PROTOCOL_PROTO_ENUM_CONVERSIONS_H_ 71