Skip to content

Commit 0def8cc

Browse files
authored
Replace org.bson.internal.Base64 with java.util.Base64 (#854)
JAVA-4443
1 parent 4618a1c commit 0def8cc

File tree

10 files changed

+25
-230
lines changed

10 files changed

+25
-230
lines changed

bson/src/main/org/bson/internal/Base64.java

Lines changed: 0 additions & 151 deletions
This file was deleted.

bson/src/main/org/bson/json/ExtendedJsonBinaryConverter.java

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,15 +17,16 @@
1717
package org.bson.json;
1818

1919
import org.bson.BsonBinary;
20-
import org.bson.internal.Base64;
20+
21+
import java.util.Base64;
2122

2223
class ExtendedJsonBinaryConverter implements Converter<BsonBinary> {
2324

2425
@Override
2526
public void convert(final BsonBinary value, final StrictJsonWriter writer) {
2627
writer.writeStartObject();
2728
writer.writeStartObject("$binary");
28-
writer.writeString("base64", Base64.encode(value.getData()));
29+
writer.writeString("base64", Base64.getEncoder().encodeToString(value.getData()));
2930
writer.writeString("subType", String.format("%02X", value.getType()));
3031
writer.writeEndObject();
3132
writer.writeEndObject();

bson/src/main/org/bson/json/JsonReader.java

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,6 @@
2828
import org.bson.BsonTimestamp;
2929
import org.bson.BsonType;
3030
import org.bson.BsonUndefined;
31-
import org.bson.internal.Base64;
3231
import org.bson.types.Decimal128;
3332
import org.bson.types.MaxKey;
3433
import org.bson.types.MinKey;
@@ -39,6 +38,7 @@
3938
import java.text.ParsePosition;
4039
import java.text.SimpleDateFormat;
4140
import java.time.format.DateTimeParseException;
41+
import java.util.Base64;
4242
import java.util.Calendar;
4343
import java.util.Date;
4444
import java.util.Locale;
@@ -704,7 +704,7 @@ private BsonBinary visitBinDataConstructor() {
704704
}
705705
verifyToken(JsonTokenType.RIGHT_PAREN);
706706

707-
byte[] bytes = Base64.decode(bytesToken.getValue(String.class));
707+
byte[] bytes = Base64.getDecoder().decode(bytesToken.getValue(String.class));
708708
return new BsonBinary(subTypeToken.getValue(Integer.class).byteValue(), bytes);
709709
}
710710

@@ -949,7 +949,7 @@ private BsonBinary visitBinDataExtendedJson(final String firstKey) {
949949
byte type;
950950
if (firstNestedKey.equals("base64")) {
951951
verifyToken(JsonTokenType.COLON);
952-
data = Base64.decode(readStringFromExtendedJson());
952+
data = Base64.getDecoder().decode(readStringFromExtendedJson());
953953
verifyToken(JsonTokenType.COMMA);
954954
verifyString("subType");
955955
verifyToken(JsonTokenType.COLON);
@@ -960,7 +960,7 @@ private BsonBinary visitBinDataExtendedJson(final String firstKey) {
960960
verifyToken(JsonTokenType.COMMA);
961961
verifyString("base64");
962962
verifyToken(JsonTokenType.COLON);
963-
data = Base64.decode(readStringFromExtendedJson());
963+
data = Base64.getDecoder().decode(readStringFromExtendedJson());
964964
} else {
965965
throw new JsonParseException("Unexpected key for $binary: " + firstNestedKey);
966966
}
@@ -991,7 +991,7 @@ private BsonBinary visitLegacyBinaryExtendedJson(final String firstKey) {
991991
byte type;
992992

993993
if (firstKey.equals("$binary")) {
994-
data = Base64.decode(readStringFromExtendedJson());
994+
data = Base64.getDecoder().decode(readStringFromExtendedJson());
995995
verifyToken(JsonTokenType.COMMA);
996996
verifyString("$type");
997997
verifyToken(JsonTokenType.COLON);
@@ -1001,7 +1001,7 @@ private BsonBinary visitLegacyBinaryExtendedJson(final String firstKey) {
10011001
verifyToken(JsonTokenType.COMMA);
10021002
verifyString("$binary");
10031003
verifyToken(JsonTokenType.COLON);
1004-
data = Base64.decode(readStringFromExtendedJson());
1004+
data = Base64.getDecoder().decode(readStringFromExtendedJson());
10051005
}
10061006
verifyToken(JsonTokenType.END_OBJECT);
10071007

bson/src/main/org/bson/json/LegacyExtendedJsonBinaryConverter.java

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,14 +17,15 @@
1717
package org.bson.json;
1818

1919
import org.bson.BsonBinary;
20-
import org.bson.internal.Base64;
20+
21+
import java.util.Base64;
2122

2223
class LegacyExtendedJsonBinaryConverter implements Converter<BsonBinary> {
2324

2425
@Override
2526
public void convert(final BsonBinary value, final StrictJsonWriter writer) {
2627
writer.writeStartObject();
27-
writer.writeString("$binary", Base64.encode(value.getData()));
28+
writer.writeString("$binary", Base64.getEncoder().encodeToString(value.getData()));
2829
writer.writeString("$type", String.format("%02X", value.getType()));
2930
writer.writeEndObject();
3031
}

bson/src/main/org/bson/json/ShellBinaryConverter.java

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,14 +17,15 @@
1717
package org.bson.json;
1818

1919
import org.bson.BsonBinary;
20-
import org.bson.internal.Base64;
20+
21+
import java.util.Base64;
2122

2223
import static java.lang.String.format;
2324

2425
class ShellBinaryConverter implements Converter<BsonBinary> {
2526
@Override
2627
public void convert(final BsonBinary value, final StrictJsonWriter writer) {
2728
writer.writeRaw(format("new BinData(%s, \"%s\")", Integer.toString(value.getType() & 0xFF),
28-
Base64.encode(value.getData())));
29+
Base64.getEncoder().encodeToString(value.getData())));
2930
}
3031
}

bson/src/test/unit/org/bson/json/Base64Specification.groovy

Lines changed: 0 additions & 42 deletions
This file was deleted.

driver-core/src/main/com/mongodb/internal/connection/AuthorizationHeader.java

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -16,15 +16,14 @@
1616

1717
package com.mongodb.internal.connection;
1818

19-
import org.bson.internal.Base64;
20-
2119
import javax.crypto.Mac;
2220
import javax.crypto.spec.SecretKeySpec;
2321
import javax.security.sasl.SaslException;
2422
import java.nio.charset.StandardCharsets;
2523
import java.security.MessageDigest;
2624
import java.security.NoSuchAlgorithmException;
2725
import java.util.Arrays;
26+
import java.util.Base64;
2827
import java.util.HashMap;
2928
import java.util.List;
3029
import java.util.Map;
@@ -94,7 +93,7 @@ private Map<String, String> getRequestHeaders() {
9493
requestHeaders.put("Content-Length", String.valueOf(this.body.length()));
9594
requestHeaders.put("Host", this.host);
9695
requestHeaders.put("X-Amz-Date", this.timestamp);
97-
requestHeaders.put("X-MongoDB-Server-Nonce", Base64.encode(this.nonce));
96+
requestHeaders.put("X-MongoDB-Server-Nonce", Base64.getEncoder().encodeToString(this.nonce));
9897
requestHeaders.put("X-MongoDB-GS2-CB-Flag", "n");
9998
if (this.sessionToken != null) {
10099
requestHeaders.put("X-Amz-Security-Token", this.sessionToken);

0 commit comments

Comments
 (0)