4#include <xrpl/protocol/STLedgerEntry.h>
5#include <xrpl/protocol/STParsedJSON.h>
6#include <xrpl/protocol/jss.h>
7#include <xrpl/protocol_autogen/LedgerEntryBase.h>
8#include <xrpl/protocol_autogen/LedgerEntryBuilderBase.h>
9#include <xrpl/json/json_value.h>
53 SF_ACCOUNT::type::value_type
56 return this->
sle_->at(sfAccount);
68 return this->
sle_->at(sfDIDDocument);
80 return this->
sle_->isFieldPresent(sfDIDDocument);
92 return this->
sle_->at(sfURI);
104 return this->
sle_->isFieldPresent(sfURI);
116 return this->
sle_->at(sfData);
128 return this->
sle_->isFieldPresent(sfData);
136 SF_UINT64::type::value_type
139 return this->
sle_->at(sfOwnerNode);
147 SF_UINT256::type::value_type
150 return this->
sle_->at(sfPreviousTxnID);
158 SF_UINT32::type::value_type
161 return this->
sle_->at(sfPreviousTxnLgrSeq);
198 if (sle->at(sfLedgerEntryType) != ltDID)
225 object_[sfDIDDocument] = value;
269 object_[sfPreviousTxnID] = value;
280 object_[sfPreviousTxnLgrSeq] = value;
Builder for DID ledger entries.
DIDBuilder & setURI(std::decay_t< typename SF_VL::type::value_type > const &value)
Set sfURI (soeOPTIONAL)
DIDBuilder & setOwnerNode(std::decay_t< typename SF_UINT64::type::value_type > const &value)
Set sfOwnerNode (soeREQUIRED)
DIDBuilder & setPreviousTxnLgrSeq(std::decay_t< typename SF_UINT32::type::value_type > const &value)
Set sfPreviousTxnLgrSeq (soeREQUIRED)
DIDBuilder & setPreviousTxnID(std::decay_t< typename SF_UINT256::type::value_type > const &value)
Set sfPreviousTxnID (soeREQUIRED)
DIDBuilder(std::decay_t< typename SF_ACCOUNT::type::value_type > const &account, std::decay_t< typename SF_UINT64::type::value_type > const &ownerNode, std::decay_t< typename SF_UINT256::type::value_type > const &previousTxnID, std::decay_t< typename SF_UINT32::type::value_type > const &previousTxnLgrSeq)
Construct a new DIDBuilder with required fields.
DIDBuilder & setData(std::decay_t< typename SF_VL::type::value_type > const &value)
Set sfData (soeOPTIONAL)
DIDBuilder & setDIDDocument(std::decay_t< typename SF_VL::type::value_type > const &value)
Set sfDIDDocument (soeOPTIONAL)
DID build(uint256 const &index)
Build and return the completed DID wrapper.
DIDBuilder(std::shared_ptr< SLE const > sle)
Construct a DIDBuilder from an existing SLE object.
DIDBuilder & setAccount(std::decay_t< typename SF_ACCOUNT::type::value_type > const &value)
Ledger entry-specific field setters.
DID(std::shared_ptr< SLE const > sle)
Construct a DID ledger entry wrapper from an existing SLE object.
SF_ACCOUNT::type::value_type getAccount() const
Get sfAccount (soeREQUIRED)
static constexpr LedgerEntryType entryType
protocol_autogen::Optional< SF_VL::type::value_type > getURI() const
Get sfURI (soeOPTIONAL)
bool hasData() const
Check if sfData is present.
protocol_autogen::Optional< SF_VL::type::value_type > getDIDDocument() const
Get sfDIDDocument (soeOPTIONAL)
SF_UINT256::type::value_type getPreviousTxnID() const
Get sfPreviousTxnID (soeREQUIRED)
bool hasDIDDocument() const
Check if sfDIDDocument is present.
SF_UINT32::type::value_type getPreviousTxnLgrSeq() const
Get sfPreviousTxnLgrSeq (soeREQUIRED)
bool hasURI() const
Check if sfURI is present.
SF_UINT64::type::value_type getOwnerNode() const
Get sfOwnerNode (soeREQUIRED)
protocol_autogen::Optional< SF_VL::type::value_type > getData() const
Get sfData (soeOPTIONAL)
Base class for type-safe ledger entry wrappers.
std::shared_ptr< SLE const > sle_
The underlying serialized ledger entry being wrapped.
Base class for all ledger entry builders.
LedgerEntryType
Identifiers for on-ledger objects.