refactor(gas-fee): replace init_builtin_fee_strategies with set_global_strategy
- Add customizable cu_limit, cu_price, buy_tip, sell_tip parameters - Update all examples and documentation - Simplify strategy configuration API
This commit is contained in:
@@ -124,8 +124,8 @@ async fn create_solana_trade_client() -> AnyResult<SolanaTrade> {
|
||||
let swqos_configs: Vec<SwqosConfig> = vec![SwqosConfig::Default(rpc_url.clone())];
|
||||
let trade_config = TradeConfig::new(rpc_url, swqos_configs, commitment);
|
||||
let solana_trade = SolanaTrade::new(Arc::new(payer), trade_config).await;
|
||||
// init gas fee strategy
|
||||
sol_trade_sdk::common::GasFeeStrategy::init_builtin_fee_strategies();
|
||||
// set global strategy
|
||||
sol_trade_sdk::common::set_global_gas_fee_strategy(150000, 500000, 0.001, 0.001);
|
||||
println!("✅ SolanaTrade client initialized successfully!");
|
||||
Ok(solana_trade)
|
||||
}
|
||||
|
||||
@@ -116,8 +116,8 @@ async fn create_solana_trade_client() -> AnyResult<SolanaTrade> {
|
||||
let swqos_configs: Vec<SwqosConfig> = vec![SwqosConfig::Default(rpc_url.clone())];
|
||||
let trade_config = TradeConfig::new(rpc_url, swqos_configs, commitment);
|
||||
let solana_trade = SolanaTrade::new(Arc::new(payer), trade_config).await;
|
||||
// init gas fee strategy
|
||||
sol_trade_sdk::common::GasFeeStrategy::init_builtin_fee_strategies();
|
||||
// set global strategy
|
||||
sol_trade_sdk::common::set_global_gas_fee_strategy(150000, 500000, 0.001, 0.001);
|
||||
println!("✅ SolanaTrade client initialized successfully!");
|
||||
Ok(solana_trade)
|
||||
}
|
||||
|
||||
@@ -79,8 +79,8 @@ async fn create_solana_trade_client() -> AnyResult<SolanaTrade> {
|
||||
let swqos_configs: Vec<SwqosConfig> = vec![SwqosConfig::Default(rpc_url.clone())];
|
||||
let trade_config = TradeConfig::new(rpc_url, swqos_configs, commitment);
|
||||
let solana_trade = SolanaTrade::new(Arc::new(payer), trade_config).await;
|
||||
// init gas fee strategy
|
||||
sol_trade_sdk::common::GasFeeStrategy::init_builtin_fee_strategies();
|
||||
// set global strategy
|
||||
sol_trade_sdk::common::set_global_gas_fee_strategy(150000, 500000, 0.001, 0.001);
|
||||
println!("✅ SolanaTrade client initialized successfully!");
|
||||
Ok(solana_trade)
|
||||
}
|
||||
|
||||
@@ -1304,8 +1304,8 @@ async fn initialize_real_client() -> AnyResult<SolanaTrade> {
|
||||
let swqos_configs: Vec<SwqosConfig> = vec![SwqosConfig::Default(rpc_url.clone())];
|
||||
let trade_config = TradeConfig::new(rpc_url, swqos_configs, commitment);
|
||||
let solana_trade = SolanaTrade::new(payer, trade_config).await;
|
||||
// init gas fee strategy
|
||||
sol_trade_sdk::common::GasFeeStrategy::init_builtin_fee_strategies();
|
||||
// set global strategy
|
||||
sol_trade_sdk::common::set_global_gas_fee_strategy(150000, 500000, 0.001, 0.001);
|
||||
println!("✅ SolanaTrade client initialized successfully!");
|
||||
Ok(solana_trade)
|
||||
}
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
use sol_trade_sdk::{
|
||||
common::gas_fee_strategy::GasFeeStrategy,
|
||||
common::{gas_fee_strategy::GasFeeStrategy, set_global_gas_fee_strategy},
|
||||
swqos::{SwqosType, TradeType},
|
||||
};
|
||||
|
||||
@@ -8,12 +8,12 @@ async fn main() {
|
||||
println!("🚀 Gas Fee Strategy Demo");
|
||||
println!("========================");
|
||||
|
||||
// Initialize builtin strategies
|
||||
println!("1. Initialize builtin strategies");
|
||||
GasFeeStrategy::init_builtin_fee_strategies();
|
||||
// Set global strategy
|
||||
println!("1. Set global strategy");
|
||||
set_global_gas_fee_strategy(150000, 500000, 0.001, 0.001);
|
||||
|
||||
// Print all strategies
|
||||
println!("\n2. Print all builtin strategies");
|
||||
println!("\n2. Print all strategies");
|
||||
GasFeeStrategy::print_all_strategies();
|
||||
|
||||
// Clear all strategies
|
||||
|
||||
@@ -66,8 +66,8 @@ async fn create_solana_trade_client() -> AnyResult<SolanaTrade> {
|
||||
let swqos_configs: Vec<SwqosConfig> = vec![SwqosConfig::Default(rpc_url.clone())];
|
||||
let trade_config = TradeConfig::new(rpc_url, swqos_configs, commitment);
|
||||
let solana_trade = SolanaTrade::new(Arc::new(payer), trade_config).await;
|
||||
// init gas fee strategy
|
||||
sol_trade_sdk::common::GasFeeStrategy::init_builtin_fee_strategies();
|
||||
// set global strategy
|
||||
sol_trade_sdk::common::set_global_gas_fee_strategy(150000, 500000, 0.001, 0.001);
|
||||
println!("✅ SolanaTrade client initialized successfully!");
|
||||
Ok(solana_trade)
|
||||
}
|
||||
|
||||
@@ -105,8 +105,8 @@ async fn create_solana_trade_client() -> AnyResult<SolanaTrade> {
|
||||
let swqos_configs: Vec<SwqosConfig> = vec![SwqosConfig::Default(rpc_url.clone())];
|
||||
let trade_config = TradeConfig::new(rpc_url, swqos_configs, commitment);
|
||||
let solana_trade = SolanaTrade::new(Arc::new(payer), trade_config).await;
|
||||
// init gas fee strategy
|
||||
sol_trade_sdk::common::GasFeeStrategy::init_builtin_fee_strategies();
|
||||
// set global strategy
|
||||
sol_trade_sdk::common::set_global_gas_fee_strategy(150000, 500000, 0.001, 0.001);
|
||||
println!("✅ SolanaTrade client initialized successfully!");
|
||||
Ok(solana_trade)
|
||||
}
|
||||
|
||||
@@ -104,8 +104,8 @@ async fn create_solana_trade_client() -> AnyResult<SolanaTrade> {
|
||||
let swqos_configs: Vec<SwqosConfig> = vec![SwqosConfig::Default(rpc_url.clone())];
|
||||
let trade_config = TradeConfig::new(rpc_url, swqos_configs, commitment);
|
||||
let solana_trade = SolanaTrade::new(Arc::new(payer), trade_config).await;
|
||||
// init gas fee strategy
|
||||
sol_trade_sdk::common::GasFeeStrategy::init_builtin_fee_strategies();
|
||||
// set global strategy
|
||||
sol_trade_sdk::common::set_global_gas_fee_strategy(150000, 500000, 0.001, 0.001);
|
||||
println!("✅ SolanaTrade client initialized successfully!");
|
||||
Ok(solana_trade)
|
||||
}
|
||||
|
||||
@@ -73,8 +73,8 @@ async fn create_solana_trade_client() -> AnyResult<SolanaTrade> {
|
||||
let swqos_configs: Vec<SwqosConfig> = vec![SwqosConfig::Default(rpc_url.clone())];
|
||||
let trade_config = TradeConfig::new(rpc_url, swqos_configs, commitment);
|
||||
let solana_trade = SolanaTrade::new(Arc::new(payer), trade_config).await;
|
||||
// init gas fee strategy
|
||||
sol_trade_sdk::common::GasFeeStrategy::init_builtin_fee_strategies();
|
||||
// set global strategy
|
||||
sol_trade_sdk::common::set_global_gas_fee_strategy(150000, 500000, 0.001, 0.001);
|
||||
println!("✅ SolanaTrade client initialized successfully!");
|
||||
Ok(solana_trade)
|
||||
}
|
||||
|
||||
@@ -85,8 +85,8 @@ async fn create_solana_trade_client() -> AnyResult<SolanaTrade> {
|
||||
let swqos_configs: Vec<SwqosConfig> = vec![SwqosConfig::Default(rpc_url.clone())];
|
||||
let trade_config = TradeConfig::new(rpc_url, swqos_configs, commitment);
|
||||
let solana_trade = SolanaTrade::new(Arc::new(payer), trade_config).await;
|
||||
// init gas fee strategy
|
||||
sol_trade_sdk::common::GasFeeStrategy::init_builtin_fee_strategies();
|
||||
// set global strategy
|
||||
sol_trade_sdk::common::set_global_gas_fee_strategy(150000, 500000, 0.001, 0.001);
|
||||
println!("✅ SolanaTrade client initialized successfully!");
|
||||
Ok(solana_trade)
|
||||
}
|
||||
|
||||
@@ -130,8 +130,8 @@ async fn create_solana_trade_client() -> AnyResult<SolanaTrade> {
|
||||
let swqos_configs: Vec<SwqosConfig> = vec![SwqosConfig::Default(rpc_url.clone())];
|
||||
let trade_config = TradeConfig::new(rpc_url, swqos_configs, commitment);
|
||||
let solana_trade = SolanaTrade::new(Arc::new(payer), trade_config).await;
|
||||
// init gas fee strategy
|
||||
sol_trade_sdk::common::GasFeeStrategy::init_builtin_fee_strategies();
|
||||
// set global strategy
|
||||
sol_trade_sdk::common::set_global_gas_fee_strategy(150000, 500000, 0.001, 0.001);
|
||||
println!("✅ SolanaTrade client initialized successfully!");
|
||||
Ok(solana_trade)
|
||||
}
|
||||
|
||||
@@ -104,8 +104,8 @@ async fn create_solana_trade_client() -> AnyResult<SolanaTrade> {
|
||||
let swqos_configs: Vec<SwqosConfig> = vec![SwqosConfig::Default(rpc_url.clone())];
|
||||
let trade_config = TradeConfig::new(rpc_url, swqos_configs, commitment);
|
||||
let solana_trade = SolanaTrade::new(Arc::new(payer), trade_config).await;
|
||||
// init gas fee strategy
|
||||
sol_trade_sdk::common::GasFeeStrategy::init_builtin_fee_strategies();
|
||||
// set global strategy
|
||||
sol_trade_sdk::common::set_global_gas_fee_strategy(150000, 500000, 0.001, 0.001);
|
||||
println!("✅ SolanaTrade client initialized successfully!");
|
||||
Ok(solana_trade)
|
||||
}
|
||||
|
||||
@@ -126,8 +126,8 @@ async fn create_solana_trade_client() -> AnyResult<SolanaTrade> {
|
||||
let swqos_configs: Vec<SwqosConfig> = vec![SwqosConfig::Default(rpc_url.clone())];
|
||||
let trade_config = TradeConfig::new(rpc_url, swqos_configs, commitment);
|
||||
let solana_trade = SolanaTrade::new(Arc::new(payer), trade_config).await;
|
||||
// init gas fee strategy
|
||||
sol_trade_sdk::common::GasFeeStrategy::init_builtin_fee_strategies();
|
||||
// set global strategy
|
||||
sol_trade_sdk::common::set_global_gas_fee_strategy(150000, 500000, 0.001, 0.001);
|
||||
println!("✅ SolanaTrade client initialized successfully!");
|
||||
Ok(solana_trade)
|
||||
}
|
||||
|
||||
@@ -94,8 +94,8 @@ async fn create_solana_trade_client() -> AnyResult<SolanaTrade> {
|
||||
let swqos_configs: Vec<SwqosConfig> = vec![SwqosConfig::Default(rpc_url.clone())];
|
||||
let trade_config = TradeConfig::new(rpc_url, swqos_configs, commitment);
|
||||
let solana_trade = SolanaTrade::new(Arc::new(payer), trade_config).await;
|
||||
// init gas fee strategy
|
||||
sol_trade_sdk::common::GasFeeStrategy::init_builtin_fee_strategies();
|
||||
// set global strategy
|
||||
sol_trade_sdk::common::set_global_gas_fee_strategy(150000, 500000, 0.001, 0.001);
|
||||
println!("✅ SolanaTrade client initialized successfully!");
|
||||
Ok(solana_trade)
|
||||
}
|
||||
|
||||
@@ -35,8 +35,8 @@ async fn create_solana_trade_client() -> AnyResult<SolanaTrade> {
|
||||
];
|
||||
let trade_config = TradeConfig::new(rpc_url, swqos_configs, commitment);
|
||||
let solana_trade_client = SolanaTrade::new(Arc::new(payer), trade_config).await;
|
||||
// init gas fee strategy
|
||||
sol_trade_sdk::common::GasFeeStrategy::init_builtin_fee_strategies();
|
||||
// set global strategy
|
||||
sol_trade_sdk::common::set_global_gas_fee_strategy(150000, 500000, 0.001, 0.001);
|
||||
println!("SolanaTrade client created successfully!");
|
||||
Ok(solana_trade_client)
|
||||
}
|
||||
|
||||
@@ -58,8 +58,8 @@ async fn create_solana_trade_client() -> Result<SolanaTrade, Box<dyn std::error:
|
||||
let swqos_configs: Vec<SwqosConfig> = vec![SwqosConfig::Default(rpc_url.clone())];
|
||||
let trade_config = TradeConfig::new(rpc_url, swqos_configs, commitment);
|
||||
let solana_trade = SolanaTrade::new(Arc::new(payer), trade_config).await;
|
||||
// init gas fee strategy
|
||||
sol_trade_sdk::common::GasFeeStrategy::init_builtin_fee_strategies();
|
||||
// set global strategy
|
||||
sol_trade_sdk::common::set_global_gas_fee_strategy(150000, 500000, 0.001, 0.001);
|
||||
println!("✅ SolanaTrade client initialized successfully!");
|
||||
Ok(solana_trade)
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user