Skip to content

Commit

Permalink
optimal
Browse files Browse the repository at this point in the history
  • Loading branch information
hoanganhtuan95ptit committed Jun 3, 2023
1 parent 8d1414f commit 40faf71
Show file tree
Hide file tree
Showing 2 changed files with 61 additions and 11 deletions.
72 changes: 61 additions & 11 deletions web3/src/main/java/com/one/web3/Web3.kt
Original file line number Diff line number Diff line change
Expand Up @@ -18,8 +18,12 @@ import com.one.web3.task.balancenative.BalanceNativeSolCallTask
import com.one.web3.task.balancenative.BalanceNativeTask
import com.one.web3.task.bonus.BonusFeeTask
import com.one.web3.task.bonus.approve.BonusFeeApproveParam
import com.one.web3.task.bonus.approve.L1FeeApproveEvmCallTask
import com.one.web3.task.bonus.sign.BonusFeeSignParam
import com.one.web3.task.bonus.sign.L1FeeSignEvmCallTask
import com.one.web3.task.bonus.transfer.BonusFeeTransferParam
import com.one.web3.task.bonus.transfer.CreateTokenAccountFeeTransferSolCallTask
import com.one.web3.task.bonus.transfer.L1FeeTransferEvmCallTask
import com.one.web3.task.decimal.DecimalCallTask
import com.one.web3.task.decimal.DecimalEvmCallTask
import com.one.web3.task.decimal.DecimalParam
Expand All @@ -28,27 +32,42 @@ import com.one.web3.task.decimalmulti.DecimalMultiEvmCallTask
import com.one.web3.task.decimalmulti.DecimalMultiParam
import com.one.web3.task.decimalmulti.DecimalMultiTask
import com.one.web3.task.gaslimit.GasLimitTask
import com.one.web3.task.gaslimit.approve.GasLimitApproveEvmCallTask
import com.one.web3.task.gaslimit.approve.GasLimitApproveParam
import com.one.web3.task.gaslimit.approve.GasLimitApproveSolCallTask
import com.one.web3.task.gaslimit.sign.GasLimitSignEvmCallTask
import com.one.web3.task.gaslimit.sign.GasLimitSignParam
import com.one.web3.task.gaslimit.sign.GasLimitSignSolCallTask
import com.one.web3.task.gaslimit.transfer.GasLimitTransferEvmCallTask
import com.one.web3.task.gaslimit.transfer.GasLimitTransferParam
import com.one.web3.task.gaslimit.transfer.GasLimitTransferSolCallTask
import com.one.web3.task.gasprice.GasPriceCallTask
import com.one.web3.task.gasprice.GasPriceEvmCallTask
import com.one.web3.task.gasprice.GasPriceParam
import com.one.web3.task.gasprice.GasPriceSolCallTask
import com.one.web3.task.minednonce.MinedNonceEvmCallTask
import com.one.web3.task.minednonce.MinedNonceParam
import com.one.web3.task.minednonce.MinedNonceSolCallTask
import com.one.web3.task.minednonce.MinedNonceTask
import com.one.web3.task.pendingnonce.PendingNonceParam
import com.one.web3.task.pendingnonce.PendingNonceTask
import com.one.web3.task.priorityfee.PriorityFeeEvmCallTask
import com.one.web3.task.priorityfee.PriorityFeeParam
import com.one.web3.task.priorityfee.PriorityFeeSolCallTask
import com.one.web3.task.priorityfee.PriorityFeeTask
import com.one.web3.task.privatekey.PrivateKeyParam
import com.one.web3.task.privatekey.PrivateKeyTask
import com.one.web3.task.status.TransactionStatusEvmCallTask
import com.one.web3.task.status.TransactionStatusParam
import com.one.web3.task.status.TransactionStatusSolCallTask
import com.one.web3.task.status.TransactionStatusTask
import com.one.web3.task.transaction.approve.TokenApproveEvmCallTask
import com.one.web3.task.transaction.approve.TokenApproveParam
import com.one.web3.task.transaction.approve.TokenApproveTask
import com.one.web3.task.transaction.sign.SignTransactionEvmCallTask
import com.one.web3.task.transaction.sign.SignTransactionParam
import com.one.web3.task.transaction.sign.SignTransactionTask
import com.one.web3.task.transaction.transfer.TransferEvmTask
import com.one.web3.task.transaction.transfer.TransferParam
import com.one.web3.task.transaction.transfer.TransferTask
import retrofit2.Retrofit
Expand All @@ -63,22 +82,53 @@ open class Web3(val retrofit: Retrofit, private val tasks: List<Web3Task<*, *>>

add(TokenAllowanceEvmCallTask())

add(DecimalMultiEvmCallTask())

add(BalanceMultiEvmCallTask())

add(BalanceEvmCallTask())
add(BalanceSolCallTask())

add(BalanceMultiEvmCallTask())

add(BalanceNativeEvmCallTask())
add(BalanceNativeSolCallTask())

add(L1FeeApproveEvmCallTask())

add(L1FeeSignEvmCallTask())

add(L1FeeTransferEvmCallTask())
add(CreateTokenAccountFeeTransferSolCallTask())

add(DecimalMultiEvmCallTask())

add(DecimalEvmCallTask())
add(DecimalSolCallTask())

add(GasLimitApproveEvmCallTask())
add(GasLimitApproveSolCallTask())

add(GasLimitSignEvmCallTask())
add(GasLimitSignSolCallTask())

add(GasLimitTransferEvmCallTask())
add(GasLimitTransferSolCallTask())

add(GasPriceEvmCallTask())
add(GasPriceSolCallTask())

add(MinedNonceEvmCallTask())
add(MinedNonceSolCallTask())

add(PriorityFeeEvmCallTask())
add(PriorityFeeSolCallTask())

add(TransactionStatusEvmCallTask())
add(TransactionStatusSolCallTask())

add(TokenApproveEvmCallTask())

add(SignTransactionEvmCallTask())

add(TransferEvmTask())

addAll(tasks)
}
}
Expand Down Expand Up @@ -185,7 +235,7 @@ open class Web3(val retrofit: Retrofit, private val tasks: List<Web3Task<*, *>>
return execute<PrivateKeyParam, String, PrivateKeyTask>(PrivateKeyParam(walletAddress))
}

