mirror of
https://github.com/mimblewimble/grin-wallet.git
synced 2025-02-01 08:51:09 +03:00
use VersionedSlate for the owner_rpc api (#202)
This commit is contained in:
parent
c40e8a915b
commit
5cdd412205
1 changed files with 48 additions and 19 deletions
|
@ -19,7 +19,8 @@ use crate::core::core::Transaction;
|
||||||
use crate::keychain::{Identifier, Keychain};
|
use crate::keychain::{Identifier, Keychain};
|
||||||
use crate::libwallet::{
|
use crate::libwallet::{
|
||||||
AcctPathMapping, ErrorKind, InitTxArgs, IssueInvoiceTxArgs, NodeClient, NodeHeightResult,
|
AcctPathMapping, ErrorKind, InitTxArgs, IssueInvoiceTxArgs, NodeClient, NodeHeightResult,
|
||||||
OutputCommitMapping, Slate, TxLogEntry, WalletInfo, WalletLCProvider,
|
OutputCommitMapping, Slate, SlateVersion, TxLogEntry, VersionedSlate, WalletInfo,
|
||||||
|
WalletLCProvider,
|
||||||
};
|
};
|
||||||
use crate::util::Mutex;
|
use crate::util::Mutex;
|
||||||
use crate::Owner;
|
use crate::Owner;
|
||||||
|
@ -403,7 +404,7 @@ pub trait OwnerRpc {
|
||||||
```
|
```
|
||||||
*/
|
*/
|
||||||
|
|
||||||
fn init_send_tx(&self, args: InitTxArgs) -> Result<Slate, ErrorKind>;
|
fn init_send_tx(&self, args: InitTxArgs) -> Result<VersionedSlate, ErrorKind>;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
Networked version of [Owner::issue_invoice_tx](struct.Owner.html#method.issue_invoice_tx).
|
Networked version of [Owner::issue_invoice_tx](struct.Owner.html#method.issue_invoice_tx).
|
||||||
|
@ -483,7 +484,7 @@ pub trait OwnerRpc {
|
||||||
```
|
```
|
||||||
*/
|
*/
|
||||||
|
|
||||||
fn issue_invoice_tx(&self, args: IssueInvoiceTxArgs) -> Result<Slate, ErrorKind>;
|
fn issue_invoice_tx(&self, args: IssueInvoiceTxArgs) -> Result<VersionedSlate, ErrorKind>;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
Networked version of [Owner::process_invoice_tx](struct.Owner.html#method.process_invoice_tx).
|
Networked version of [Owner::process_invoice_tx](struct.Owner.html#method.process_invoice_tx).
|
||||||
|
@ -631,7 +632,11 @@ pub trait OwnerRpc {
|
||||||
```
|
```
|
||||||
*/
|
*/
|
||||||
|
|
||||||
fn process_invoice_tx(&self, slate: &Slate, args: InitTxArgs) -> Result<Slate, ErrorKind>;
|
fn process_invoice_tx(
|
||||||
|
&self,
|
||||||
|
slate: VersionedSlate,
|
||||||
|
args: InitTxArgs,
|
||||||
|
) -> Result<VersionedSlate, ErrorKind>;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
Networked version of [Owner::tx_lock_outputs](struct.Owner.html#method.tx_lock_outputs).
|
Networked version of [Owner::tx_lock_outputs](struct.Owner.html#method.tx_lock_outputs).
|
||||||
|
@ -711,7 +716,11 @@ pub trait OwnerRpc {
|
||||||
|
|
||||||
```
|
```
|
||||||
*/
|
*/
|
||||||
fn tx_lock_outputs(&self, slate: Slate, participant_id: usize) -> Result<(), ErrorKind>;
|
fn tx_lock_outputs(
|
||||||
|
&self,
|
||||||
|
slate: VersionedSlate,
|
||||||
|
participant_id: usize,
|
||||||
|
) -> Result<(), ErrorKind>;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
Networked version of [Owner::finalize_tx](struct.Owner.html#method.finalize_tx).
|
Networked version of [Owner::finalize_tx](struct.Owner.html#method.finalize_tx).
|
||||||
|
@ -873,7 +882,7 @@ pub trait OwnerRpc {
|
||||||
# , 5, true, true, false);
|
# , 5, true, true, false);
|
||||||
```
|
```
|
||||||
*/
|
*/
|
||||||
fn finalize_tx(&self, slate: Slate) -> Result<Slate, ErrorKind>;
|
fn finalize_tx(&self, slate: VersionedSlate) -> Result<VersionedSlate, ErrorKind>;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
Networked version of [Owner::post_tx](struct.Owner.html#method.post_tx).
|
Networked version of [Owner::post_tx](struct.Owner.html#method.post_tx).
|
||||||
|
@ -1142,7 +1151,7 @@ pub trait OwnerRpc {
|
||||||
# ,5 ,true, false, false);
|
# ,5 ,true, false, false);
|
||||||
```
|
```
|
||||||
*/
|
*/
|
||||||
fn verify_slate_messages(&self, slate: &Slate) -> Result<(), ErrorKind>;
|
fn verify_slate_messages(&self, slate: VersionedSlate) -> Result<(), ErrorKind>;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
Networked version of [Owner::restore](struct.Owner.html#method.restore).
|
Networked version of [Owner::restore](struct.Owner.html#method.restore).
|
||||||
|
@ -1280,24 +1289,43 @@ where
|
||||||
.map_err(|e| e.kind())
|
.map_err(|e| e.kind())
|
||||||
}
|
}
|
||||||
|
|
||||||
fn init_send_tx(&self, args: InitTxArgs) -> Result<Slate, ErrorKind> {
|
fn init_send_tx(&self, args: InitTxArgs) -> Result<VersionedSlate, ErrorKind> {
|
||||||
Owner::init_send_tx(self, args).map_err(|e| e.kind())
|
let slate = Owner::init_send_tx(self, args).map_err(|e| e.kind())?;
|
||||||
|
let version = SlateVersion::V2;
|
||||||
|
Ok(VersionedSlate::into_version(slate, version))
|
||||||
}
|
}
|
||||||
|
|
||||||
fn issue_invoice_tx(&self, args: IssueInvoiceTxArgs) -> Result<Slate, ErrorKind> {
|
fn issue_invoice_tx(&self, args: IssueInvoiceTxArgs) -> Result<VersionedSlate, ErrorKind> {
|
||||||
Owner::issue_invoice_tx(self, args).map_err(|e| e.kind())
|
let slate = Owner::issue_invoice_tx(self, args).map_err(|e| e.kind())?;
|
||||||
|
let version = SlateVersion::V2;
|
||||||
|
Ok(VersionedSlate::into_version(slate, version))
|
||||||
}
|
}
|
||||||
|
|
||||||
fn process_invoice_tx(&self, slate: &Slate, args: InitTxArgs) -> Result<Slate, ErrorKind> {
|
fn process_invoice_tx(
|
||||||
Owner::process_invoice_tx(self, slate, args).map_err(|e| e.kind())
|
&self,
|
||||||
|
slate: VersionedSlate,
|
||||||
|
args: InitTxArgs,
|
||||||
|
) -> Result<VersionedSlate, ErrorKind> {
|
||||||
|
let in_slate = Slate::from(slate);
|
||||||
|
let out_slate = Owner::process_invoice_tx(self, &in_slate, args).map_err(|e| e.kind())?;
|
||||||
|
let version = SlateVersion::V2;
|
||||||
|
Ok(VersionedSlate::into_version(out_slate, version))
|
||||||
}
|
}
|
||||||
|
|
||||||
fn finalize_tx(&self, mut slate: Slate) -> Result<Slate, ErrorKind> {
|
fn finalize_tx(&self, slate: VersionedSlate) -> Result<VersionedSlate, ErrorKind> {
|
||||||
Owner::finalize_tx(self, &mut slate).map_err(|e| e.kind())
|
let in_slate = Slate::from(slate);
|
||||||
|
let out_slate = Owner::finalize_tx(self, &in_slate).map_err(|e| e.kind())?;
|
||||||
|
let version = SlateVersion::V2;
|
||||||
|
Ok(VersionedSlate::into_version(out_slate, version))
|
||||||
}
|
}
|
||||||
|
|
||||||
fn tx_lock_outputs(&self, mut slate: Slate, participant_id: usize) -> Result<(), ErrorKind> {
|
fn tx_lock_outputs(
|
||||||
Owner::tx_lock_outputs(self, &mut slate, participant_id).map_err(|e| e.kind())
|
&self,
|
||||||
|
slate: VersionedSlate,
|
||||||
|
participant_id: usize,
|
||||||
|
) -> Result<(), ErrorKind> {
|
||||||
|
let in_slate = Slate::from(slate);
|
||||||
|
Owner::tx_lock_outputs(self, &in_slate, participant_id).map_err(|e| e.kind())
|
||||||
}
|
}
|
||||||
|
|
||||||
fn cancel_tx(&self, tx_id: Option<u32>, tx_slate_id: Option<Uuid>) -> Result<(), ErrorKind> {
|
fn cancel_tx(&self, tx_id: Option<u32>, tx_slate_id: Option<Uuid>) -> Result<(), ErrorKind> {
|
||||||
|
@ -1312,8 +1340,9 @@ where
|
||||||
Owner::post_tx(self, tx, fluff).map_err(|e| e.kind())
|
Owner::post_tx(self, tx, fluff).map_err(|e| e.kind())
|
||||||
}
|
}
|
||||||
|
|
||||||
fn verify_slate_messages(&self, slate: &Slate) -> Result<(), ErrorKind> {
|
fn verify_slate_messages(&self, slate: VersionedSlate) -> Result<(), ErrorKind> {
|
||||||
Owner::verify_slate_messages(self, slate).map_err(|e| e.kind())
|
let in_slate = Slate::from(slate);
|
||||||
|
Owner::verify_slate_messages(self, &in_slate).map_err(|e| e.kind())
|
||||||
}
|
}
|
||||||
|
|
||||||
fn restore(&self) -> Result<(), ErrorKind> {
|
fn restore(&self) -> Result<(), ErrorKind> {
|
||||||
|
|
Loading…
Reference in a new issue