17 Vault* ParentVault =
nullptr;
519 bool SaveToFile(
const std::string&
fileName,
const std::vector<std::string>&
keys = {},
const std::string& separator =
",",
const bool& isSaveKey =
true)
const noexcept;
Iterator class for all library maps.
Definition Map.h:18
A class for storing data with the ability to quickly search for a variety of different keys of any ty...
Definition Vault.h:35
A class for storing data inside Vault.
Definition VaultRecord.h:18
A class that provides access to data inside Vault.
Definition VaultRecordRef.h:21
A class for storing query results.
Definition VaultRecordSet.h:14
bool CheckRecord(const VaultRecordRef &ref) const noexcept
A method for checking for an entry in set.
Definition VaultRecordSet.cpp:231
VaultOperationResult GetRecord(const std::string &key, const T &keyValue, VaultRecordRef &vaultRecordRef) const noexcept
The method for getting a reference to the data inside Vault.
Definition VaultRecordSet.hpp:90
bool IsKeyExist(const std::string &key) const noexcept
The method for getting a default key value.
Definition VaultRecordSet.cpp:152
friend VaultOperationResult Intersection(const VaultRecordSet &a, const VaultRecordSet &b, VaultRecordSet &res) noexcept
Making Intersection function friendly.
Definition VaultRecordSet.cpp:616
void SortBy(const std::string &key, F &&func, const bool &isReverse=false, const std::size_t &amountOfRecords=-1) const noexcept
Method for handle sorted records.
Definition VaultRecordSet.hpp:307
VaultOperationResult RequestInterval(const std::string &key, const T &beginKeyValue, const T &endKeyValue, VaultRecordSet &vaultRecordSet, const bool &isIncludeBeginKeyValue=true, const bool &isIncludeEndKeyValue=true, const std::size_t &amountOfRecords=-1, const std::function< bool(const VaultRecordRef &ref)> &requestPredicat=DefaultRequestPredicat) const noexcept
The method for getting the result of the request.
Definition VaultRecordSet.hpp:186
std::size_t Size() const noexcept
Method for getting the number of records.
Definition VaultRecordSet.cpp:288
bool SaveToFile(const std::string &fileName, const std::vector< std::string > &keys={}, const std::string &separator=",", const bool &isSaveKey=true) const noexcept
A method for saving data to a table file. The file format is csv.
Definition VaultRecordSet.cpp:535
VaultOperationResult RequestGreaterOrEqual(const std::string &key, const T &keyValue, VaultRecordSet &vaultRecordSet, const std::size_t &amountOfRecords=-1, const std::function< bool(const VaultRecordRef &ref)> &requestPredicat=DefaultRequestPredicat) const noexcept
A method for getting all records that have a value greater than or equal to keyValue stored by the ke...
Definition VaultRecordSet.hpp:159
VaultOperationResult Intersect(const VaultRecordSet &a) noexcept
A method to delete all records from this that are not in a.
Definition VaultRecordSet.cpp:485
VaultOperationResult Request(const VaultRequest< Type > &request, VaultRecordSet &vaultRecordSet) const
A method for complex requests.
Definition VaultRecordSet.hpp:199
VaultOperationResult RequestLessOrEqual(const std::string &key, const T &keyValue, VaultRecordSet &vaultRecordSet, const std::size_t &amountOfRecords=-1, const std::function< bool(const VaultRecordRef &ref)> &requestPredicat=DefaultRequestPredicat) const noexcept
A method for getting all records that have a value less than or equal to keyValue stored by the key k...
Definition VaultRecordSet.hpp:177
std::vector< std::string > GetKeys() const noexcept
The method for getting all the keys.
Definition VaultRecordSet.cpp:303
VaultRecordSet() noexcept
Default constructor.
Definition VaultRecordSet.cpp:77
void Print(const bool &isPrintId=false, const std::size_t &amountOfRecords=-1, const std::string &primaryKey="", const bool &isReverse=false, const std::list< std::string > &keys={}) const noexcept
A method for displaying the contents of a VaultRecordSet as a table on the screen.
Definition VaultRecordSet.cpp:369
friend VaultOperationResult Union(const VaultRecordSet &a, const VaultRecordSet &b, VaultRecordSet &res) noexcept
Making Union function friendly.
Definition VaultRecordSet.cpp:581
VaultOperationResult RequestLess(const std::string &key, const T &keyValue, VaultRecordSet &vaultRecordSet, const std::size_t &amountOfRecords=-1, const std::function< bool(const VaultRecordRef &ref)> &requestPredicat=DefaultRequestPredicat) const noexcept
A method for getting all records that have a value less than keyValue stored by the key key.
Definition VaultRecordSet.hpp:168
VaultOperationResult Exclude(const VaultRecordSet &a) noexcept
A method for deleting all records from this that are also in a.
Definition VaultRecordSet.cpp:435
VaultOperationResult RequestEqual(const std::string &key, const T &keyValue, VaultRecordSet &vaultRecordSet, const std::size_t &amountOfRecords=-1, const std::function< bool(const VaultRecordRef &ref)> &requestPredicat=DefaultRequestPredicat) const noexcept
A method for getting all records that have a value equal to keyValue stored by the key key.
Definition VaultRecordSet.hpp:141
void Reset() noexcept
Resets the object to its initial state.
Definition VaultRecordSet.cpp:244
bool GetKeyType(const std::string &key, std::type_index &keyType) const noexcept
The method for getting a key type.
Definition VaultRecordSet.cpp:164
std::string GetParentVaultUniqueId() const noexcept
Method for getting parent vault unique id.
Definition VaultRecordSet.cpp:138
friend VaultRecord
Make VaultRecord class friend.
Definition VaultRecordSet.h:73
~VaultRecordSet() noexcept
Destructor.
Definition VaultRecordSet.cpp:550
std::vector< std::string > GetUniqueKeys() const noexcept
The method for getting the unique keys.
Definition VaultRecordSet.cpp:315
VaultOperationResult RequestGreater(const std::string &key, const T &keyValue, VaultRecordSet &vaultRecordSet, const std::size_t &amountOfRecords=-1, const std::function< bool(const VaultRecordRef &ref)> &requestPredicat=DefaultRequestPredicat) const noexcept
A method for getting all records that have a value greater than keyValue stored by the key key.
Definition VaultRecordSet.hpp:150
friend Vault
Make Vault class friend.
Definition VaultRecordSet.h:70
void Clear() noexcept
Clear VaultRecordSet.
Definition VaultRecordSet.cpp:259
std::vector< VaultRecordRef > GetSortedRecords(const std::string &key, const bool &isReverse=false, const std::size_t &amountOfRecords=-1) const noexcept
Method for getting sorted records.
Definition VaultRecordSet.cpp:327
VaultOperationResult RemoveRecords(const std::string &key, const T &keyValue, const std::size_t &amountOfRecords=-1) noexcept
The method for remove records using key and value.
Definition VaultRecordSet.hpp:280
VaultOperationResult GetRecords(const std::string &key, const T &keyValue, std::vector< VaultRecordRef > &recordsRefs, const std::size_t &amountOfRecords=-1) const noexcept
The method for getting a vector of references to the data inside Vault.
Definition VaultRecordSet.hpp:115
VaultOperationResult Join(const VaultRecordSet &a) noexcept
A method for adding all records from a to this.
Definition VaultRecordSet.cpp:383
VaultOperationResult AddRecord(const VaultRecordRef &recordRef) noexcept
Method for adding a record to VaultRecordSet.
Definition VaultRecordSet.cpp:179
bool GetIsParentVaultValid() const noexcept
Method for checking the validity of the parent Vault.
Definition VaultRecordSet.cpp:131
std::vector< std::vector< std::pair< std::string, std::string > > > ToStrings() const noexcept
Method for convert vault record set to strings.
Definition VaultRecordSet.cpp:356
std::string ToJson(const bool &isFormat=false, const std::size_t &tabSize=2, const bool &isUseRecordTemplate=true, const std::string &recordTemplate="Record", const bool &isArray=false) const noexcept
Method for saving the contents of the VaultRecordSet in json.
Definition VaultRecordSet.cpp:342
VaultOperationResult GetKeyValue(const std::string &key, T &defaultKeyValue) const noexcept
The method for getting a default key value.
Definition VaultRecordSet.hpp:67
A class for requests to Vault.
Definition VaultRequest.h:16
Structure for storing the results of MVault operations.
Definition VaultOperationResult.h:44