suspend fun status(txHash: String, chainId: Long, rpcUrls: List<String>, sync: Boolean = false): BigInteger {
suspend fun transactionStatus(txHash: String, chainId: Long, rpcUrls: List<String>, sync: Boolean = false): BigInteger {

return execute<TransactionStatusParam, BigInteger, TransactionStatusTask>(TransactionStatusParam(txHash, chainId, rpcUrls, sync))
}
Expand All @@ -196,7 +246,7 @@ open class Web3(val retrofit: Retrofit, private val tasks: List<Web3Task<*, *>>
to: String, from: String,
data: String, value: BigInteger,
nonce: BigInteger?, gasLimit: BigInteger, gasPrice: BigDecimal, priorityFee: BigDecimal,
chainId: Long, rpcUrls: List<String>, sync: Boolean = false
chainId: Long, rpcUrls: List<String>
): Pair<String, BigInteger> {

return execute<TokenApproveParam, Pair<String, BigInteger>, TokenApproveTask>(
Expand All @@ -206,7 +256,7 @@ open class Web3(val retrofit: Retrofit, private val tasks: List<Web3Task<*, *>>
to, from,
data, value,
nonce, gasLimit, gasPrice, priorityFee,
chainId, rpcUrls, sync
chainId, rpcUrls, sync = true
)
)
}
Expand All @@ -216,7 +266,7 @@ open class Web3(val retrofit: Retrofit, private val tasks: List<Web3Task<*, *>>
data: String, value: BigInteger,
nonce: BigInteger?, gasLimit: BigInteger, gasPrice: BigDecimal, priorityFee: BigDecimal,
isFromDApp: Boolean,
chainId: Long, rpcUrls: List<String>, sync: Boolean = false
chainId: Long, rpcUrls: List<String>
): Pair<String, BigInteger> {

return execute<SignTransactionParam, Pair<String, BigInteger>, SignTransactionTask>(
Expand All @@ -225,7 +275,7 @@ open class Web3(val retrofit: Retrofit, private val tasks: List<Web3Task<*, *>>
data, value,
nonce, gasLimit, gasPrice, priorityFee,
isFromDApp,
chainId, rpcUrls, sync
chainId, rpcUrls, sync = true
)
)
}
Expand All @@ -235,14 +285,14 @@ open class Web3(val retrofit: Retrofit, private val tasks: List<Web3Task<*, *>>
tokenId: BigInteger? = null, tokenLogo: String, tokenAmount: BigInteger, tokenSymbol: String, tokenDecimal: Int, tokenAddress: String,
isTokenNative: Boolean,
nonce: BigInteger?, gasLimit: BigInteger, gasPrice: BigDecimal, priorityFee: BigDecimal,
chainId: Long, rpcUrls: List<String>, sync: Boolean = false
chainId: Long, rpcUrls: List<String>
): Pair<String, BigInteger> {

return execute<TransferParam, Pair<String, BigInteger>, TransferTask>(
TransferParam(
walletAddress, receiverAddress, tokenId, tokenLogo, tokenAmount, tokenSymbol, tokenDecimal, tokenAddress, isTokenNative,
nonce, gasLimit, gasPrice, priorityFee,
chainId, rpcUrls, sync
chainId, rpcUrls, sync = true
)
)
}
Expand Down

0 comments on commit 40faf71

Please sign in to comment.