1 package com.indexdata.mkjsf.pazpar2;
\r
3 import java.io.ByteArrayOutputStream;
\r
4 import java.io.UnsupportedEncodingException;
\r
6 import com.indexdata.masterkey.pazpar2.client.Pazpar2HttpResponse;
\r
8 public class ClientCommandResponse implements HttpResponseWrapper {
\r
10 private int statusCode;
\r
11 private String contentType;
\r
12 private byte[] content = null;
\r
13 private String contentString = null;
\r
14 private byte[] bytesForParsing = null;
\r
16 public ClientCommandResponse(Pazpar2HttpResponse pz2response, ByteArrayOutputStream content) {
\r
17 this.content = content.toByteArray();
\r
18 this.statusCode = pz2response.getStatusCode();
\r
19 this.contentType = pz2response.getContentType();
\r
22 public ClientCommandResponse(int statusCode, String content, String contentType) {
\r
23 this.statusCode = statusCode;
\r
24 this.contentString = content;
\r
25 this.contentType = contentType;
\r
28 public ClientCommandResponse(int statusCode, byte[] content, String contentType) {
\r
29 this.statusCode = statusCode;
\r
30 this.content = content;
\r
31 this.contentType = contentType;
\r
35 public int getStatusCode() {
\r
40 public String getContentType() {
\r
45 public String getResponseString() {
\r
46 if (content == null) {
\r
47 return contentString;
\r
50 return new String(content,"UTF-8");
\r
51 } catch (UnsupportedEncodingException e) {
\r
52 e.printStackTrace();
\r
53 return "<error>unsupported encoding</error>";
\r
59 public byte[] getBytes() {
\r
63 public void setResponseToParse(String parseString) {
\r
65 this.bytesForParsing = parseString.getBytes("UTF-8");
\r
66 } catch (UnsupportedEncodingException e) {
\r
67 e.printStackTrace();
\r
71 public byte[] getResponseToParse() {
\r
72 if (bytesForParsing != null) {
\r
73 return bytesForParsing;
\r
74 } else if (content != null) {
\r
78 return contentString.getBytes("UTF-8");
\r
79 } catch (UnsupportedEncodingException e) {
\r
80 e.printStackTrace();
\r
87 public boolean isBinary() {
\r
88 return !contentType.contains("xml");
\r