• Design
  • API Reference
  • Changelog
  • Contribute
Show / Hide Table of Contents
  • Libplanet
    • Address
    • AddressExtension
    • ByteUtil
    • Hashcash
    • Hashcash.Stamp
    • HashDigest<T>
    • HashDigestExtension
    • Nonce
  • Libplanet.Action
    • AccountStateGetter
    • ActionEvaluation
    • ActionTypeAttribute
    • AddressStateMap
    • IAccountStateDelta
    • IAction
    • IActionContext
    • IRandom
    • MissingActionTypeException
    • PolymorphicAction<T>
  • Libplanet.Blockchain
    • BlockChain<T>
    • IncompleteBlockStatesException
    • MineBlockEventArgs<T>
  • Libplanet.Blockchain.Policies
    • BlockPolicy<T>
    • BlockPolicyExtension
    • IBlockPolicy<T>
  • Libplanet.Blocks
    • Block<T>
    • InvalidBlockDifficultyException
    • InvalidBlockException
    • InvalidBlockHashException
    • InvalidBlockIndexException
    • InvalidBlockNonceException
    • InvalidBlockPreviousHashException
    • InvalidBlockTimestampException
  • Libplanet.Crypto
    • InvalidCiphertextException
    • PrivateKey
    • PublicKey
    • SymmetricKey
  • Libplanet.Net
    • ActionExecutionState
    • BlockDownloadState
    • BlockStateDownloadState
    • DifferentAppProtocolVersionException
    • DifferentProtocolVersionEventArgs
    • IceServer
    • IceServerException
    • InvalidMessageException
    • NoSwarmContextException
    • Peer
    • PeerNotFoundException
    • PeerSetDelta
    • PreloadState
    • StateReferenceDownloadState
    • Swarm<T>
    • SwarmException
  • Libplanet.Serialization
    • BencodexFormatter<T>
    • SerializationInfoExtension
  • Libplanet.Store
    • BaseIndex<TKey, TVal>
    • BaseStore
    • BlockSet<T>
    • IStore
    • LiteDBStore
    • NamespaceNotFoundException
    • StoreExtension
    • TransactionSet<T>
  • Libplanet.Tx
    • InvalidTxException
    • InvalidTxIdException
    • InvalidTxNonceException
    • InvalidTxPublicKeyException
    • InvalidTxSignatureException
    • InvalidTxUpdatedAddressesException
    • Transaction<T>
    • TxId
    • UnexpectedlyTerminatedTxRehearsalException

Class LiteDBStore

IStore implementation using LiteDB.

Inheritance
Object
BaseStore
LiteDBStore
Implements
IStore
IDisposable
Inherited Members
BaseStore.GetBlock<T>(HashDigest<SHA256>)
BaseStore.GetBlockIndex(HashDigest<SHA256>)
Object.Equals(Object)
Object.Equals(Object, Object)
Object.GetHashCode()
Object.GetType()
Object.MemberwiseClone()
Object.ReferenceEquals(Object, Object)
Object.ToString()
Namespace: Libplanet.Store
Assembly: Libplanet.dll
Syntax
public class LiteDBStore : BaseStore, IStore, IDisposable

Constructors

| Improve this Doc View Source

LiteDBStore(String, Boolean, Int32, Boolean, Boolean)

Creates a new LiteDBStore.

Declaration
public LiteDBStore(string path, bool journal = true, int cacheSize = 50000, bool flush = true, bool readOnly = false)
Parameters
Type Name Description
String path

The path where the storage file will be saved.

Boolean journal

Enables or disables double write check to ensure durability.

Int32 cacheSize

Max number of pages in the cache.

Boolean flush

Writes data direct to disk avoiding OS cache. Turned on by default.

Boolean readOnly

Opens database readonly mode. Turned off by default.

Methods

| Improve this Doc View Source

AppendIndex(String, HashDigest<SHA256>)

Declaration
public override long AppendIndex(string namespace, HashDigest<SHA256> hash)
Parameters
Type Name Description
String namespace
HashDigest<SHA256> hash
Returns
Type Description
Int64
Overrides
BaseStore.AppendIndex(String, HashDigest<SHA256>)
| Improve this Doc View Source

CountBlocks()

Declaration
public override long CountBlocks()
Returns
Type Description
Int64
Overrides
BaseStore.CountBlocks()
| Improve this Doc View Source

CountIndex(String)

Declaration
public override long CountIndex(string namespace)
Parameters
Type Name Description
String namespace
Returns
Type Description
Int64
Overrides
BaseStore.CountIndex(String)
| Improve this Doc View Source

CountTransactions()

Declaration
public override long CountTransactions()
Returns
Type Description
Int64
Overrides
BaseStore.CountTransactions()
| Improve this Doc View Source

