Interface NativeProgramClient


public interface NativeProgramClient
  • Method Details

    • createClient

      static NativeProgramClient createClient(software.sava.core.accounts.SolanaAccounts programs)
    • createClient

      static NativeProgramClient createClient()
    • getMinimumBalanceForStakeAccount

      static CompletableFuture<Long> getMinimumBalanceForStakeAccount(software.sava.rpc.json.http.client.SolanaRpcClient rpcClient)
    • accounts

      software.sava.core.accounts.SolanaAccounts accounts()
    • createAccountClient

      NativeProgramAccountClient createAccountClient(software.sava.core.accounts.meta.AccountMeta ownerAndFeePayer)
    • createAccountClient

      NativeProgramAccountClient createAccountClient(software.sava.core.accounts.PublicKey owner, software.sava.core.accounts.meta.AccountMeta feePayer)
    • fetchClockSysVar

      CompletableFuture<software.sava.rpc.json.http.response.AccountInfo<software.sava.core.accounts.sysvar.Clock>> fetchClockSysVar(software.sava.rpc.json.http.client.SolanaRpcClient rpcClient)
    • computeUnitLimit

      software.sava.core.tx.Instruction computeUnitLimit(int computeUnitLimit)
    • computeUnitPrice

      software.sava.core.tx.Instruction computeUnitPrice(long computeUnitPrice)
    • allocateAccountSpace

      software.sava.core.tx.Instruction allocateAccountSpace(software.sava.core.accounts.PublicKey newAccountPublicKey, long space)
    • syncNative

      software.sava.core.tx.Instruction syncNative(software.sava.core.accounts.PublicKey tokenAccount)
    • allocateStakeAccount

      default software.sava.core.tx.Instruction allocateStakeAccount(software.sava.core.accounts.PublicKey newAccountPublicKey)
    • fetchStakeAccountsByStakeAuthority

      CompletableFuture<List<software.sava.rpc.json.http.response.AccountInfo<StakeAccount>>> fetchStakeAccountsByStakeAuthority(software.sava.rpc.json.http.client.SolanaRpcClient rpcClient, StakeState stakeState, software.sava.core.accounts.PublicKey staker)
    • fetchStakeAccountsByStakeAuthority

      default CompletableFuture<List<software.sava.rpc.json.http.response.AccountInfo<StakeAccount>>> fetchStakeAccountsByStakeAuthority(software.sava.rpc.json.http.client.SolanaRpcClient rpcClient, software.sava.core.accounts.PublicKey staker)
    • fetchStakeAccountsByWithdrawAuthority

      CompletableFuture<List<software.sava.rpc.json.http.response.AccountInfo<StakeAccount>>> fetchStakeAccountsByWithdrawAuthority(software.sava.rpc.json.http.client.SolanaRpcClient rpcClient, StakeState stakeState, software.sava.core.accounts.PublicKey withdrawer)
    • fetchStakeAccountsByWithdrawAuthority

      default CompletableFuture<List<software.sava.rpc.json.http.response.AccountInfo<StakeAccount>>> fetchStakeAccountsByWithdrawAuthority(software.sava.rpc.json.http.client.SolanaRpcClient rpcClient, software.sava.core.accounts.PublicKey withdrawer)
    • fetchStakeAccountsByStakeAndWithdrawAuthority

      CompletableFuture<List<software.sava.rpc.json.http.response.AccountInfo<StakeAccount>>> fetchStakeAccountsByStakeAndWithdrawAuthority(software.sava.rpc.json.http.client.SolanaRpcClient rpcClient, StakeState stakeState, software.sava.core.accounts.PublicKey withdrawer)
    • fetchStakeAccountsByStakeAndWithdrawAuthority

      default CompletableFuture<List<software.sava.rpc.json.http.response.AccountInfo<StakeAccount>>> fetchStakeAccountsByStakeAndWithdrawAuthority(software.sava.rpc.json.http.client.SolanaRpcClient rpcClient, software.sava.core.accounts.PublicKey withdrawer)
    • fetchStakeAccountsWithCustodian

      CompletableFuture<List<software.sava.rpc.json.http.response.AccountInfo<StakeAccount>>> fetchStakeAccountsWithCustodian(software.sava.rpc.json.http.client.SolanaRpcClient rpcClient, StakeState stakeState, software.sava.core.accounts.PublicKey custodian)
    • fetchStakeAccountsWithCustodian

      default CompletableFuture<List<software.sava.rpc.json.http.response.AccountInfo<StakeAccount>>> fetchStakeAccountsWithCustodian(software.sava.rpc.json.http.client.SolanaRpcClient rpcClient, software.sava.core.accounts.PublicKey custodian)
    • fetchStakeAccountsForValidator

      CompletableFuture<List<software.sava.rpc.json.http.response.AccountInfo<StakeAccount>>> fetchStakeAccountsForValidator(software.sava.rpc.json.http.client.SolanaRpcClient rpcClient, StakeState stakeState, software.sava.core.accounts.PublicKey voteAccount)
    • fetchStakeAccountsForValidator

      default CompletableFuture<List<software.sava.rpc.json.http.response.AccountInfo<StakeAccount>>> fetchStakeAccountsForValidator(software.sava.rpc.json.http.client.SolanaRpcClient rpcClient, software.sava.core.accounts.PublicKey voteAccount)
    • fetchStakeAccountsForValidatorAndWithdrawAuthority

      CompletableFuture<List<software.sava.rpc.json.http.response.AccountInfo<StakeAccount>>> fetchStakeAccountsForValidatorAndWithdrawAuthority(software.sava.rpc.json.http.client.SolanaRpcClient rpcClient, StakeState stakeState, software.sava.core.accounts.PublicKey voteAccount, software.sava.core.accounts.PublicKey withdrawAuthority)
    • fetchStakeAccountsForValidatorAndWithdrawAuthority

      default CompletableFuture<List<software.sava.rpc.json.http.response.AccountInfo<StakeAccount>>> fetchStakeAccountsForValidatorAndWithdrawAuthority(software.sava.rpc.json.http.client.SolanaRpcClient rpcClient, software.sava.core.accounts.PublicKey voteAccount, software.sava.core.accounts.PublicKey withdrawAuthority)
    • fetchStakeAccountsForValidatorAndStakeAndWithdrawAuthority

      CompletableFuture<List<software.sava.rpc.json.http.response.AccountInfo<StakeAccount>>> fetchStakeAccountsForValidatorAndStakeAndWithdrawAuthority(software.sava.rpc.json.http.client.SolanaRpcClient rpcClient, StakeState stakeState, software.sava.core.accounts.PublicKey voteAccount, software.sava.core.accounts.PublicKey withdrawAuthority)
    • fetchStakeAccountsForValidatorAndStakeAndWithdrawAuthority

      default CompletableFuture<List<software.sava.rpc.json.http.response.AccountInfo<StakeAccount>>> fetchStakeAccountsForValidatorAndStakeAndWithdrawAuthority(software.sava.rpc.json.http.client.SolanaRpcClient rpcClient, software.sava.core.accounts.PublicKey voteAccount, software.sava.core.accounts.PublicKey withdrawAuthority)
    • fetchLookupTableAccountsByAuthority

      CompletableFuture<List<software.sava.rpc.json.http.response.AccountInfo<software.sava.core.accounts.lookup.AddressLookupTable>>> fetchLookupTableAccountsByAuthority(software.sava.rpc.json.http.client.SolanaRpcClient rpcClient, software.sava.core.accounts.PublicKey authority)
    • deactivateDelinquentStake

      software.sava.core.tx.Instruction deactivateDelinquentStake(software.sava.core.accounts.PublicKey delegatedStakeAccount, software.sava.core.accounts.PublicKey delinquentVoteAccount, software.sava.core.accounts.PublicKey referenceVoteAccount)
    • setStakeAccountLockup

      software.sava.core.tx.Instruction setStakeAccountLockup(software.sava.core.accounts.PublicKey initializedStakeAccount, software.sava.core.accounts.PublicKey lockupOrWithdrawAuthority, Instant timestamp, OptionalLong epoch, software.sava.core.accounts.PublicKey custodian)
    • setStakeAccountLockupChecked

      default software.sava.core.tx.Instruction setStakeAccountLockupChecked(software.sava.core.accounts.PublicKey initializedStakeAccount, software.sava.core.accounts.PublicKey lockupOrWithdrawAuthority, Instant timestamp, OptionalLong epoch)
    • setStakeAccountLockupChecked

      software.sava.core.tx.Instruction setStakeAccountLockupChecked(software.sava.core.accounts.PublicKey initializedStakeAccount, software.sava.core.accounts.PublicKey lockupOrWithdrawAuthority, software.sava.core.accounts.PublicKey newLockupAuthority, Instant timestamp, OptionalLong epoch)
    • authorizeStakeAccount

      software.sava.core.tx.Instruction authorizeStakeAccount(software.sava.core.accounts.PublicKey stakeAccount, software.sava.core.accounts.PublicKey stakeOrWithdrawAuthority, software.sava.core.accounts.PublicKey lockupAuthority, software.sava.core.accounts.PublicKey newAuthority, StakeAuthorize stakeAuthorize)
    • authorizeStakeAccount

      default software.sava.core.tx.Instruction authorizeStakeAccount(software.sava.core.accounts.PublicKey stakeAccount, software.sava.core.accounts.PublicKey stakeOrWithdrawAuthority, software.sava.core.accounts.PublicKey newAuthority, StakeAuthorize stakeAuthorize)
    • authorizeStakeAccount

      default software.sava.core.tx.Instruction authorizeStakeAccount(StakeAccount stakeAccount, software.sava.core.accounts.PublicKey newAuthority, StakeAuthorize stakeAuthorize)
    • authorizeStakeAccountChecked

      software.sava.core.tx.Instruction authorizeStakeAccountChecked(software.sava.core.accounts.PublicKey stakeAccount, software.sava.core.accounts.PublicKey stakeOrWithdrawAuthority, software.sava.core.accounts.PublicKey newStakeOrWithdrawAuthority, software.sava.core.accounts.PublicKey lockupAuthority, StakeAuthorize stakeAuthorize)
    • authorizeStakeAccountChecked

      default software.sava.core.tx.Instruction authorizeStakeAccountChecked(software.sava.core.accounts.PublicKey stakeAccount, software.sava.core.accounts.PublicKey stakeOrWithdrawAuthority, software.sava.core.accounts.PublicKey newStakeOrWithdrawAuthority, StakeAuthorize stakeAuthorize)
    • authorizeStakeAccountChecked

      default software.sava.core.tx.Instruction authorizeStakeAccountChecked(StakeAccount stakeAccount, software.sava.core.accounts.PublicKey newAuthority, StakeAuthorize stakeAuthorize)
    • authorizeStakeAccountWithSeed

      software.sava.core.tx.Instruction authorizeStakeAccountWithSeed(software.sava.core.accounts.PublicKey stakeAccount, software.sava.core.accounts.AccountWithSeed baseKeyOrWithdrawAuthority, software.sava.core.accounts.PublicKey lockupAuthority, software.sava.core.accounts.PublicKey newAuthorizedPublicKey, StakeAuthorize stakeAuthorize, software.sava.core.accounts.PublicKey authorityOwner)
    • authorizeStakeAccountWithSeed

      default software.sava.core.tx.Instruction authorizeStakeAccountWithSeed(software.sava.core.accounts.PublicKey stakeAccount, software.sava.core.accounts.AccountWithSeed baseKeyOrWithdrawAuthority, software.sava.core.accounts.PublicKey newAuthorizedPublicKey, StakeAuthorize stakeAuthorize, software.sava.core.accounts.PublicKey authorityOwner)
    • authorizeStakeAccountCheckedWithSeed

      software.sava.core.tx.Instruction authorizeStakeAccountCheckedWithSeed(software.sava.core.accounts.PublicKey stakeAccount, software.sava.core.accounts.AccountWithSeed baseKeyOrWithdrawAuthority, software.sava.core.accounts.PublicKey stakeOrWithdrawAuthority, software.sava.core.accounts.PublicKey lockupAuthority, StakeAuthorize stakeAuthorize, software.sava.core.accounts.PublicKey authorityOwner)
    • initializeStakeAccount

      software.sava.core.tx.Instruction initializeStakeAccount(software.sava.core.accounts.PublicKey unInitializedStakeAccount, software.sava.core.accounts.PublicKey staker, software.sava.core.accounts.PublicKey withdrawer, LockUp lockUp)
    • initializeStakeAccount

      default software.sava.core.tx.Instruction initializeStakeAccount(software.sava.core.accounts.PublicKey unInitializedStakeAccount, software.sava.core.accounts.PublicKey staker, software.sava.core.accounts.PublicKey withdrawer)
    • initializeStakeAccountChecked

      software.sava.core.tx.Instruction initializeStakeAccountChecked(software.sava.core.accounts.PublicKey unInitializedStakeAccount, software.sava.core.accounts.PublicKey staker, software.sava.core.accounts.PublicKey withdrawer)
    • delegateStakeAccount

      software.sava.core.tx.Instruction delegateStakeAccount(software.sava.core.accounts.PublicKey initializedStakeAccount, software.sava.core.accounts.PublicKey validatorVoteAccount, software.sava.core.accounts.PublicKey stakeAuthority)
    • delegateStakeAccount

      default software.sava.core.tx.Instruction delegateStakeAccount(StakeAccount initializedStakeAccount, software.sava.core.accounts.PublicKey validatorVoteAccount)
    • reDelegateStakeAccount

      software.sava.core.tx.Instruction reDelegateStakeAccount(StakeAccount delegatedStakeAccount, software.sava.core.accounts.PublicKey uninitializedStakeAccount, software.sava.core.accounts.PublicKey validatorVoteAccount)
    • splitStakeAccount

      software.sava.core.tx.Instruction splitStakeAccount(StakeAccount splitStakeAccount, software.sava.core.accounts.PublicKey unInitializedStakeAccount, long lamports)
    • mergeStakeAccounts

      software.sava.core.tx.Instruction mergeStakeAccounts(StakeAccount destinationStakeAccount, software.sava.core.accounts.PublicKey srcStakeAccount)
    • mergeStakeAccounts

      default software.sava.core.tx.Instruction mergeStakeAccounts(StakeAccount destinationStakeAccount, StakeAccount srcStakeAccount)
    • mergeStakeAccountKeysInto

      default List<software.sava.core.tx.Instruction> mergeStakeAccountKeysInto(StakeAccount destinationStakeAccount, Collection<software.sava.core.accounts.PublicKey> stakeAccounts)
    • mergeStakeAccountsInto

      default List<software.sava.core.tx.Instruction> mergeStakeAccountsInto(StakeAccount destinationStakeAccount, Collection<StakeAccount> stakeAccounts)
    • mergeStakeAccountInfosInto

      default List<software.sava.core.tx.Instruction> mergeStakeAccountInfosInto(StakeAccount destinationStakeAccount, Collection<software.sava.rpc.json.http.response.AccountInfo<StakeAccount>> stakeAccounts)
    • mergeStakeAccounts

      default List<software.sava.core.tx.Instruction> mergeStakeAccounts(List<StakeAccount> stakeAccounts)
    • mergeStakeAccountInfos

      default List<software.sava.core.tx.Instruction> mergeStakeAccountInfos(List<software.sava.rpc.json.http.response.AccountInfo<StakeAccount>> stakeAccounts)
    • mergeStakeAccounts

      default List<software.sava.core.tx.Instruction> mergeStakeAccounts(Collection<StakeAccount> stakeAccounts)
    • mergeStakeAccountInfos

      default List<software.sava.core.tx.Instruction> mergeStakeAccountInfos(Collection<software.sava.rpc.json.http.response.AccountInfo<StakeAccount>> stakeAccounts)
    • withdrawStakeAccount

      software.sava.core.tx.Instruction withdrawStakeAccount(StakeAccount stakeAccount, software.sava.core.accounts.PublicKey recipient, long lamports)
    • deactivateStakeAccount

      software.sava.core.tx.Instruction deactivateStakeAccount(software.sava.core.accounts.PublicKey delegatedStakeAccount, software.sava.core.accounts.PublicKey stakeAuthority)
    • deactivateStakeAccount

      default software.sava.core.tx.Instruction deactivateStakeAccount(StakeAccount delegatedStakeAccount)
    • deactivateStakeAccountInfos

      default List<software.sava.core.tx.Instruction> deactivateStakeAccountInfos(Collection<software.sava.rpc.json.http.response.AccountInfo<StakeAccount>> delegatedStakeAccounts)
    • deactivateStakeAccounts

      default List<software.sava.core.tx.Instruction> deactivateStakeAccounts(Collection<StakeAccount> delegatedStakeAccounts)
    • moveStake

      software.sava.core.tx.Instruction moveStake(StakeAccount sourceStakeAccount, software.sava.core.accounts.PublicKey destinationStakeAccount, long lamports)
    • moveLamports

      software.sava.core.tx.Instruction moveLamports(StakeAccount sourceStakeAccount, software.sava.core.accounts.PublicKey destinationStakeAccount, long lamports)