Integrate Message into Transaction
This commit is contained in:
		@@ -21,10 +21,12 @@ impl ExchangeTransaction {
 | 
			
		||||
        let space = mem::size_of::<ExchangeState>() as u64;
 | 
			
		||||
        let create_ix = SystemInstruction::new_program_account(owner_id, new, 1, space, &id());
 | 
			
		||||
        let request_ix = ExchangeInstruction::new_account_request(owner_id, new);
 | 
			
		||||
        let mut tx = Transaction::new_unsigned_instructions(vec![create_ix, request_ix]);
 | 
			
		||||
        tx.fee = fee;
 | 
			
		||||
        tx.sign(&[owner], recent_blockhash);
 | 
			
		||||
        tx
 | 
			
		||||
        Transaction::new_signed_instructions(
 | 
			
		||||
            &[owner],
 | 
			
		||||
            vec![create_ix, request_ix],
 | 
			
		||||
            recent_blockhash,
 | 
			
		||||
            fee,
 | 
			
		||||
        )
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    pub fn new_transfer_request(
 | 
			
		||||
@@ -39,10 +41,7 @@ impl ExchangeTransaction {
 | 
			
		||||
        let owner_id = &owner.pubkey();
 | 
			
		||||
        let request_ix =
 | 
			
		||||
            ExchangeInstruction::new_transfer_request(owner_id, to, from, token, tokens);
 | 
			
		||||
        let mut tx = Transaction::new_unsigned_instructions(vec![request_ix]);
 | 
			
		||||
        tx.fee = fee;
 | 
			
		||||
        tx.sign(&[owner], recent_blockhash);
 | 
			
		||||
        tx
 | 
			
		||||
        Transaction::new_signed_instructions(&[owner], vec![request_ix], recent_blockhash, fee)
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    #[allow(clippy::too_many_arguments)]
 | 
			
		||||
@@ -71,10 +70,12 @@ impl ExchangeTransaction {
 | 
			
		||||
            src_account,
 | 
			
		||||
            dst_account,
 | 
			
		||||
        );
 | 
			
		||||
        let mut tx = Transaction::new_unsigned_instructions(vec![create_ix, request_ix]);
 | 
			
		||||
        tx.fee = fee;
 | 
			
		||||
        tx.sign(&[owner], recent_blockhash);
 | 
			
		||||
        tx
 | 
			
		||||
        Transaction::new_signed_instructions(
 | 
			
		||||
            &[owner],
 | 
			
		||||
            vec![create_ix, request_ix],
 | 
			
		||||
            recent_blockhash,
 | 
			
		||||
            fee,
 | 
			
		||||
        )
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    pub fn new_trade_cancellation(
 | 
			
		||||
@@ -86,10 +87,7 @@ impl ExchangeTransaction {
 | 
			
		||||
    ) -> Transaction {
 | 
			
		||||
        let owner_id = &owner.pubkey();
 | 
			
		||||
        let request_ix = ExchangeInstruction::new_trade_cancellation(owner_id, trade, account);
 | 
			
		||||
        let mut tx = Transaction::new_unsigned_instructions(vec![request_ix]);
 | 
			
		||||
        tx.fee = fee;
 | 
			
		||||
        tx.sign(&[owner], recent_blockhash);
 | 
			
		||||
        tx
 | 
			
		||||
        Transaction::new_signed_instructions(&[owner], vec![request_ix], recent_blockhash, fee)
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    pub fn new_swap_request(
 | 
			
		||||
@@ -115,9 +113,11 @@ impl ExchangeTransaction {
 | 
			
		||||
            from_trade_account,
 | 
			
		||||
            profit_account,
 | 
			
		||||
        );
 | 
			
		||||
        let mut tx = Transaction::new_unsigned_instructions(vec![create_ix, request_ix]);
 | 
			
		||||
        tx.fee = fee;
 | 
			
		||||
        tx.sign(&[owner], recent_blockhash);
 | 
			
		||||
        tx
 | 
			
		||||
        Transaction::new_signed_instructions(
 | 
			
		||||
            &[owner],
 | 
			
		||||
            vec![create_ix, request_ix],
 | 
			
		||||
            recent_blockhash,
 | 
			
		||||
            fee,
 | 
			
		||||
        )
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user