package com.deange.quicklink.model; import java.util.HashMap; import org.apache.http.Header; import org.apache.http.HeaderElement; import org.apache.http.ParseException; public class HeaderMap extends HashMap<String, String> { private static final long serialVersionUID = -1785377065564851819L; public HeaderMap(final String... headers) { if (headers != null) { if (headers.length % 2 != 0) { throw new UnsupportedOperationException("Params length is not a multiple of two"); } for (int i = 0; i < headers.length; i += 2) { put(headers[i], headers[i + 1]); } } } public HeaderEntry[] makeHeaders() { final HeaderEntry[] headers = new HeaderEntry[size()]; int index = 0; for (Entry<String, String> header : entrySet()) { headers[index] = new HeaderEntry(header); index++; } return headers; } private class HeaderEntry implements Header { private final String mHeaderKey; private final String mHeaderValue; public HeaderEntry(final Entry<String, String> entry) { mHeaderKey = entry.getKey(); mHeaderValue = entry.getValue(); } @Override public HeaderElement[] getElements() throws ParseException { return new HeaderElement[] {}; } @Override public String getName() { return mHeaderKey; } @Override public String getValue() { return mHeaderValue; } } }