Skip to content

Commit

Permalink
more consistent var names.
Browse files Browse the repository at this point in the history
  • Loading branch information
jpe7s committed Aug 22, 2024
1 parent 013526d commit dc0b345
Showing 1 changed file with 62 additions and 29 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,8 @@ final class GlamJupiterProgramClientImpl implements GlamJupiterProgramClient {
private final AccountMeta manager;
private final JupiterAccounts jupiterAccounts;

GlamJupiterProgramClientImpl(final GlamProgramAccountClient glamProgramAccountClient, final JupiterAccounts jupiterAccounts) {
GlamJupiterProgramClientImpl(final GlamProgramAccountClient glamProgramAccountClient,
final JupiterAccounts jupiterAccounts) {
this.glamProgramAccountClient = glamProgramAccountClient;
this.solanaAccounts = glamProgramAccountClient.solanaAccounts();
this.nativeProgramAccountClient = glamProgramAccountClient.delegatedNativeProgramAccountClient();
Expand All @@ -40,10 +41,10 @@ public JupiterAccounts jupiterAccounts() {
return jupiterAccounts;
}

private Instruction jupiterSwap(final PublicKey inputTreasuryAtaKey,
final PublicKey inputSignerAtaKey,
final PublicKey outputSignerAtaKey,
final PublicKey outputTreasuryAtaKey,
private Instruction jupiterSwap(final PublicKey inputTreasuryATA,
final PublicKey inputSignerATA,
final PublicKey outputSignerATA,
final PublicKey outputTreasuryATA,
final PublicKey inputMintKey,
final PublicKey outputMintKey,
final long amount,
Expand All @@ -52,10 +53,10 @@ private Instruction jupiterSwap(final PublicKey inputTreasuryAtaKey,
invokedProgram,
glamFundAccounts.fundPublicKey(),
glamFundAccounts.treasuryPublicKey(),
inputTreasuryAtaKey,
inputSignerAtaKey,
outputSignerAtaKey,
outputTreasuryAtaKey,
inputTreasuryATA,
inputSignerATA,
outputSignerATA,
outputTreasuryATA,
inputMintKey, outputMintKey,
manager.publicKey(),
solanaAccounts.systemProgram(),
Expand All @@ -76,37 +77,52 @@ public List<Instruction> swapChecked(final PublicKey inputMintKey,
final long amount,
final Instruction swapInstruction,
final boolean wrapSOL) {
final var inputTreasuryAtaKey = nativeProgramAccountClient.findAssociatedTokenProgramAddress(inputMintKey, inputTokenProgram.publicKey()).publicKey();
final var inputTokenProgramKey = inputTokenProgram.publicKey();
final var outputTokenProgramKey = outputTokenProgram.publicKey();

final var inputSignerAtaKey = nativeProgramAccountClient.findAssociatedTokenProgramAddressForFeePayer(inputMintKey, inputTokenProgram.publicKey()).publicKey();
final var inputTreasuryATA = nativeProgramAccountClient.findAssociatedTokenProgramAddress(
inputMintKey,
inputTokenProgramKey
).publicKey();

final var inputSignerATA = nativeProgramAccountClient.findAssociatedTokenProgramAddressForFeePayer(
inputMintKey,
inputTokenProgramKey
).publicKey();
final var createManagerInputATA = nativeProgramAccountClient.createATAForFeePayerFundedByFeePayer(
true,
inputTokenProgram,
inputSignerAtaKey,
inputSignerATA,
inputMintKey
);

final var outputSignerAtaKey = nativeProgramAccountClient.findAssociatedTokenProgramAddressForFeePayer(outputMintKey, outputTokenProgram.publicKey()).publicKey();
final var outputSignerATA = nativeProgramAccountClient.findAssociatedTokenProgramAddressForFeePayer(
outputMintKey,
outputTokenProgramKey
).publicKey();
final var createManagerOutputATA = nativeProgramAccountClient.createATAForFeePayerFundedByFeePayer(
true,
outputTokenProgram,
outputSignerAtaKey,
outputSignerATA,
outputMintKey
);

final var outputTreasuryAtaKey = nativeProgramAccountClient.findAssociatedTokenProgramAddress(outputMintKey, outputTokenProgram.publicKey()).publicKey();
final var outputTreasuryATA = nativeProgramAccountClient.findAssociatedTokenProgramAddress(
outputMintKey,
outputTokenProgramKey
).publicKey();
final var createTreasuryOutputATA = nativeProgramAccountClient.createATAForOwnerFundedByFeePayer(
true,
outputTokenProgram,
outputTreasuryAtaKey,
outputTreasuryATA,
outputMintKey
);

final var glamJupiterSwap = jupiterSwap(
inputTreasuryAtaKey,
inputSignerAtaKey,
outputSignerAtaKey,
outputTreasuryAtaKey,
inputTreasuryATA,
inputSignerATA,
outputSignerATA,
outputTreasuryATA,
inputMintKey,
outputMintKey,
amount,
Expand All @@ -118,7 +134,7 @@ public List<Instruction> swapChecked(final PublicKey inputMintKey,
nativeProgramAccountClient.createATAForOwnerFundedByFeePayer(
true,
inputTokenProgram,
inputTreasuryAtaKey,
inputTreasuryATA,
inputMintKey
),
glamProgramAccountClient.transferLamportsAndSyncNative(amount),
Expand All @@ -144,15 +160,31 @@ public Instruction swapUncheckedAndNoWrap(final PublicKey inputMintKey,
final AccountMeta outputTokenProgram,
final long amount,
final Instruction swapInstruction) {
final var inputTreasuryAtaKey = nativeProgramAccountClient.findAssociatedTokenProgramAddress(inputMintKey, inputTokenProgram.publicKey()).publicKey();
final var inputSignerAtaKey = nativeProgramAccountClient.findAssociatedTokenProgramAddressForFeePayer(inputMintKey, inputTokenProgram.publicKey()).publicKey();
final var outputSignerAtaKey = nativeProgramAccountClient.findAssociatedTokenProgramAddressForFeePayer(outputMintKey, outputTokenProgram.publicKey()).publicKey();
final var outputTreasuryAtaKey = nativeProgramAccountClient.findAssociatedTokenProgramAddress(outputMintKey, outputTokenProgram.publicKey()).publicKey();
final var inputTokenProgramKey = inputTokenProgram.publicKey();
final var outputTokenProgramKey = outputTokenProgram.publicKey();

final var inputTreasuryATA = nativeProgramAccountClient.findAssociatedTokenProgramAddress(
inputMintKey,
inputTokenProgramKey
).publicKey();
final var inputSignerATA = nativeProgramAccountClient.findAssociatedTokenProgramAddressForFeePayer(
inputMintKey,
inputTokenProgramKey
).publicKey();
final var outputSignerATA = nativeProgramAccountClient.findAssociatedTokenProgramAddressForFeePayer(
outputMintKey,
outputTokenProgramKey
).publicKey();
final var outputTreasuryATA = nativeProgramAccountClient.findAssociatedTokenProgramAddress(
outputMintKey,
outputTokenProgramKey
).publicKey();

return jupiterSwap(
inputTreasuryAtaKey,
inputSignerAtaKey,
outputSignerAtaKey,
outputTreasuryAtaKey,
inputTreasuryATA,
inputSignerATA,
outputSignerATA,
outputTreasuryATA,
inputMintKey,
outputMintKey,
amount,
Expand All @@ -174,6 +206,7 @@ public List<Instruction> swapUnchecked(final PublicKey inputMintKey,
amount,
swapInstruction
);

return wrapSOL && inputMintKey.equals(solanaAccounts.wrappedSolTokenMint())
? List.of(glamProgramAccountClient.transferLamportsAndSyncNative(amount), glamJupiterSwap)
: List.of(glamJupiterSwap);
Expand Down

0 comments on commit dc0b345

Please sign in to comment.