// Copyright 2017 The Chromium Authors. All rights reserved. // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. #ifndef COMPONENTS_VARIATIONS_METRICS_H_ #define COMPONENTS_VARIATIONS_METRICS_H_ #include "build/build_config.h" namespace variations { #if defined(OS_ANDROID) // The result of importing a seed during Android first run. // Note: UMA histogram enum - don't re-order or remove entries. enum class FirstRunSeedImportResult { SUCCESS, FAIL_NO_CALLBACK, FAIL_NO_FIRST_RUN_SEED, FAIL_STORE_FAILED, FAIL_INVALID_RESPONSE_DATE, ENUM_SIZE }; #endif // OS_ANDROID // The result of attempting to load a variations seed on startup. // Note: UMA histogram enum - don't re-order or remove entries. // GENERATED_JAVA_ENUM_PACKAGE: org.chromium.components.variations enum class LoadSeedResult { SUCCESS, EMPTY, CORRUPT, INVALID_SIGNATURE, CORRUPT_BASE64, CORRUPT_PROTOBUF, CORRUPT_GZIP, LOAD_TIMED_OUT, LOAD_INTERRUPTED, LOAD_OTHER_FAILURE, ENUM_SIZE }; // The result of attempting to store a variations seed received from the server. // Note: UMA histogram enum - don't re-order or remove entries. enum class StoreSeedResult { SUCCESS, FAILED_EMPTY, FAILED_PARSE, FAILED_SIGNATURE, FAILED_GZIP, // DELTA_COUNT is not so much a result of the seed store, but rather counting // the number of delta-compressed seeds the SeedStore() function saw. Kept in // the same histogram for convenience of comparing against the other values. DELTA_COUNT, FAILED_DELTA_READ_SEED, FAILED_DELTA_APPLY, FAILED_DELTA_STORE, FAILED_UNGZIP, FAILED_EMPTY_GZIP_CONTENTS, FAILED_UNSUPPORTED_SEED_FORMAT, ENUM_SIZE }; // The result of updating the date associated with an existing stored variations // seed. // Note: UMA histogram enum - don't re-order or remove entries. enum class UpdateSeedDateResult { NO_OLD_DATE, NEW_DATE_IS_OLDER, SAME_DAY, NEW_DAY, ENUM_SIZE }; // The result of verifying a variation seed's signature. // Note: UMA histogram enum - don't re-order or remove entries. enum class VerifySignatureResult { MISSING_SIGNATURE, DECODE_FAILED, INVALID_SIGNATURE, INVALID_SEED, VALID_SIGNATURE, ENUM_SIZE }; #if defined(OS_ANDROID) // Records the result of importing a seed during Android first run. void RecordFirstRunSeedImportResult(FirstRunSeedImportResult result); #endif // OS_ANDROID // Records the result of attempting to load the latest variations seed on // startup. void RecordLoadSeedResult(LoadSeedResult state); // Records the result of attempting to load the safe variations seed on startup. void RecordLoadSafeSeedResult(LoadSeedResult state); // Records the result of attempting to store a variations seed received from the // server. void RecordStoreSeedResult(StoreSeedResult result); } // namespace variations #endif // COMPONENTS_VARIATIONS_METRICS_H_