Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

refactor(java): Replace java.util.Base64 with org.stellar.sdk.Base64 to ensure compatibility on lower version Android platforms. #170

Merged
merged 2 commits into from
Sep 27, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 3 additions & 3 deletions lib/xdrgen/generators/java.rb
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,7 @@ def render_definitions(node, constants_container)
end

def add_imports_for_definition(defn, imports)
imports.add("java.util.Base64")
imports.add("org.stellar.sdk.Base64Factory")
imports.add("java.io.ByteArrayInputStream")
imports.add("java.io.ByteArrayOutputStream")

Expand Down Expand Up @@ -716,7 +716,7 @@ def render_base64(return_type, out)
out.puts <<-EOS.strip_heredoc
@Override
public String toXdrBase64() throws IOException {
return Base64.getEncoder().encodeToString(toXdrByteArray());
return Base64Factory.getInstance().encodeToString(toXdrByteArray());
}

@Override
Expand All @@ -728,7 +728,7 @@ def render_base64(return_type, out)
}

public static #{return_type} fromXdrBase64(String xdr) throws IOException {
byte[] bytes = Base64.getDecoder().decode(xdr);
byte[] bytes = Base64Factory.getInstance().decode(xdr);
return fromXdrByteArray(bytes);
}

Expand Down
6 changes: 3 additions & 3 deletions lib/xdrgen/generators/java/XdrString.erb
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ import java.io.IOException;
import java.io.InvalidClassException;
import java.nio.charset.Charset;
import java.util.Arrays;
import java.util.Base64;
import org.stellar.sdk.Base64Factory;

