package de.tuberlin.onedrivesdk.networking;
import com.squareup.okhttp.Response;
import java.io.IOException;
import java.util.List;
/**
* Wrapper for OkHTTP Responses received by the ConcreteOneDriveSDK
*/
public class ConcreteOneResponse implements OneResponse {
private Response response;
private byte[] body;
public ConcreteOneResponse(Response response) throws IOException {
this.response = response;
try {
this.body = response.body().bytes();
} catch (Exception e) {
this.body = new byte[0];
}
}
@Override
public String getBodyAsString() {
return new String(this.body);
}
@Override
public byte[] getBodyAsBytes() {
return body;
}
@Override
public int getStatusCode() {
return this.response.code();
}
@Override
public List<String> getHeaders(String key){
return this.response.headers(key);
}
@Override
public boolean wasSuccess() {
return this.response.isSuccessful();
}
@Override
public String getHeader(String key) {
return this.response.header(key);
}
@Override
public String toString() {
return "Response{" +
"response=" + response +
", body='" + getBodyAsString() + '\'' +
'}';
}
}