CatapultServer  v0.5.0.1 (Elephant)
FileStateChangeStorage.h
Go to the documentation of this file.
1 
21 #pragma once
22 #include "catapult/io/Stream.h"
24 #include "catapult/functions.h"
25 #include <memory>
26 #include <vector>
27 
28 namespace catapult { namespace cache { class CacheChangesStorage; } }
29 
30 namespace catapult { namespace local {
31 
33  using CacheChangesStorages = std::vector<std::unique_ptr<const cache::CacheChangesStorage>>;
34 
38  std::unique_ptr<subscribers::StateChangeSubscriber> CreateFileStateChangeStorage(
39  std::unique_ptr<io::OutputStream>&& pOutputStream,
40  const supplier<CacheChangesStorages>& cacheChangesStoragesSupplier);
41 }}
RegisterExtension
PLUGIN_API void RegisterExtension(catapult::extensions::ProcessBootstrapper &bootstrapper)
Entry point for registering a dynamic extension module with bootstrapper.
Definition: FileSpoolingExtension.cpp:60
FileQueue.h
catapult::io::Write8
void Write8(TIo &output, uint8_t value)
Writes value into output.
Definition: PodIoUtils.h:54
FilePtChangeStorage.h
catapult::config::CatapultDataDirectoryPreparer::Prepare
static CatapultDataDirectory Prepare(const boost::filesystem::path &directory)
Creates a data directory around directory.
Definition: CatapultDataDirectory.h:95
catapult::filespooling::CreateFileUtChangeStorage
std::unique_ptr< cache::UtChangeSubscriber > CreateFileUtChangeStorage(std::unique_ptr< io::OutputStream > &&pOutputStream)
Creates an unconfirmed transactions change storage around pOutputStream.
Definition: FileUtChangeStorage.cpp:59
functions.h
catapult::utils::to_underlying_type
constexpr std::underlying_type_t< TEnum > to_underlying_type(TEnum value)
Converts a strongly typed enumeration value to its underlying integral value.
Definition: Casting.h:37
FileUtChangeStorage.h
catapult::filespooling::CreateFilePtChangeStorage
std::unique_ptr< cache::PtChangeSubscriber > CreateFilePtChangeStorage(std::unique_ptr< io::OutputStream > &&pOutputStream)
Creates a partial transactions change storage around pOutputStream.
Definition: FilePtChangeStorage.cpp:69
CacheChangesStorage.h
m_pOutputStream
std::unique_ptr< io::OutputStream > m_pOutputStream
Definition: FileStateChangeStorage.cpp:72
CatapultDataDirectory.h
catapult::supplier
std::function< T()> supplier
A (stateless) supplier function.
Definition: functions.h:39
StateChangeInfo.h
FileTransactionStatusStorage.h
PLUGIN_API
#define PLUGIN_API
Definition: plugins.h:30
catapult::subscribers::StateChangeOperationType::State_Change
State change.
catapult::local::CreateFileStateChangeStorage
std::unique_ptr< subscribers::StateChangeSubscriber > CreateFileStateChangeStorage(std::unique_ptr< io::OutputStream > &&pOutputStream, const supplier< CacheChangesStorages > &cacheChangesStoragesSupplier)
Definition: FileStateChangeStorage.cpp:77
catapult::io::Write
void Write(TIo &output, const utils::BasicBaseValue< TValue, TTag, TBaseValue > &value)
Writes base value into output.
Definition: PodIoUtils.h:30
catapult::io::Write64
void Write64(TIo &output, uint64_t value)
Writes value into output.
Definition: PodIoUtils.h:36
m_cacheChangesStoragesSupplier
supplier< CacheChangesStorages > m_cacheChangesStoragesSupplier
Definition: FileStateChangeStorage.cpp:73
catapult::subscribers::StateChangeOperationType
StateChangeOperationType
State change operation type.
Definition: SubscriberOperationTypes.h:48
catapult::subscribers::StateChangeOperationType::Score_Change
Score change.
SubscriberOperationTypes.h
Casting.h
ChainScore
model::ChainScore ChainScore
Definition: tools/health/main.cpp:43
catapult
Definition: AddressExtractionExtension.cpp:28
catapult::extensions::ProcessBootstrapper
Process bootstrapper.
Definition: ProcessBootstrapper.h:42
m_dataDirectory
config::CatapultDataDirectory m_dataDirectory
Definition: FileSpoolingExtension.cpp:44
PodIoUtils.h
FileStateChangeStorage.h
catapult::filespooling::CreateFileTransactionStatusStorage
std::unique_ptr< subscribers::TransactionStatusSubscriber > CreateFileTransactionStatusStorage(std::unique_ptr< io::OutputStream > &&pOutputStream)
Creates a transaction status storage around pOutputStream.
Definition: FileTransactionStatusStorage.cpp:56
catapult::filespooling::CreateFileBlockChangeStorage
std::unique_ptr< io::BlockChangeSubscriber > CreateFileBlockChangeStorage(std::unique_ptr< io::OutputStream > &&pOutputStream)
Creates a block change storage around pOutputStream.
Definition: FileBlockChangeStorage.cpp:60
Stream.h
FileBlockChangeStorage.h
ProcessBootstrapper.h
StateChangeSubscriber.h
catapult::local::CacheChangesStorages
std::vector< std::unique_ptr< const cache::CacheChangesStorage > > CacheChangesStorages
Vector of cache changes storage unique pointers.
Definition: FileStateChangeStorage.h:33