public class XdrString implements XdrElement {
private byte[] bytes;
Expand Down Expand Up @@ -41,7 +41,7 @@ public class XdrString implements XdrElement {

@Override
public String toXdrBase64() throws IOException {
return Base64.getEncoder().encodeToString(toXdrByteArray());
return Base64Factory.getInstance().encodeToString(toXdrByteArray());
}

@Override
Expand All @@ -53,7 +53,7 @@ public class XdrString implements XdrElement {
}

public static XdrString fromXdrBase64(String xdr, int maxSize) throws IOException {
byte[] bytes = Base64.getDecoder().decode(xdr);
byte[] bytes = Base64Factory.getInstance().decode(xdr);
return fromXdrByteArray(bytes, maxSize);
}

Expand Down
8 changes: 4 additions & 4 deletions lib/xdrgen/generators/java/XdrUnsignedHyperInteger.erb
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
package <%= @namespace %>;
package org.stellar.sdk.xdr;

import java.io.ByteArrayInputStream;
import java.io.ByteArrayOutputStream;
import java.io.IOException;
import java.math.BigInteger;
import java.util.Base64;
import java.util.Objects;
import org.stellar.sdk.Base64Factory;

/**
* Represents XDR Unsigned Hyper Integer.
Expand Down Expand Up @@ -61,7 +61,7 @@ public class XdrUnsignedHyperInteger implements XdrElement {

@Override
public String toXdrBase64() throws IOException {
return Base64.getEncoder().encodeToString(toXdrByteArray());
return Base64Factory.getInstance().encodeToString(toXdrByteArray());
}

@Override
Expand All @@ -73,7 +73,7 @@ public class XdrUnsignedHyperInteger implements XdrElement {
}

public static XdrUnsignedHyperInteger fromXdrBase64(String xdr) throws IOException {
byte[] bytes = Base64.getDecoder().decode(xdr);
byte[] bytes = Base64Factory.getInstance().decode(xdr);
return fromXdrByteArray(bytes);
}

Expand Down
8 changes: 4 additions & 4 deletions lib/xdrgen/generators/java/XdrUnsignedInteger.erb
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
package <%= @namespace %>;
package org.stellar.sdk.xdr;

import java.io.ByteArrayInputStream;
import java.io.ByteArrayOutputStream;
import java.io.IOException;
import java.util.Base64;
import java.util.Objects;
import org.stellar.sdk.Base64Factory;

/**
* Represents XDR Unsigned Integer.
Expand Down Expand Up @@ -49,7 +49,7 @@ public class XdrUnsignedInteger implements XdrElement {

@Override
public String toXdrBase64() throws IOException {
return Base64.getEncoder().encodeToString(toXdrByteArray());
return Base64Factory.getInstance().encodeToString(toXdrByteArray());
}

@Override
Expand All @@ -61,7 +61,7 @@ public class XdrUnsignedInteger implements XdrElement {
}

public static XdrUnsignedInteger fromXdrBase64(String xdr) throws IOException {
byte[] bytes = Base64.getDecoder().decode(xdr);
byte[] bytes = Base64Factory.getInstance().decode(xdr);
return fromXdrByteArray(bytes);
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
import java.io.IOException;

import static MyXDR.Constants.*;
import java.util.Base64;
import org.stellar.sdk.Base64Factory;
import java.io.ByteArrayInputStream;
import java.io.ByteArrayOutputStream;

Expand Down Expand Up @@ -49,7 +49,7 @@ public void encode(XdrDataOutputStream stream) throws IOException {
}
@Override
public String toXdrBase64() throws IOException {
return Base64.getEncoder().encodeToString(toXdrByteArray());
return Base64Factory.getInstance().encodeToString(toXdrByteArray());
}

@Override
Expand All @@ -61,7 +61,7 @@ public byte[] toXdrByteArray() throws IOException {
}

public static AccountFlags fromXdrBase64(String xdr) throws IOException {
byte[] bytes = Base64.getDecoder().decode(xdr);
byte[] bytes = Base64Factory.getInstance().decode(xdr);
return fromXdrByteArray(bytes);
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
import java.io.InvalidClassException;
import java.nio.charset.Charset;
import java.util.Arrays;
import java.util.Base64;
import org.stellar.sdk.Base64Factory;

public class XdrString implements XdrElement {
private byte[] bytes;
Expand Down Expand Up @@ -41,7 +41,7 @@ public byte[] getBytes() {

@Override
public String toXdrBase64() throws IOException {
return Base64.getEncoder().encodeToString(toXdrByteArray());
return Base64Factory.getInstance().encodeToString(toXdrByteArray());
}

@Override
Expand All @@ -53,7 +53,7 @@ public byte[] toXdrByteArray() throws IOException {
}

public static XdrString fromXdrBase64(String xdr, int maxSize) throws IOException {
byte[] bytes = Base64.getDecoder().decode(xdr);
byte[] bytes = Base64Factory.getInstance().decode(xdr);
return fromXdrByteArray(bytes, maxSize);
}

Expand Down
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
package MyXDR;
package org.stellar.sdk.xdr;

import java.io.ByteArrayInputStream;
import java.io.ByteArrayOutputStream;
import java.io.IOException;
import java.math.BigInteger;
import java.util.Base64;
import java.util.Objects;
import org.stellar.sdk.Base64Factory;

/**
* Represents XDR Unsigned Hyper Integer.
Expand Down Expand Up @@ -61,7 +61,7 @@ public BigInteger getNumber() {

@Override
public String toXdrBase64() throws IOException {
return Base64.getEncoder().encodeToString(toXdrByteArray());
return Base64Factory.getInstance().encodeToString(toXdrByteArray());
}

@Override
Expand All @@ -73,7 +73,7 @@ public byte[] toXdrByteArray() throws IOException {
}

public static XdrUnsignedHyperInteger fromXdrBase64(String xdr) throws IOException {
byte[] bytes = Base64.getDecoder().decode(xdr);
byte[] bytes = Base64Factory.getInstance().decode(xdr);
return fromXdrByteArray(bytes);
}

Expand Down
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
package MyXDR;
package org.stellar.sdk.xdr;

import java.io.ByteArrayInputStream;
import java.io.ByteArrayOutputStream;
import java.io.IOException;
import java.util.Base64;
import java.util.Objects;
import org.stellar.sdk.Base64Factory;

/**
* Represents XDR Unsigned Integer.
Expand Down Expand Up @@ -49,7 +49,7 @@ public void encode(XdrDataOutputStream stream) throws IOException {

@Override
public String toXdrBase64() throws IOException {
return Base64.getEncoder().encodeToString(toXdrByteArray());
return Base64Factory.getInstance().encodeToString(toXdrByteArray());
}

@Override
Expand All @@ -61,7 +61,7 @@ public byte[] toXdrByteArray() throws IOException {
}

public static XdrUnsignedInteger fromXdrBase64(String xdr) throws IOException {
byte[] bytes = Base64.getDecoder().decode(xdr);
byte[] bytes = Base64Factory.getInstance().decode(xdr);
return fromXdrByteArray(bytes);
}

Expand Down
6 changes: 3 additions & 3 deletions spec/output/generator_spec_java/const.x/TestArray.java
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
import java.io.IOException;

import static MyXDR.Constants.*;
import java.util.Base64;
import org.stellar.sdk.Base64Factory;
import java.io.ByteArrayInputStream;
import java.io.ByteArrayOutputStream;
import java.util.Arrays;
Expand Down Expand Up @@ -69,7 +69,7 @@ public boolean equals(Object object) {
}
@Override
public String toXdrBase64() throws IOException {
return Base64.getEncoder().encodeToString(toXdrByteArray());
return Base64Factory.getInstance().encodeToString(toXdrByteArray());
}

@Override
Expand All @@ -81,7 +81,7 @@ public byte[] toXdrByteArray() throws IOException {
}

public static TestArray fromXdrBase64(String xdr) throws IOException {
byte[] bytes = Base64.getDecoder().decode(xdr);
byte[] bytes = Base64Factory.getInstance().decode(xdr);
return fromXdrByteArray(bytes);
}

Expand Down
6 changes: 3 additions & 3 deletions spec/output/generator_spec_java/const.x/TestArray2.java
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
import java.io.IOException;

import static MyXDR.Constants.*;
import java.util.Base64;
import org.stellar.sdk.Base64Factory;
import java.io.ByteArrayInputStream;
import java.io.ByteArrayOutputStream;
import java.util.Arrays;
Expand Down Expand Up @@ -70,7 +70,7 @@ public boolean equals(Object object) {
}
@Override
public String toXdrBase64() throws IOException {
return Base64.getEncoder().encodeToString(toXdrByteArray());
return Base64Factory.getInstance().encodeToString(toXdrByteArray());
}

@Override
Expand All @@ -82,7 +82,7 @@ public byte[] toXdrByteArray() throws IOException {
}

public static TestArray2 fromXdrBase64(String xdr) throws IOException {
byte[] bytes = Base64.getDecoder().decode(xdr);
byte[] bytes = Base64Factory.getInstance().decode(xdr);
return fromXdrByteArray(bytes);
}

Expand Down
6 changes: 3 additions & 3 deletions spec/output/generator_spec_java/const.x/XdrString.java
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
import java.io.InvalidClassException;
import java.nio.charset.Charset;
import java.util.Arrays;
import java.util.Base64;
import org.stellar.sdk.Base64Factory;

public class XdrString implements XdrElement {
private byte[] bytes;
Expand Down Expand Up @@ -41,7 +41,7 @@ public byte[] getBytes() {

@Override
public String toXdrBase64() throws IOException {
return Base64.getEncoder().encodeToString(toXdrByteArray());
return Base64Factory.getInstance().encodeToString(toXdrByteArray());
}

@Override
Expand All @@ -53,7 +53,7 @@ public byte[] toXdrByteArray() throws IOException {
}

public static XdrString fromXdrBase64(String xdr, int maxSize) throws IOException {
byte[] bytes = Base64.getDecoder().decode(xdr);
byte[] bytes = Base64Factory.getInstance().decode(xdr);
return fromXdrByteArray(bytes, maxSize);
}

Expand Down
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
package MyXDR;
package org.stellar.sdk.xdr;

import java.io.ByteArrayInputStream;
import java.io.ByteArrayOutputStream;
import java.io.IOException;
import java.math.BigInteger;
import java.util.Base64;
import java.util.Objects;
import org.stellar.sdk.Base64Factory;

/**
* Represents XDR Unsigned Hyper Integer.
Expand Down Expand Up @@ -61,7 +61,7 @@ public BigInteger getNumber() {

@Override
public String toXdrBase64() throws IOException {
return Base64.getEncoder().encodeToString(toXdrByteArray());
return Base64Factory.getInstance().encodeToString(toXdrByteArray());
}

@Override
Expand All @@ -73,7 +73,7 @@ public byte[] toXdrByteArray() throws IOException {
}

public static XdrUnsignedHyperInteger fromXdrBase64(String xdr) throws IOException {
byte[] bytes = Base64.getDecoder().decode(xdr);
byte[] bytes = Base64Factory.getInstance().decode(xdr);
return fromXdrByteArray(bytes);
}

Expand Down
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
package MyXDR;
package org.stellar.sdk.xdr;

import java.io.ByteArrayInputStream;
import java.io.ByteArrayOutputStream;
import java.io.IOException;
import java.util.Base64;
import java.util.Objects;
import org.stellar.sdk.Base64Factory;

/**
* Represents XDR Unsigned Integer.
Expand Down Expand Up @@ -49,7 +49,7 @@ public void encode(XdrDataOutputStream stream) throws IOException {

@Override
public String toXdrBase64() throws IOException {
return Base64.getEncoder().encodeToString(toXdrByteArray());
return Base64Factory.getInstance().encodeToString(toXdrByteArray());
}

@Override
Expand All @@ -61,7 +61,7 @@ public byte[] toXdrByteArray() throws IOException {
}

public static XdrUnsignedInteger fromXdrBase64(String xdr) throws IOException {
byte[] bytes = Base64.getDecoder().decode(xdr);
byte[] bytes = Base64Factory.getInstance().decode(xdr);
return fromXdrByteArray(bytes);
}

Expand Down
Loading
Loading