class JournalEntryView

Defined at line 25 of file ../../src/storage/lib/vfs/cpp/journal/entry_view.h

A view into the filesystem journal entry, including the header and footer.

This class does not have ownership over the underlying buffer, instead, it merely provides a

basic mechanism to parse a view of the buffer which is owned elsewhere.

Public Methods

void JournalEntryView (storage::BlockBufferView view)

Creates a new entry view without modification.

Defined at line 25 of file ../../src/storage/lib/vfs/cpp/journal/entry_view.cc

void JournalEntryView (storage::BlockBufferView view, const std::vector<storage::BufferedOperation> & operations, uint64_t sequence_number)

Creates a new entry view which encodes the operations into the view on construction.

Asserts that |operations| is exactly the size of the journal entry.

Defined at line 29 of file ../../src/storage/lib/vfs/cpp/journal/entry_view.cc

const JournalHeaderView & header ()

Defined at line 37 of file ../../src/storage/lib/vfs/cpp/journal/entry_view.h

const JournalCommitBlock * footer ()

Defined at line 39 of file ../../src/storage/lib/vfs/cpp/journal/entry_view.h

zx::result<> DecodePayloadBlocks ()

Iterates through all blocks in the previously set entry, and resets all escaped blocks within

the constructor-provided buffer. On failure, does not modify underlying view.

Defined at line 65 of file ../../src/storage/lib/vfs/cpp/journal/entry_view.cc

uint32_t CalculateChecksum ()

Calculates the checksum of all blocks excluding the commit block.

Defined at line 85 of file ../../src/storage/lib/vfs/cpp/journal/entry_view.cc