Skip to content

Commit

Permalink
formatting feedback (bunq#93)
Browse files Browse the repository at this point in the history
  • Loading branch information
tubbynl committed Jun 19, 2018
1 parent abb8cb6 commit 0ebd723
Show file tree
Hide file tree
Showing 6 changed files with 47 additions and 28 deletions.
6 changes: 3 additions & 3 deletions src/main/java/com/bunq/sdk/http/ApiClient.java
Original file line number Diff line number Diff line change
Expand Up @@ -238,7 +238,7 @@ private void setDefaultHeaders(BunqRequestBuilder httpEntity) {
BunqHeader.userAgent.addTo(httpEntity);
BunqHeader.language.addTo(httpEntity);
BunqHeader.region.addTo(httpEntity);
BunqHeader.clientRequestId.addTo(httpEntity,UUID.randomUUID().toString());
BunqHeader.clientRequestId.addTo(httpEntity, UUID.randomUUID().toString());
BunqHeader.geolocation.addTo(httpEntity);
}

Expand All @@ -256,8 +256,8 @@ private void setSessionHeaders(BunqRequestBuilder requestBuilder) {
String sessionToken = apiContext.getSessionToken();

if (sessionToken != null) {
BunqHeader.clientAuthentication.addTo(requestBuilder,sessionToken);
BunqHeader.clientSignature.addTo(requestBuilder,generateSignature(requestBuilder));
BunqHeader.clientAuthentication.addTo(requestBuilder, sessionToken);
BunqHeader.clientSignature.addTo(requestBuilder, generateSignature(requestBuilder));
}
}

Expand Down
6 changes: 3 additions & 3 deletions src/main/java/com/bunq/sdk/http/BunqBasicHeader.java
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ public class BunqBasicHeader {
private final BunqHeader name;
private final String value;

public static BunqBasicHeader get(BunqHeader header,Response response) {
public static BunqBasicHeader get(BunqHeader header, Response response) {
return new BunqBasicHeader(header, response.header(header.getHeader()));
}

Expand All @@ -35,7 +35,7 @@ public String getValue() {
}

private String forSigning() {
return getName().getHeader()+DELIMITER_HEADER_NAME_AND_VALUE+getValue();
return getName().getHeader() + DELIMITER_HEADER_NAME_AND_VALUE + getValue();
}

public static String collectForSigning(
Expand Down Expand Up @@ -67,4 +67,4 @@ public static String collectForSigning(

return stringBuffer.toString();
}
}
}
16 changes: 10 additions & 6 deletions src/main/java/com/bunq/sdk/http/BunqHeader.java
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@

public enum BunqHeader {
attachmentDescription("X-Bunq-Attachment-Description"),
cacheControl("Cache-Control","no-cache"),
cacheControl("Cache-Control", "no-cache"),
contentType("Content-Type"),
clientAuthentication("X-Bunq-Client-Authentication"),
clientEncryptionHMAC("X-Bunq-Client-Encryption-Hmac"),
Expand All @@ -26,7 +26,7 @@ public enum BunqHeader {
private final String defaultValue;

BunqHeader(String header) {
this(header,null);
this(header, null);
}

BunqHeader(String header, String defaultValue) {
Expand All @@ -53,15 +53,19 @@ public String getDefaultValue() {
}

private String getOrDefault(String value) {
return value != null ? value : getDefaultValue();
if (value != null) {
return value;
}

return getDefaultValue();
}

public void addTo(Map<String,String> headers, String value) {
public void addTo(Map<String, String> headers, String value) {
headers.put(getHeader(), getOrDefault(value));
}

public void addTo(BunqRequestBuilder requestBuilder) {
addTo(requestBuilder,null);
addTo(requestBuilder, null);
}

public void addTo(BunqRequestBuilder requestBuilder, String value) {
Expand All @@ -86,7 +90,7 @@ private String findKey(Collection<String> keys) {
return null;
}

public String getOrDefault(Map<String,String> headers) {
public String getOrDefault(Map<String, String> headers) {
String key = findKey(headers.keySet());
if (key != null && headers.get(key) != null) {
return headers.get(key);
Expand Down
2 changes: 1 addition & 1 deletion src/main/java/com/bunq/sdk/http/BunqRequestBuilder.java
Original file line number Diff line number Diff line change
Expand Up @@ -75,7 +75,7 @@ public BunqRequestBuilder url(URL url) {
return (BunqRequestBuilder) super.url(url);
}

private void addToAllHeader(String name,String value) {
private void addToAllHeader(String name, String value) {
BunqHeader header = BunqHeader.parse(name);

if (header != null) {
Expand Down
26 changes: 17 additions & 9 deletions src/main/java/com/bunq/sdk/security/SecurityUtils.java
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,10 @@
import com.bunq.sdk.context.ApiContext;
import com.bunq.sdk.exception.BunqException;
import com.bunq.sdk.exception.UncaughtExceptionError;
import com.bunq.sdk.http.*;
import com.bunq.sdk.http.BunqBasicHeader;
import com.bunq.sdk.http.BunqHeader;
import com.bunq.sdk.http.BunqRequestBuilder;
import com.bunq.sdk.http.HttpMethod;
import okhttp3.Headers;
import okhttp3.Response;
import okio.BufferedSink;
Expand All @@ -30,7 +33,12 @@
import java.security.spec.InvalidKeySpecException;
import java.security.spec.PKCS8EncodedKeySpec;
import java.security.spec.X509EncodedKeySpec;
import java.util.*;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Base64;
import java.util.Collections;
import java.util.List;
import java.util.Map;

/**
* Static lib containing methods for handling encryption.
Expand Down Expand Up @@ -383,7 +391,7 @@ private static String generateRequestHeadersSortedString(BunqRequestBuilder bunq
return BunqBasicHeader.collectForSigning(
bunqRequestBuilder.getAllHeader(),
null,
Arrays.asList(BunqHeader.cacheControl,BunqHeader.userAgent)
Arrays.asList(BunqHeader.cacheControl, BunqHeader.userAgent)
);
}

Expand Down Expand Up @@ -459,7 +467,7 @@ public static void validateResponseSignature(
response.headers()
);
Signature signature = getSignatureInstance();
BunqBasicHeader serverSignature = BunqBasicHeader.get(BunqHeader.serverSignature,response);
BunqBasicHeader serverSignature = BunqBasicHeader.get(BunqHeader.serverSignature, response);

byte[] serverSignatureBase64Bytes = serverSignature.getValue().getBytes();
byte[] serverSignatureDecoded = Base64.getDecoder().decode(serverSignatureBase64Bytes);
Expand All @@ -478,12 +486,12 @@ private static byte[] getResponseBytes(
BunqHeader header = BunqHeader.parse(allHeader.name(i));

if (header != null && !BunqHeader.serverSignature.equals(header)) {
allResponseHeader.add(new BunqBasicHeader(header,allHeader.get(allHeader.name(i))));
allResponseHeader.add(new BunqBasicHeader(header, allHeader.get(allHeader.name(i))));
}
}

try {
outputStream.write(getResponseHeadBytes(responseCode,allResponseHeader));
outputStream.write(getResponseHeadBytes(responseCode, allResponseHeader));
outputStream.write(responseBodyBytes);
} catch (IOException exception) {
throw new UncaughtExceptionError(exception);
Expand All @@ -492,9 +500,9 @@ private static byte[] getResponseBytes(
return outputStream.toByteArray();
}

private static byte[] getResponseHeadBytes(int responseCode, List<BunqBasicHeader> responseHeaders) {
String requestHeadString = responseCode + NEWLINE +
generateResponseHeadersSortedString(responseHeaders) + NEWLINE + NEWLINE;
private static byte[] getResponseHeadBytes(int code, List<BunqBasicHeader> headers) {
String requestHeadString = code + NEWLINE +
generateResponseHeadersSortedString(headers) + NEWLINE + NEWLINE;

return requestHeadString.getBytes();
}
Expand Down
19 changes: 13 additions & 6 deletions src/test/java/com/bunq/sdk/http/BunqHeaderTest.java
Original file line number Diff line number Diff line change
@@ -1,10 +1,14 @@
package com.bunq.sdk.http;

import org.junit.Test;
import java.util.Collections;
import java.util.Map;
import java.util.HashMap;

import java.util.*;
import org.junit.Test;

import static org.junit.Assert.*;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertFalse;
import static org.junit.Assert.assertTrue;

public class BunqHeaderTest {
@Test
Expand Down Expand Up @@ -40,9 +44,12 @@ public void isBunq() {
public void getOrDefault() {
BunqHeader h = BunqHeader.clientResponseId;

assertEquals("test-id", h.getOrDefault(Collections.singletonMap("x-bunq-client-response-id", "test-id")));
assertEquals("Could not determine response id.", h.getOrDefault(Collections.singletonMap("x-bunq-some-other-header", "test-id")));
assertEquals("Could not determine response id.", h.getOrDefault(Collections.<String,String>emptyMap()));
assertEquals("test-id",
h.getOrDefault(Collections.singletonMap("x-bunq-client-response-id", "test-id")));
assertEquals("Could not determine response id.",
h.getOrDefault(Collections.singletonMap("x-bunq-some-other-header", "test-id")));
assertEquals("Could not determine response id.",
h.getOrDefault(Collections.<String, String>emptyMap()));
}

@Test
Expand Down

0 comments on commit 0ebd723

Please sign in to comment.