chromium/services/network/trust_tokens/sqlite_trust_token_persister.h

// Copyright 2020 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

#ifndef SERVICES_NETWORK_TRUST_TOKENS_SQLITE_TRUST_TOKEN_PERSISTER_H_
#define SERVICES_NETWORK_TRUST_TOKENS_SQLITE_TRUST_TOKEN_PERSISTER_H_

#include <memory>

#include "base/files/file_path.h"
#include "base/task/task_traits.h"
#include "components/sqlite_proto/key_value_data.h"
#include "services/network/trust_tokens/proto/storage.pb.h"
#include "services/network/trust_tokens/suitable_trust_token_origin.h"
#include "services/network/trust_tokens/trust_token_database_owner.h"
#include "services/network/trust_tokens/trust_token_persister.h"
#include "sql/database.h"

namespace base {
class SequencedTaskRunner;
}  // namespace base

namespace network {

// An SQLiteTrustTokenPersister implements low-level get and put operations on
// Trust Tokens types by managing a collection of tables in an underlying SQLite
// database.
//
// It uses the //components/sqlite_proto database management
// utility to avoid dealing with too much database logic directly.
class SQLiteTrustTokenPersister : public TrustTokenPersister {};

}  // namespace network

#endif  // SERVICES_NETWORK_TRUST_TOKENS_SQLITE_TRUST_TOKEN_PERSISTER_H_