private Map<String, String> extractPropertiesFromHeaders(HttpResponse response, String keyPrefix) { Map<String, String> properties = new HashMap<String, String>(); String prefix = HEADER_PREFIX + (keyPrefix != null ? keyPrefix : ""); for (Header header : response.getResponseHeaders()) { String name = header.getName(); if (name.startsWith(prefix)) { properties.put(name.substring(prefix.length()), header.getValue()); } } return properties; }
private Map<String, String> extractNonPropertiesHeaders(HttpResponse response) { Map<String, String> headers = new HashMap<String, String>(); for (Header header : response.getResponseHeaders()) { String name = header.getName(); if (!name.startsWith(HEADER_PREFIX)) { if (name.equals(HttpHeaders.CONTENT_TYPE)) { headers.put(CONTENT_MIMETYPE, header.getValue()); } else if (name.equals(HttpHeaders.CONTENT_MD5) || name.equals(HttpHeaders.ETAG)) { headers.put(CONTENT_CHECKSUM, header.getValue()); } else if (name.equals(HttpHeaders.CONTENT_LENGTH)) { headers.put(CONTENT_SIZE, header.getValue()); } else if (name.equals(HttpHeaders.LAST_MODIFIED)) { headers.put(CONTENT_MODIFIED, header.getValue()); } else if (name.equals(CONTENT_ENCODING)) { headers.put(CONTENT_ENCODING, header.getValue()); } } } return headers; }
private BitIntegrityReportProperties extractBitIntegrityProperties(HttpResponse response) throws ParseException { BitIntegrityReportProperties properties = new BitIntegrityReportProperties(); for (Header header : response.getResponseHeaders()) { String name = header.getName(); if (name.equals(HttpHeaders.BIT_INTEGRITY_REPORT_RESULT)) { properties.setResult(BitIntegrityReportResult.valueOf(header.getValue())); } else if (name.equals(HttpHeaders.BIT_INTEGRITY_REPORT_COMPLETION_DATE)) { SimpleDateFormat format = new SimpleDateFormat(DateFormat.DEFAULT_FORMAT.getPattern()); properties.setCompletionDate(format.parse(header.getValue())); } else if (name.equals(HttpHeaders.CONTENT_LENGTH)) { properties.setSize(Long.valueOf(header.getValue())); } } return properties; }