blob: 7ff7c8b3030b04c0b31aafccecfe2e6624479e4d [file] [log] [blame]
// Copyright 2015 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 SERVICES_REAPER_TRANSFER_BINDING_H_
#define SERVICES_REAPER_TRANSFER_BINDING_H_
#include "base/basictypes.h"
#include "mojo/public/cpp/bindings/interface_request.h"
#include "mojo/public/cpp/bindings/strong_binding.h"
#include "services/reaper/reaper.mojom.h"
#include "services/reaper/transfer.mojom.h"
namespace reaper {
class ReaperImpl;
class TransferBinding : public Transfer {
public:
TransferBinding(uint32 node_id,
ReaperImpl* impl,
mojo::InterfaceRequest<Transfer> request);
protected:
~TransferBinding() override;
private:
// Transfer
void Complete(uint64 app_secret, uint32 node_id) override;
void Ping(const mojo::Closure& callback) override;
uint32 node_id_;
ReaperImpl* impl_;
mojo::StrongBinding<Transfer> binding_;
};
} // namespace reaper
#endif // SERVICES_REAPER_TRANSFER_BINDING_H_