Struct pallet_prefunding::Pallet
source · [−]pub struct Pallet<T>(_);
Expand description
The pallet implementing the on-chain logic.
Implementations
pub fn prefund_someone(
origin: OriginFor<T>,
beneficiary: T::AccountId,
amount: <<T as Config>::Currency as Currency<<T as Config>::AccountId>>::Balance,
deadline: T::BlockNumber,
tx_uid: T::Hash
) -> DispatchResultWithPostInfo
pub fn prefund_someone(
origin: OriginFor<T>,
beneficiary: T::AccountId,
amount: <<T as Config>::Currency as Currency<<T as Config>::AccountId>>::Balance,
deadline: T::BlockNumber,
tx_uid: T::Hash
) -> DispatchResultWithPostInfo
This function reserves funds from the buyer for a specific vendor account (Closed Order). It is used when an order is created. Quantity is not relevant. The prefunded amount remains as an asset of the buyer until the order is accepted. Updates only the accounts of the buyer.
pub fn invoice_prefunded_order(
origin: OriginFor<T>,
payer: T::AccountId,
amount: i128,
reference: T::Hash,
uid: T::Hash
) -> DispatchResultWithPostInfo
pub fn invoice_prefunded_order(
origin: OriginFor<T>,
payer: T::AccountId,
amount: i128,
reference: T::Hash,
uid: T::Hash
) -> DispatchResultWithPostInfo
Creates a single line simple invoice without taxes, tariffs or commissions. This invoice is associated with a prefunded order - therefore needs to provide the hash reference of the order. Updates the accounting for the vendor and the customer.
pub fn pay_prefunded_invoice(
origin: OriginFor<T>,
reference: T::Hash,
uid: T::Hash
) -> DispatchResultWithPostInfo
pub fn pay_prefunded_invoice(
origin: OriginFor<T>,
reference: T::Hash,
uid: T::Hash
) -> DispatchResultWithPostInfo
Buyer pays a prefunded order. Needs to supply the correct hash reference. Updates bother the buyer and the vendor accounts.
pub fn cancel_prefunded_closed_order(
origin: OriginFor<T>,
reference: T::Hash,
uid: T::Hash
) -> DispatchResultWithPostInfo
pub fn cancel_prefunded_closed_order(
origin: OriginFor<T>,
reference: T::Hash,
uid: T::Hash
) -> DispatchResultWithPostInfo
Is used by the buyer to recover funds if the vendor does not accept the order by the deadline.
pub fn prefunding<KArg>(
k: KArg
) -> Option<(<<T as Config>::Currency as Currency<<T as Config>::AccountId>>::Balance, T::BlockNumber)> where
KArg: EncodeLike<T::Hash>,
pub fn prefunding<KArg>(
k: KArg
) -> Option<(<<T as Config>::Currency as Currency<<T as Config>::AccountId>>::Balance, T::BlockNumber)> where
KArg: EncodeLike<T::Hash>,
Bonsai Storage.
pub fn prefunding_hash_owner<KArg>(
k: KArg
) -> Option<(T::AccountId, LockStatus, T::AccountId, LockStatus)> where
KArg: EncodeLike<T::Hash>,
pub fn prefunding_hash_owner<KArg>(
k: KArg
) -> Option<(T::AccountId, LockStatus, T::AccountId, LockStatus)> where
KArg: EncodeLike<T::Hash>,
Maps to current block number allows interrogation of errors.
pub fn owner_prefunding_hash_list<KArg>(k: KArg) -> Option<Vec<T::Hash>> where
KArg: EncodeLike<T::AccountId>,
pub fn owner_prefunding_hash_list<KArg>(k: KArg) -> Option<Vec<T::Hash>> where
KArg: EncodeLike<T::AccountId>,
Future block number beyond which the Hash should deleted.
Tracking to ensure that we can perform housekeeping on finalization of block.
Trait Implementations
fn send_simple_invoice(
who: T::AccountId,
recipient: T::AccountId,
amount: LedgerBalance,
ref_hash: T::Hash,
uid: T::Hash
) -> DispatchResultWithPostInfo
fn send_simple_invoice(
who: T::AccountId,
recipient: T::AccountId,
amount: LedgerBalance,
ref_hash: T::Hash,
uid: T::Hash
) -> DispatchResultWithPostInfo
Simple invoice. Does not include tax jurisdiction, tax amounts, freight, commissions, tariffs, discounts and other extended line item values. Must include a connection to the originating reference. Invoices cannot be made to parties that haven’t asked for something identified by a valid hash.
fn settle_prefunded_invoice(
who: T::AccountId,
ref_hash: T::Hash,
uid: T::Hash
) -> DispatchResultWithPostInfo
fn settle_prefunded_invoice(
who: T::AccountId,
ref_hash: T::Hash,
uid: T::Hash
) -> DispatchResultWithPostInfo
Settles invoice by unlocking funds and updates various relevant accounts and pays prefunded amount.
fn set_release_state(
who: T::AccountId,
o_lock: LockStatus,
ref_hash: T::Hash,
uid: T::Hash
) -> DispatchResultWithPostInfo
fn set_release_state(
who: T::AccountId,
o_lock: LockStatus,
ref_hash: T::Hash,
uid: T::Hash
) -> DispatchResultWithPostInfo
Sets the release state by the owner or the beneficiary is only called when something already exists.
fn unlock_funds_for_owner(
who: T::AccountId,
ref_hash: T::Hash,
_uid: T::Hash
) -> DispatchResultWithPostInfo
fn unlock_funds_for_owner(
who: T::AccountId,
ref_hash: T::Hash,
_uid: T::Hash
) -> DispatchResultWithPostInfo
Unlocks for owner.
Checks owner (of hash) - if anything fails then returns false.
Checks beneficiary (of hash reference).
fn prefunding_for(
who: T::AccountId,
recipient: T::AccountId,
amount: <<T as Config>::Currency as Currency<<T as Config>::AccountId>>::Balance,
deadline: T::BlockNumber,
ref_hash: T::Hash,
uid: T::Hash
) -> DispatchResultWithPostInfo
Returns the current storage version as supported by the pallet.
Returns the on-chain storage version of the pallet as stored in the storage.
The block is being finalized. Implement to have something happen.
This will be run when the block is being finalized (before on_finalize
).
Implement to have something happen using the remaining weight.
Will not fire if the remaining weight is 0.
Return the weight used, the hook will subtract it from current weight used
and pass the result to the next on_idle
hook if it exists. Read more
The block is being initialized. Implement to have something happen. Read more
Perform a module upgrade. Read more
Implementing this function on a module allows you to perform long-running tasks that make (by default) validators generate transactions that feed results of those long-running computations back on chain. Read more
Run integrity test. Read more
Run integrity test. Read more
This function is being called after every block import (when fully synced). Read more
The block is being finalized. Implement to have something happen. Read more
Something that should happen at genesis.
The block is being finalized.
Implement to have something happen in case there is leftover weight.
Check the passed remaining_weight
to make sure it is high enough to allow for
your pallet’s extra computation. Read more
The block is being initialized. Implement to have something happen. Read more
Perform a module upgrade. Read more
Name of the Rust module containing the pallet.
Version of the crate containing the pallet.
Extend the given vector by all of the pallets’ information that this type represents. Read more
fn storage_info() -> Vec<StorageInfo>ⓘ
Auto Trait Implementations
impl<T> RefUnwindSafe for Pallet<T> where
T: RefUnwindSafe,
impl<T> UnwindSafe for Pallet<T> where
T: UnwindSafe,
Blanket Implementations
Mutably borrows from an owned value. Read more
pub fn into_any(self: Box<T, Global>) -> Box<dyn Any + 'static, Global>ⓘimpl<W> Write for Box<W, Global> where
W: Write + ?Sized, impl<R> Read for Box<R, Global> where
R: Read + ?Sized, impl<I, A> Iterator for Box<I, A> where
I: Iterator + ?Sized,
A: Allocator, type Item = <I as Iterator>::Item;impl<F, A> Future for Box<F, A> where
F: Future + Unpin + ?Sized,
A: Allocator + 'static, type Output = <F as Future>::Output;
pub fn into_any(self: Box<T, Global>) -> Box<dyn Any + 'static, Global>ⓘimpl<W> Write for Box<W, Global> where
W: Write + ?Sized, impl<R> Read for Box<R, Global> where
R: Read + ?Sized, impl<I, A> Iterator for Box<I, A> where
I: Iterator + ?Sized,
A: Allocator, type Item = <I as Iterator>::Item;impl<F, A> Future for Box<F, A> where
F: Future + Unpin + ?Sized,
A: Allocator + 'static, type Output = <F as Future>::Output;
impl<W> Write for Box<W, Global> where
W: Write + ?Sized, impl<R> Read for Box<R, Global> where
R: Read + ?Sized, impl<I, A> Iterator for Box<I, A> where
I: Iterator + ?Sized,
A: Allocator, type Item = <I as Iterator>::Item;impl<F, A> Future for Box<F, A> where
F: Future + Unpin + ?Sized,
A: Allocator + 'static, type Output = <F as Future>::Output;
Convert Box<dyn Trait>
(where Trait: Downcast
) to Box<dyn Any>
. Box<dyn Any>
can
then be further downcast
into Box<ConcreteType>
where ConcreteType
implements Trait
. Read more
Convert Rc<Trait>
(where Trait: Downcast
) to Rc<Any>
. Rc<Any>
can then be
further downcast
into Rc<ConcreteType>
where ConcreteType
implements Trait
. Read more
Convert &Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &Any
’s vtable from &Trait
’s. Read more
Convert &mut Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &mut Any
’s vtable from &mut Trait
’s. Read more
impl<T> PalletVersionToStorageVersionHelper for T where
T: GetStorageVersion + PalletInfoAccess,
impl<T> PalletVersionToStorageVersionHelper for T where
T: GetStorageVersion + PalletInfoAccess,
The counterpart to unchecked_from
.
Consume self to return an equivalent value of T
.
Attaches the provided Subscriber
to this type, returning a
WithDispatch
wrapper. Read more
Attaches the current default Subscriber
to this type, returning a
WithDispatch
wrapper. Read more