// Copyright 2018 The Fuchsia 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 PERIDOT_BIN_LEDGER_P2P_SYNC_PUBLIC_PAGE_COMMUNICATOR_H_
#define PERIDOT_BIN_LEDGER_P2P_SYNC_PUBLIC_PAGE_COMMUNICATOR_H_

#include "peridot/bin/ledger/p2p_sync/public/page_communicator.h"

#include <memory>

#include <lib/fxl/macros.h>
#include <lib/fxl/strings/string_view.h>

namespace p2p_sync {
// PageCommunicator handles page-level data transfer between peers.
class PageCommunicator {
 public:
  PageCommunicator() {}
  virtual ~PageCommunicator() {}

  // Start should be called at most once. It signals that this page is active on
  // this device.
  virtual void Start() = 0;

 private:
  FXL_DISALLOW_COPY_AND_ASSIGN(PageCommunicator);
};

}  // namespace p2p_sync

#endif  // PERIDOT_BIN_LEDGER_P2P_SYNC_PUBLIC_PAGE_COMMUNICATOR_H_
