X-Git-Url: http://lists.indexdata.dk/cgi-bin?a=blobdiff_plain;f=src%2Fmain%2Fjava%2Fcom%2Findexdata%2Fmkjsf%2Fpazpar2%2FClientCommandResponse.java;h=01444ef240f6ede9976413856a5472d5e91ebdba;hb=7df6b1590eb285bca094652950a23edc3da95f70;hp=0375ca116497a2f7d37939ec2b1381271b1af806;hpb=038cea23aa13e84430b55dda29fdea9fdf64828d;p=mkjsf-moved-to-github.git diff --git a/src/main/java/com/indexdata/mkjsf/pazpar2/ClientCommandResponse.java b/src/main/java/com/indexdata/mkjsf/pazpar2/ClientCommandResponse.java index 0375ca1..01444ef 100644 --- a/src/main/java/com/indexdata/mkjsf/pazpar2/ClientCommandResponse.java +++ b/src/main/java/com/indexdata/mkjsf/pazpar2/ClientCommandResponse.java @@ -5,12 +5,13 @@ import java.io.UnsupportedEncodingException; import com.indexdata.masterkey.pazpar2.client.Pazpar2HttpResponse; -public class ClientCommandResponse implements CommandResponse { +public class ClientCommandResponse implements HttpResponseWrapper { private int statusCode; private String contentType; private byte[] content = null; private String contentString = null; + private byte[] bytesForParsing = null; public ClientCommandResponse(Pazpar2HttpResponse pz2response, ByteArrayOutputStream content) { this.content = content.toByteArray(); @@ -44,6 +45,8 @@ public class ClientCommandResponse implements CommandResponse { public String getResponseString() { if (content == null) { return contentString; + } else if (isBinary()) { + return "[binary response]"; } else { try { return new String(content,"UTF-8"); @@ -58,7 +61,30 @@ public class ClientCommandResponse implements CommandResponse { public byte[] getBytes() { return content; } + + public void setResponseToParse(String parseString) { + try { + this.bytesForParsing = parseString.getBytes("UTF-8"); + } catch (UnsupportedEncodingException e) { + e.printStackTrace(); + } + } + public byte[] getResponseToParse() { + if (bytesForParsing != null) { + return bytesForParsing; + } else if (content != null) { + return content; + } else { + try { + return contentString.getBytes("UTF-8"); + } catch (UnsupportedEncodingException e) { + e.printStackTrace(); + return null; + } + } + } + @Override public boolean isBinary() { return !contentType.contains("xml");