Boot exchange_transaction. No tests depend on it.
This commit is contained in:
parent
c2fdd1362a
commit
4507dca342
|
@ -1,103 +0,0 @@
|
|||
use crate::exchange_instruction;
|
||||
use crate::exchange_state::*;
|
||||
use crate::id;
|
||||
use solana_sdk::hash::Hash;
|
||||
use solana_sdk::pubkey::Pubkey;
|
||||
use solana_sdk::signature::{Keypair, KeypairUtil};
|
||||
use solana_sdk::system_instruction;
|
||||
use solana_sdk::transaction::Transaction;
|
||||
use std::mem;
|
||||
|
||||
pub fn account_request(
|
||||
owner: &Keypair,
|
||||
new: &Pubkey,
|
||||
recent_blockhash: Hash,
|
||||
_fee: u64,
|
||||
) -> Transaction {
|
||||
let owner_id = &owner.pubkey();
|
||||
let space = mem::size_of::<ExchangeState>() as u64;
|
||||
let create_ix = system_instruction::create_account(owner_id, new, 1, space, &id());
|
||||
let request_ix = exchange_instruction::account_request(owner_id, new);
|
||||
Transaction::new_signed_instructions(&[owner], vec![create_ix, request_ix], recent_blockhash)
|
||||
}
|
||||
|
||||
pub fn transfer_request(
|
||||
owner: &Keypair,
|
||||
to: &Pubkey,
|
||||
from: &Pubkey,
|
||||
token: Token,
|
||||
tokens: u64,
|
||||
recent_blockhash: Hash,
|
||||
_fee: u64,
|
||||
) -> Transaction {
|
||||
let owner_id = &owner.pubkey();
|
||||
let request_ix = exchange_instruction::transfer_request(owner_id, to, from, token, tokens);
|
||||
Transaction::new_signed_instructions(&[owner], vec![request_ix], recent_blockhash)
|
||||
}
|
||||
|
||||
#[allow(clippy::too_many_arguments)]
|
||||
pub fn trade_request(
|
||||
owner: &Keypair,
|
||||
trade: &Pubkey,
|
||||
direction: Direction,
|
||||
pair: TokenPair,
|
||||
tokens: u64,
|
||||
price: u64,
|
||||
src_account: &Pubkey,
|
||||
dst_account: &Pubkey,
|
||||
recent_blockhash: Hash,
|
||||
_fee: u64,
|
||||
) -> Transaction {
|
||||
let owner_id = &owner.pubkey();
|
||||
let space = mem::size_of::<ExchangeState>() as u64;
|
||||
let create_ix = system_instruction::create_account(owner_id, trade, 1, space, &id());
|
||||
let request_ix = exchange_instruction::trade_request(
|
||||
owner_id,
|
||||
trade,
|
||||
direction,
|
||||
pair,
|
||||
tokens,
|
||||
price,
|
||||
src_account,
|
||||
dst_account,
|
||||
);
|
||||
Transaction::new_signed_instructions(&[owner], vec![create_ix, request_ix], recent_blockhash)
|
||||
}
|
||||
|
||||
pub fn trade_cancellation(
|
||||
owner: &Keypair,
|
||||
trade: &Pubkey,
|
||||
account: &Pubkey,
|
||||
recent_blockhash: Hash,
|
||||
_fee: u64,
|
||||
) -> Transaction {
|
||||
let owner_id = &owner.pubkey();
|
||||
let request_ix = exchange_instruction::trade_cancellation(owner_id, trade, account);
|
||||
Transaction::new_signed_instructions(&[owner], vec![request_ix], recent_blockhash)
|
||||
}
|
||||
|
||||
pub fn swap_request(
|
||||
owner: &Keypair,
|
||||
swap: &Pubkey,
|
||||
to_trade: &Pubkey,
|
||||
from_trade: &Pubkey,
|
||||
to_trade_account: &Pubkey,
|
||||
from_trade_account: &Pubkey,
|
||||
profit_account: &Pubkey,
|
||||
recent_blockhash: Hash,
|
||||
_fee: u64,
|
||||
) -> Transaction {
|
||||
let owner_id = &owner.pubkey();
|
||||
let space = mem::size_of::<ExchangeState>() as u64;
|
||||
let create_ix = system_instruction::create_account(owner_id, swap, 1, space, &id());
|
||||
let request_ix = exchange_instruction::swap_request(
|
||||
owner_id,
|
||||
swap,
|
||||
to_trade,
|
||||
from_trade,
|
||||
to_trade_account,
|
||||
from_trade_account,
|
||||
profit_account,
|
||||
);
|
||||
Transaction::new_signed_instructions(&[owner], vec![create_ix, request_ix], recent_blockhash)
|
||||
}
|
|
@ -1,7 +1,6 @@
|
|||
pub mod exchange_instruction;
|
||||
pub mod exchange_processor;
|
||||
pub mod exchange_state;
|
||||
pub mod exchange_transaction;
|
||||
|
||||
use solana_sdk::pubkey::Pubkey;
|
||||
|
||||
|
|
Loading…
Reference in New Issue