DeleteBlock(HashDigest<SHA256>)

Declaration
public override bool DeleteBlock(HashDigest<SHA256> blockHash)
Parameters
Type Name Description
HashDigest<SHA256> blockHash
Returns
Type Description
Boolean
Overrides
BaseStore.DeleteBlock(HashDigest<SHA256>)
| Improve this Doc View Source

DeleteIndex(String, HashDigest<SHA256>)

Declaration
public override bool DeleteIndex(string namespace, HashDigest<SHA256> hash)
Parameters
Type Name Description
String namespace
HashDigest<SHA256> hash
Returns
Type Description
Boolean
Overrides
BaseStore.DeleteIndex(String, HashDigest<SHA256>)
| Improve this Doc View Source

DeleteNamespace(String)

Declaration
public override void DeleteNamespace(string namespace)
Parameters
Type Name Description
String namespace
Overrides
BaseStore.DeleteNamespace(String)
| Improve this Doc View Source

DeleteTransaction(TxId)

Declaration
public override bool DeleteTransaction(TxId txid)
Parameters
Type Name Description
TxId txid
Returns
Type Description
Boolean
Overrides
BaseStore.DeleteTransaction(TxId)
| Improve this Doc View Source

Dispose()

Declaration
public void Dispose()
| Improve this Doc View Source

ForkStateReferences<T>(String, String, Block<T>, IImmutableSet<Address>)

Declaration
public override void ForkStateReferences<T>(string srcNamespace, string destNamespace, Block<T> branchPoint, IImmutableSet<Address> addressesToStrip)

    where T : IAction, new()
Parameters
Type Name Description
String srcNamespace
String destNamespace
Block<T> branchPoint
IImmutableSet<Address> addressesToStrip
Type Parameters
Name Description
T
Overrides
Libplanet.Store.BaseStore.ForkStateReferences<T>(System.String, System.String, Libplanet.Blocks.Block<T>, System.Collections.Immutable.IImmutableSet<Libplanet.Address>)
| Improve this Doc View Source

GetBlockStates(HashDigest<SHA256>)

Declaration
public override AddressStateMap GetBlockStates(HashDigest<SHA256> blockHash)
Parameters
Type Name Description
HashDigest<SHA256> blockHash
Returns
Type Description
AddressStateMap
Overrides
BaseStore.GetBlockStates(HashDigest<SHA256>)
| Improve this Doc View Source

GetCanonicalNamespace()

Declaration
public override string GetCanonicalNamespace()
Returns
Type Description
String
Overrides
BaseStore.GetCanonicalNamespace()
| Improve this Doc View Source

GetTransaction<T>(TxId)

Declaration
public override Transaction<T> GetTransaction<T>(TxId txid)

    where T : IAction, new()
Parameters
Type Name Description
TxId txid
Returns
Type Description
Transaction<T>
Type Parameters
Name Description
T
Overrides
BaseStore.GetTransaction<T>(TxId)
| Improve this Doc View Source

GetTxNonce(String, Address)

Declaration
public override long GetTxNonce(string namespace, Address address)
Parameters
Type Name Description
String namespace
Address address
Returns
Type Description
Int64
Overrides
BaseStore.GetTxNonce(String, Address)
| Improve this Doc View Source

IncreaseTxNonce(String, Address, Int64)

Declaration
public override void IncreaseTxNonce(string namespace, Address signer, long delta = 1L)
Parameters
Type Name Description
String namespace
Address signer
Int64 delta
Overrides
BaseStore.IncreaseTxNonce(String, Address, Int64)
| Improve this Doc View Source

IndexBlockHash(String, Int64)

Declaration
public override HashDigest<SHA256>? IndexBlockHash(string namespace, long index)
Parameters
Type Name Description
String namespace
Int64 index
Returns
Type Description
Nullable<HashDigest<SHA256>>
Overrides
BaseStore.IndexBlockHash(String, Int64)
| Improve this Doc View Source

IterateBlockHashes()

Declaration
public override IEnumerable<HashDigest<SHA256>> IterateBlockHashes()
Returns
Type Description
IEnumerable<HashDigest<SHA256>>
Overrides
BaseStore.IterateBlockHashes()
| Improve this Doc View Source

IterateIndex(String, Int32, Nullable<Int32>)

Declaration
public override IEnumerable<HashDigest<SHA256>> IterateIndex(string namespace, int offset, int? limit)
Parameters
Type Name Description
String namespace
Int32 offset
Nullable<Int32> limit
Returns
Type Description
IEnumerable<HashDigest<SHA256>>
Overrides
BaseStore.IterateIndex(String, Int32, Nullable<Int32>)
| Improve this Doc View Source

IterateStagedTransactionIds(Boolean)

