Skip to content

Commit d502cda

Browse files
committed
Improving the scoping of one of the Abstract Base classes so that it is package private. It is not important that it is visible in the SDK, so instead of exposing the abstract class an interface is exposed.
1 parent 30a2529 commit d502cda

File tree

6 files changed

+45
-13
lines changed

6 files changed

+45
-13
lines changed

src/main/java/com/spectralogic/ds3client/NetworkClientImpl.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
package com.spectralogic.ds3client;
22

3-
import com.spectralogic.ds3client.commands.AbstractRequest;
3+
import com.spectralogic.ds3client.commands.Ds3Request;
44
import com.spectralogic.ds3client.models.SignatureDetails;
55
import com.spectralogic.ds3client.networking.ConnectionDetails;
66
import com.spectralogic.ds3client.networking.NetUtils;
@@ -43,7 +43,7 @@ public ConnectionDetails getConnectionDetails() {
4343
return connectionDetails;
4444
}
4545

46-
public CloseableHttpResponse getResponse(final AbstractRequest request) throws IOException, SignatureException {
46+
public CloseableHttpResponse getResponse(final Ds3Request request) throws IOException, SignatureException {
4747
final HttpHost host = getHost(connectionDetails);
4848
final HttpRequest httpRequest = getHttpRequest(request);
4949
final String date = DateFormatter.dateToRfc882();
@@ -94,7 +94,7 @@ private int getPort(final URL url) {
9494
return port;
9595
}
9696

97-
private HttpRequest getHttpRequest(final AbstractRequest request) {
97+
private HttpRequest getHttpRequest(final Ds3Request request) {
9898
final String verb = request.getVerb().toString();
9999
final InputStream stream = request.getStream();
100100
final Map<String, String> queryParams = request.getQueryParams();

src/main/java/com/spectralogic/ds3client/commands/AbstractRequest.java

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,40 +1,42 @@
11
package com.spectralogic.ds3client.commands;
22

3-
import com.spectralogic.ds3client.HttpVerb;
43
import org.apache.http.entity.ContentType;
54

65
import java.io.InputStream;
76
import java.util.HashMap;
87
import java.util.Map;
98

10-
public abstract class AbstractRequest {
9+
abstract class AbstractRequest implements Ds3Request {
1110

1211
private final Map<String, String> headers = new HashMap<>();
1312
private final Map<String, String> queryParams = new HashMap<>();
1413

15-
public abstract String getPath();
16-
public abstract HttpVerb getVerb();
17-
14+
@Override
1815
public ContentType getContentType() {
1916
return ContentType.APPLICATION_XML;
2017
}
2118

19+
@Override
2220
public InputStream getStream() {
2321
return null;
2422
}
2523

24+
@Override
2625
public long getSize() {
2726
return 0;
2827
}
2928

29+
@Override
3030
public String getMd5() {
3131
return "";
3232
}
3333

34+
@Override
3435
public final Map<String, String> getQueryParams() {
3536
return queryParams;
3637
}
3738

39+
@Override
3840
public final Map<String, String> getHeaders() {
3941
return headers;
4042
}

src/main/java/com/spectralogic/ds3client/commands/AbstractResponse.java

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
package com.spectralogic.ds3client.commands;
22

3-
import java.io.Closeable;
43
import java.io.IOException;
54
import java.io.InputStream;
65
import java.io.StringWriter;
@@ -12,7 +11,7 @@
1211
import com.spectralogic.ds3client.serializer.XmlOutput;
1312
import com.spectralogic.ds3client.models.Error;
1413

15-
abstract class AbstractResponse implements Closeable {
14+
abstract class AbstractResponse implements Ds3Response{
1615
final static String UTF8 = "UTF-8";
1716

1817
final private CloseableHttpResponse response;
@@ -62,4 +61,4 @@ private String readResponseString() throws IOException {
6261
public void close() throws IOException {
6362
response.close();
6463
}
65-
}
64+
}
Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
package com.spectralogic.ds3client.commands;
2+
3+
import com.spectralogic.ds3client.HttpVerb;
4+
import org.apache.http.entity.ContentType;
5+
6+
import java.io.InputStream;
7+
import java.util.Map;
8+
9+
public interface Ds3Request {
10+
11+
public String getPath();
12+
public HttpVerb getVerb();
13+
14+
public ContentType getContentType();
15+
16+
public InputStream getStream();
17+
18+
public long getSize();
19+
20+
public String getMd5();
21+
22+
public Map<String, String> getQueryParams();
23+
24+
public Map<String, String> getHeaders();
25+
}
Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
package com.spectralogic.ds3client.commands;
2+
3+
import java.io.Closeable;
4+
5+
public interface Ds3Response extends Closeable {
6+
}
Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,12 @@
11
package com.spectralogic.ds3client.networking;
22

3-
import com.spectralogic.ds3client.commands.AbstractRequest;
3+
import com.spectralogic.ds3client.commands.Ds3Request;
44
import org.apache.http.client.methods.CloseableHttpResponse;
55

66
import java.io.IOException;
77
import java.security.SignatureException;
88

99
public interface NetworkClient {
10-
public CloseableHttpResponse getResponse(final AbstractRequest request) throws IOException, SignatureException;
10+
public CloseableHttpResponse getResponse(final Ds3Request request) throws IOException, SignatureException;
1111
public ConnectionDetails getConnectionDetails();
1212
}

0 commit comments

Comments
 (0)