blob: 43550dee1e10bc95a1990d5567b365f32f4cb7a7 [file] [log] [blame]
// 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.
//
// WARNING: This file is machine generated by fidlmerge.
#ifndef SRC_LEDGER_BIN_FIDL_SYNCABLE_SYNCABLE_FIDL_TEST_H_
#define SRC_LEDGER_BIN_FIDL_SYNCABLE_SYNCABLE_FIDL_TEST_H_
#include <fuchsia/ledger/syncabletest/cpp/fidl.h>
#include <lib/fidl/cpp/interface_request.h>
#include "src/ledger/bin/fidl/syncable/syncable_binding.h"
#include "src/ledger/bin/public/status.h"
namespace fuchsia {
namespace ledger {
namespace syncabletest {
class SyncableTestSyncableDelegate {
public:
using FidlInterface = SyncableTest;
class Impl;
virtual ~SyncableTestSyncableDelegate() = default;
virtual void NoResponse(::fit::function<void(::ledger::Status)> callback) = 0;
virtual void NoResponseWithParameter(int8_t input,
::fit::function<void(::ledger::Status)> callback) = 0;
virtual void EmptyResponse(::fit::function<void(::ledger::Status)> callback) = 0;
virtual void EmptyResponseWithParameter(int8_t input,
::fit::function<void(::ledger::Status)> callback) = 0;
virtual void NotEmptyResponse(::fit::function<void(::ledger::Status, int8_t)> callback) = 0;
virtual void NotEmptyResponseWithParameter(
int8_t input, ::fit::function<void(::ledger::Status, int8_t)> callback) = 0;
};
class SyncableTestSyncableDelegate::Impl : public SyncableTest {
public:
static constexpr char kInterfaceName[] = "SyncableTest";
Impl(SyncableTestSyncableDelegate* delegate,
::ledger::SyncableBinding<SyncableTestSyncableDelegate>* binding)
: delegate_(delegate), binding_(binding) {}
private:
void NoResponse() override { delegate_->NoResponse(binding_->NewErrorCallback("NoResponse")); }
void NoResponseWithParameter(int8_t input) override {
delegate_->NoResponseWithParameter(::std::move(input),
binding_->NewErrorCallback("NoResponseWithParameter"));
}
void EmptyResponse(::fit::function<void()> callback) override {
delegate_->EmptyResponse(binding_->WrapOperation("EmptyResponse", ::std::move(callback)));
}
void EmptyResponseWithParameter(int8_t input, ::fit::function<void()> callback) override {
delegate_->EmptyResponseWithParameter(
::std::move(input),
binding_->WrapOperation("EmptyResponseWithParameter", ::std::move(callback)));
}
void NotEmptyResponse(::fit::function<void(int8_t)> callback) override {
delegate_->NotEmptyResponse(binding_->WrapOperation("NotEmptyResponse", ::std::move(callback)));
}
void NotEmptyResponseWithParameter(int8_t input,
::fit::function<void(int8_t)> callback) override {
delegate_->NotEmptyResponseWithParameter(
::std::move(input),
binding_->WrapOperation("NotEmptyResponseWithParameter", ::std::move(callback)));
}
void Sync(::fit::function<void()> callback) override { binding_->Sync(::std::move(callback)); }
SyncableTestSyncableDelegate* delegate_;
::ledger::SyncableBinding<SyncableTestSyncableDelegate>* binding_;
};
} // namespace syncabletest
} // namespace ledger
} // namespace fuchsia
#endif // SRC_LEDGER_BIN_FIDL_SYNCABLE_SYNCABLE_FIDL_TEST_H_