Interface StakePoolProgramClient


public interface StakePoolProgramClient
  • Method Summary

    Modifier and Type
    Method
    Description
     
    createClient(NativeProgramAccountClient nativeProgramClient, StakePoolAccounts stakePoolAccounts)
     
    software.sava.core.tx.Instruction
    depositSol(software.sava.core.accounts.PublicKey stakePoolProgram, StakePoolState stakePoolState, software.sava.core.accounts.PublicKey poolTokenATA, long lamportsIn)
     
    default software.sava.core.tx.Instruction
    depositSol(software.sava.rpc.json.http.response.AccountInfo<StakePoolState> stakePoolStateAccountInfo, software.sava.core.accounts.PublicKey poolTokenATA, long lamportsIn)
     
    software.sava.core.tx.Instruction
    depositSolWithSlippage(software.sava.core.accounts.PublicKey stakePoolProgram, StakePoolState stakePoolState, software.sava.core.accounts.PublicKey poolTokenATA, long lamportsIn, long minimumPoolTokensOut)
     
    default software.sava.core.tx.Instruction
    depositSolWithSlippage(software.sava.rpc.json.http.response.AccountInfo<StakePoolState> stakePoolStateAccountInfo, software.sava.core.accounts.PublicKey poolTokenATA, long lamportsIn, long minimumPoolTokensOut)
     
    software.sava.core.tx.Instruction
    depositStake(software.sava.core.accounts.PublicKey stakePoolProgram, StakePoolState stakePoolState, software.sava.core.accounts.PublicKey depositStakeAccount, software.sava.core.accounts.PublicKey validatorStakeAccount, software.sava.core.accounts.PublicKey poolTokenATA)
     
    default software.sava.core.tx.Instruction
    depositStake(software.sava.rpc.json.http.response.AccountInfo<StakePoolState> stakePoolStateAccountInfo, software.sava.core.accounts.PublicKey depositStakeAccount, software.sava.core.accounts.PublicKey validatorStakeAccount, software.sava.core.accounts.PublicKey poolTokenATA)
     
    software.sava.core.tx.Instruction
    depositStakeWithSlippage(software.sava.core.accounts.PublicKey stakePoolProgram, StakePoolState stakePoolState, software.sava.core.accounts.PublicKey depositStakeAccount, software.sava.core.accounts.PublicKey validatorStakeAccount, software.sava.core.accounts.PublicKey poolTokenATA, long minimumPoolTokensOut)
     
    default software.sava.core.tx.Instruction
    depositStakeWithSlippage(software.sava.rpc.json.http.response.AccountInfo<StakePoolState> stakePoolStateAccountInfo, software.sava.core.accounts.PublicKey depositStakeAccount, software.sava.core.accounts.PublicKey validatorStakeAccount, software.sava.core.accounts.PublicKey poolTokenATA, long minimumPoolTokensOut)
     
    static CompletableFuture<software.sava.rpc.json.http.response.AccountInfo<StakePoolState>>
    fetchProgramState(software.sava.rpc.json.http.client.SolanaRpcClient rpcClient, software.sava.core.accounts.PublicKey stakePoolPublicKey)
     
    static CompletableFuture<software.sava.rpc.json.http.response.AccountInfo<ValidatorList>>
    fetchValidatorList(software.sava.rpc.json.http.client.SolanaRpcClient rpcClient, StakePoolState programState)
     
    static software.sava.core.accounts.ProgramDerivedAddress
    findStakePoolWithdrawAuthority(software.sava.rpc.json.http.response.AccountInfo<StakePoolState> stakePoolStateAccountInfo)
     
     
    software.sava.core.accounts.PublicKey
     
    software.sava.core.accounts.SolanaAccounts
     
     
    default software.sava.core.tx.Instruction
    updateStakePoolBalance(software.sava.core.accounts.PublicKey poolProgram, StakePoolState stakePoolState)
     
    default software.sava.core.tx.Instruction
    updateStakePoolBalance(software.sava.rpc.json.http.response.AccountInfo<StakePoolState> stakePoolStateAccountInfo)
     
    software.sava.core.tx.Instruction
    withdrawSol(software.sava.core.accounts.PublicKey stakePoolProgram, StakePoolState stakePoolState, software.sava.core.accounts.PublicKey poolTokenATA, long poolTokenAmount)
     
    default software.sava.core.tx.Instruction
    withdrawSol(software.sava.rpc.json.http.response.AccountInfo<StakePoolState> stakePoolStateAccountInfo, software.sava.core.accounts.PublicKey poolTokenATA, long poolTokenAmount)
     
    software.sava.core.tx.Instruction
    withdrawSolWithSlippage(software.sava.core.accounts.PublicKey stakePoolProgram, StakePoolState stakePoolState, software.sava.core.accounts.PublicKey poolTokenATA, long poolTokenAmount, long lamportsOut)
     
    default software.sava.core.tx.Instruction
    withdrawSolWithSlippage(software.sava.rpc.json.http.response.AccountInfo<StakePoolState> stakePoolStateAccountInfo, software.sava.core.accounts.PublicKey poolTokenATA, long poolTokenAmount, long lamportsOut)
     
    software.sava.core.tx.Instruction
    withdrawStake(software.sava.core.accounts.PublicKey poolProgram, StakePoolState stakePoolState, software.sava.core.accounts.PublicKey validatorOrReserveStakeAccount, software.sava.core.accounts.PublicKey uninitializedStakeAccount, software.sava.core.accounts.PublicKey stakeAccountWithdrawalAuthority, software.sava.core.accounts.PublicKey poolTokenATA, long poolTokenAmount)
     
    default software.sava.core.tx.Instruction
    withdrawStake(software.sava.rpc.json.http.response.AccountInfo<StakePoolState> stakePoolStateAccountInfo, software.sava.core.accounts.PublicKey validatorOrReserveStakeAccount, software.sava.core.accounts.PublicKey uninitializedStakeAccount, software.sava.core.accounts.PublicKey stakeAccountWithdrawalAuthority, software.sava.core.accounts.PublicKey poolTokenATA, long poolTokenAmount)
     
    software.sava.core.tx.Instruction
    withdrawStakeWithSlippage(software.sava.core.accounts.PublicKey poolProgram, StakePoolState stakePoolState, software.sava.core.accounts.PublicKey validatorOrReserveStakeAccount, software.sava.core.accounts.PublicKey uninitializedStakeAccount, software.sava.core.accounts.PublicKey stakeAccountWithdrawalAuthority, software.sava.core.accounts.PublicKey poolTokenATA, long poolTokenAmount, long lamportsOut)
     
    default software.sava.core.tx.Instruction
    withdrawStakeWithSlippage(software.sava.rpc.json.http.response.AccountInfo<StakePoolState> stakePoolStateAccountInfo, software.sava.core.accounts.PublicKey validatorOrReserveStakeAccount, software.sava.core.accounts.PublicKey uninitializedStakeAccount, software.sava.core.accounts.PublicKey poolTokenATA, long poolTokenAmount, long lamportsOut)
     
    default software.sava.core.tx.Instruction
    withdrawStakeWithSlippage(software.sava.rpc.json.http.response.AccountInfo<StakePoolState> stakePoolStateAccountInfo, software.sava.core.accounts.PublicKey validatorOrReserveStakeAccount, software.sava.core.accounts.PublicKey uninitializedStakeAccount, software.sava.core.accounts.PublicKey stakeAccountWithdrawalAuthority, software.sava.core.accounts.PublicKey poolTokenATA, long poolTokenAmount, long lamportsOut)
     
  • Method Details

    • createClient

      static StakePoolProgramClient createClient(NativeProgramAccountClient nativeProgramClient, StakePoolAccounts stakePoolAccounts)
    • createClient

      static StakePoolProgramClient createClient(NativeProgramAccountClient nativeProgramClient)
    • nativeProgramAccountClient

      NativeProgramAccountClient nativeProgramAccountClient()
    • solanaAccounts

      software.sava.core.accounts.SolanaAccounts solanaAccounts()
    • stakePoolAccounts

      StakePoolAccounts stakePoolAccounts()
    • fetchProgramState

      static CompletableFuture<software.sava.rpc.json.http.response.AccountInfo<StakePoolState>> fetchProgramState(software.sava.rpc.json.http.client.SolanaRpcClient rpcClient, software.sava.core.accounts.PublicKey stakePoolPublicKey)
    • fetchValidatorList

      static CompletableFuture<software.sava.rpc.json.http.response.AccountInfo<ValidatorList>> fetchValidatorList(software.sava.rpc.json.http.client.SolanaRpcClient rpcClient, StakePoolState programState)
    • findStakePoolWithdrawAuthority

      static software.sava.core.accounts.ProgramDerivedAddress findStakePoolWithdrawAuthority(software.sava.rpc.json.http.response.AccountInfo<StakePoolState> stakePoolStateAccountInfo)
    • ownerPublicKey

      software.sava.core.accounts.PublicKey ownerPublicKey()
    • depositSol

      software.sava.core.tx.Instruction depositSol(software.sava.core.accounts.PublicKey stakePoolProgram, StakePoolState stakePoolState, software.sava.core.accounts.PublicKey poolTokenATA, long lamportsIn)
    • depositSol

      default software.sava.core.tx.Instruction depositSol(software.sava.rpc.json.http.response.AccountInfo<StakePoolState> stakePoolStateAccountInfo, software.sava.core.accounts.PublicKey poolTokenATA, long lamportsIn)
    • depositSolWithSlippage

      software.sava.core.tx.Instruction depositSolWithSlippage(software.sava.core.accounts.PublicKey stakePoolProgram, StakePoolState stakePoolState, software.sava.core.accounts.PublicKey poolTokenATA, long lamportsIn, long minimumPoolTokensOut)
    • depositSolWithSlippage

      default software.sava.core.tx.Instruction depositSolWithSlippage(software.sava.rpc.json.http.response.AccountInfo<StakePoolState> stakePoolStateAccountInfo, software.sava.core.accounts.PublicKey poolTokenATA, long lamportsIn, long minimumPoolTokensOut)
    • depositStake

      software.sava.core.tx.Instruction depositStake(software.sava.core.accounts.PublicKey stakePoolProgram, StakePoolState stakePoolState, software.sava.core.accounts.PublicKey depositStakeAccount, software.sava.core.accounts.PublicKey validatorStakeAccount, software.sava.core.accounts.PublicKey poolTokenATA)
    • depositStake

      default software.sava.core.tx.Instruction depositStake(software.sava.rpc.json.http.response.AccountInfo<StakePoolState> stakePoolStateAccountInfo, software.sava.core.accounts.PublicKey depositStakeAccount, software.sava.core.accounts.PublicKey validatorStakeAccount, software.sava.core.accounts.PublicKey poolTokenATA)
    • depositStakeWithSlippage

      software.sava.core.tx.Instruction depositStakeWithSlippage(software.sava.core.accounts.PublicKey stakePoolProgram, StakePoolState stakePoolState, software.sava.core.accounts.PublicKey depositStakeAccount, software.sava.core.accounts.PublicKey validatorStakeAccount, software.sava.core.accounts.PublicKey poolTokenATA, long minimumPoolTokensOut)
    • depositStakeWithSlippage

      default software.sava.core.tx.Instruction depositStakeWithSlippage(software.sava.rpc.json.http.response.AccountInfo<StakePoolState> stakePoolStateAccountInfo, software.sava.core.accounts.PublicKey depositStakeAccount, software.sava.core.accounts.PublicKey validatorStakeAccount, software.sava.core.accounts.PublicKey poolTokenATA, long minimumPoolTokensOut)
    • withdrawSol

      software.sava.core.tx.Instruction withdrawSol(software.sava.core.accounts.PublicKey stakePoolProgram, StakePoolState stakePoolState, software.sava.core.accounts.PublicKey poolTokenATA, long poolTokenAmount)
    • withdrawSol

      default software.sava.core.tx.Instruction withdrawSol(software.sava.rpc.json.http.response.AccountInfo<StakePoolState> stakePoolStateAccountInfo, software.sava.core.accounts.PublicKey poolTokenATA, long poolTokenAmount)
    • withdrawSolWithSlippage

      software.sava.core.tx.Instruction withdrawSolWithSlippage(software.sava.core.accounts.PublicKey stakePoolProgram, StakePoolState stakePoolState, software.sava.core.accounts.PublicKey poolTokenATA, long poolTokenAmount, long lamportsOut)
    • withdrawSolWithSlippage

      default software.sava.core.tx.Instruction withdrawSolWithSlippage(software.sava.rpc.json.http.response.AccountInfo<StakePoolState> stakePoolStateAccountInfo, software.sava.core.accounts.PublicKey poolTokenATA, long poolTokenAmount, long lamportsOut)
    • withdrawStake

      software.sava.core.tx.Instruction withdrawStake(software.sava.core.accounts.PublicKey poolProgram, StakePoolState stakePoolState, software.sava.core.accounts.PublicKey validatorOrReserveStakeAccount, software.sava.core.accounts.PublicKey uninitializedStakeAccount, software.sava.core.accounts.PublicKey stakeAccountWithdrawalAuthority, software.sava.core.accounts.PublicKey poolTokenATA, long poolTokenAmount)
    • withdrawStake

      default software.sava.core.tx.Instruction withdrawStake(software.sava.rpc.json.http.response.AccountInfo<StakePoolState> stakePoolStateAccountInfo, software.sava.core.accounts.PublicKey validatorOrReserveStakeAccount, software.sava.core.accounts.PublicKey uninitializedStakeAccount, software.sava.core.accounts.PublicKey stakeAccountWithdrawalAuthority, software.sava.core.accounts.PublicKey poolTokenATA, long poolTokenAmount)
    • withdrawStakeWithSlippage

      software.sava.core.tx.Instruction withdrawStakeWithSlippage(software.sava.core.accounts.PublicKey poolProgram, StakePoolState stakePoolState, software.sava.core.accounts.PublicKey validatorOrReserveStakeAccount, software.sava.core.accounts.PublicKey uninitializedStakeAccount, software.sava.core.accounts.PublicKey stakeAccountWithdrawalAuthority, software.sava.core.accounts.PublicKey poolTokenATA, long poolTokenAmount, long lamportsOut)
    • withdrawStakeWithSlippage

      default software.sava.core.tx.Instruction withdrawStakeWithSlippage(software.sava.rpc.json.http.response.AccountInfo<StakePoolState> stakePoolStateAccountInfo, software.sava.core.accounts.PublicKey validatorOrReserveStakeAccount, software.sava.core.accounts.PublicKey uninitializedStakeAccount, software.sava.core.accounts.PublicKey stakeAccountWithdrawalAuthority, software.sava.core.accounts.PublicKey poolTokenATA, long poolTokenAmount, long lamportsOut)
    • withdrawStakeWithSlippage

      default software.sava.core.tx.Instruction withdrawStakeWithSlippage(software.sava.rpc.json.http.response.AccountInfo<StakePoolState> stakePoolStateAccountInfo, software.sava.core.accounts.PublicKey validatorOrReserveStakeAccount, software.sava.core.accounts.PublicKey uninitializedStakeAccount, software.sava.core.accounts.PublicKey poolTokenATA, long poolTokenAmount, long lamportsOut)
    • updateStakePoolBalance

      default software.sava.core.tx.Instruction updateStakePoolBalance(software.sava.core.accounts.PublicKey poolProgram, StakePoolState stakePoolState)
    • updateStakePoolBalance

      default software.sava.core.tx.Instruction updateStakePoolBalance(software.sava.rpc.json.http.response.AccountInfo<StakePoolState> stakePoolStateAccountInfo)