Declaration
public override IEnumerable<TxId> IterateStagedTransactionIds(bool toBroadcast)
Parameters
Type Name Description
Boolean toBroadcast
Returns
Type Description
IEnumerable<TxId>
Overrides
BaseStore.IterateStagedTransactionIds(Boolean)
| Improve this Doc View Source

IterateStateReferences(String, Address)

Declaration
public override IEnumerable<Tuple<HashDigest<SHA256>, long>> IterateStateReferences(string namespace, Address address)
Parameters
Type Name Description
String namespace
Address address
Returns
Type Description
IEnumerable<Tuple<HashDigest<SHA256>, Int64>>
Overrides
BaseStore.IterateStateReferences(String, Address)
| Improve this Doc View Source

IterateTransactionIds()

Declaration
public override IEnumerable<TxId> IterateTransactionIds()
Returns
Type Description
IEnumerable<TxId>
Overrides
BaseStore.IterateTransactionIds()
| Improve this Doc View Source

ListAddresses(String)

Declaration
public override IEnumerable<Address> ListAddresses(string namespace)
Parameters
Type Name Description
String namespace
Returns
Type Description
IEnumerable<Address>
Overrides
BaseStore.ListAddresses(String)
| Improve this Doc View Source

ListNamespaces()

Declaration
public override IEnumerable<string> ListNamespaces()
Returns
Type Description
IEnumerable<String>
Overrides
BaseStore.ListNamespaces()
| Improve this Doc View Source

ListTxNonces(String)

Declaration
public override IEnumerable<KeyValuePair<Address, long>> ListTxNonces(string namespace)
Parameters
Type Name Description
String namespace
Returns
Type Description
IEnumerable<KeyValuePair<Address, Int64>>
Overrides
BaseStore.ListTxNonces(String)
| Improve this Doc View Source

PutBlock<T>(Block<T>)

Declaration
public override void PutBlock<T>(Block<T> block)

    where T : IAction, new()
Parameters
Type Name Description
Block<T> block
Type Parameters
Name Description
T
Overrides
Libplanet.Store.BaseStore.PutBlock<T>(Libplanet.Blocks.Block<T>)
| Improve this Doc View Source

PutTransaction<T>(Transaction<T>)

Declaration
public override void PutTransaction<T>(Transaction<T> tx)

    where T : IAction, new()
Parameters
Type Name Description
Transaction<T> tx
Type Parameters
Name Description
T
Overrides
Libplanet.Store.BaseStore.PutTransaction<T>(Libplanet.Tx.Transaction<T>)
| Improve this Doc View Source

SetBlockStates(HashDigest<SHA256>, AddressStateMap)

Declaration
public override void SetBlockStates(HashDigest<SHA256> blockHash, AddressStateMap states)
Parameters
Type Name Description
HashDigest<SHA256> blockHash
AddressStateMap states
Overrides
BaseStore.SetBlockStates(HashDigest<SHA256>, AddressStateMap)
| Improve this Doc View Source

SetCanonicalNamespace(String)

Declaration
public override void SetCanonicalNamespace(string namespace)
Parameters
Type Name Description
String namespace
Overrides
BaseStore.SetCanonicalNamespace(String)
| Improve this Doc View Source

StageTransactionIds(IDictionary<TxId, Boolean>)

Declaration
public override void StageTransactionIds(IDictionary<TxId, bool> txids)
Parameters
Type Name Description
IDictionary<TxId, Boolean> txids
Overrides
BaseStore.StageTransactionIds(IDictionary<TxId, Boolean>)
| Improve this Doc View Source

StoreStateReference<T>(String, IImmutableSet<Address>, Block<T>)

Declaration
public override void StoreStateReference<T>(string namespace, IImmutableSet<Address> addresses, Block<T> block)

    where T : IAction, new()
Parameters
Type Name Description
String namespace
IImmutableSet<Address> addresses
Block<T> block
Type Parameters
Name Description
T
Overrides
Libplanet.Store.BaseStore.StoreStateReference<T>(System.String, System.Collections.Immutable.IImmutableSet<Libplanet.Address>, Libplanet.Blocks.Block<T>)
| Improve this Doc View Source

UnstageTransactionIds(ISet<TxId>)

Declaration
public override void UnstageTransactionIds(ISet<TxId> txids)
Parameters
Type Name Description
ISet<TxId> txids
Overrides
BaseStore.UnstageTransactionIds(ISet<TxId>)

Implements

IStore
System.IDisposable

Extension Methods

StoreExtension.LookupStateReference<T>(IStore, String, Address, Block<T>)
StoreExtension.ListAllStateReferences(IStore, String, Nullable<HashDigest<SHA256>>, Nullable<HashDigest<SHA256>>)

See Also

IStore
  • Improve this Doc
  • View Source
Back to top Copyright © 2019 Planetarium
Generated by DocFX