// 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_METRICS_LOG_DECODER_H_
#define COMPONENTS_METRICS_LOG_DECODER_H_

#include <string>

namespace google {
namespace protobuf {

class MessageLite;

}  // namespace protobuf
}  // namespace google

namespace metrics {

// Other modules can call this function instead of directly calling gzip. This
// prevents other modules from having to depend on zlib, or being aware of
// metrics' use of gzip compression, which is a metrics implementation detail.
// Returns true on success, false on failure.
bool DecodeLogData(const std::string& compressed_log_data,
                   std::string* log_data);

// Decodes |compressed_log_data| and populates |proto| with the decompressed log
// data. Returns true on success and false on failure.
bool DecodeLogDataToProto(const std::string& compressed_log_data,
                          google::protobuf::MessageLite* proto);

}  // namespace metrics

#endif  // COMPONENTS_METRICS_LOG_DECODER_H_
