blob: 257f6a778a09044bc139778cfc42d0506ecff02d [file] [log] [blame]
// Copyright 2016 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.
#include "peridot/bin/ledger/storage/fake/fake_journal.h"
#include <string>
#include <lib/fit/function.h>
namespace storage {
namespace fake {
FakeJournal::FakeJournal(FakeJournalDelegate* delegate) : delegate_(delegate) {}
FakeJournal::~FakeJournal() {}
void FakeJournal::Commit(
fit::function<void(Status, std::unique_ptr<const storage::Commit>)>
callback) {
delegate_->Commit(std::move(callback));
}
Status FakeJournal::Rollback() { return delegate_->Rollback(); }
void FakeJournal::Put(convert::ExtendedStringView key,
ObjectIdentifier object_identifier, KeyPriority priority,
fit::function<void(Status)> callback) {
callback(delegate_->SetValue(key, std::move(object_identifier), priority));
}
void FakeJournal::Delete(convert::ExtendedStringView key,
fit::function<void(Status)> callback) {
callback(delegate_->Delete(key));
}
void FakeJournal::Clear(fit::function<void(Status)> callback) {
callback(delegate_->Clear());
}
const JournalId& FakeJournal::GetId() const { return delegate_->GetId(); }
} // namespace fake
} // namespace storage