Skip to content

Commit a32effb

Browse files
Fixing broken tests
1 parent 8094502 commit a32effb

File tree

2 files changed

+10
-13
lines changed

2 files changed

+10
-13
lines changed

src/main/java/com/mastercard/developer/encryption/jwe/JWEHeader.java

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,9 @@
11
package com.mastercard.developer.encryption.jwe;
22

3+
import com.jayway.jsonpath.spi.json.JsonProvider;
34
import com.mastercard.developer.json.JsonEngine;
45
import com.mastercard.developer.utils.EncodingUtils;
56

6-
import java.util.LinkedHashMap;
7-
87
public final class JWEHeader {
98
private final String enc;
109
private final String kid;
@@ -38,12 +37,13 @@ String toJson() {
3837
}
3938

4039
static JWEHeader parseJweHeader(String encodedHeader, JsonEngine jsonEngine) {
41-
LinkedHashMap headerObj = (LinkedHashMap) jsonEngine.parse(new String(EncodingUtils.base64Decode(encodedHeader)));
42-
return new JWEHeader(
43-
headerObj.get("alg").toString(),
44-
headerObj.get("enc").toString(),
45-
headerObj.get("kid").toString(),
46-
headerObj.get("cty") != null ? headerObj.get("cty").toString() : null);
40+
Object headerObj = jsonEngine.parse(new String(EncodingUtils.base64Decode(encodedHeader)));
41+
JsonProvider jsonProvider = jsonEngine.getJsonProvider();
42+
String alg = jsonProvider.getMapValue(headerObj, "alg").toString();
43+
String enc = jsonProvider.getMapValue(headerObj, "enc").toString();
44+
String kid = jsonProvider.getMapValue(headerObj, "kid").toString();
45+
Object cty = jsonProvider.getMapValue(headerObj, "cty");
46+
return new JWEHeader(alg, enc, kid, cty != null ? cty.toString() : null);
4747
}
4848

4949
String getEnc() { return enc; }

src/main/java/com/mastercard/developer/utils/EncodingUtils.java

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -50,14 +50,11 @@ public static byte[] base64Decode(String value) {
5050
if (null == value) {
5151
throw new IllegalArgumentException("Can't base64 decode a null value!");
5252
}
53+
value = value.replaceAll("\n", "");
5354
try {
5455
return Base64.getDecoder().decode(value);
5556
} catch (Exception ex) {
56-
try {
57-
return Base64.getUrlDecoder().decode(value);
58-
} catch (Exception e) {
59-
return Base64.getMimeDecoder().decode(value);
60-
}
57+
return Base64.getUrlDecoder().decode(value);
6158
}
6259
}
6360

0 commit comments

Comments
 (0)