/** * Creates new instance of {@link MultivaluedMapImpl} from specfied map * * @param map * the map */ public MultivaluedMapImpl(MultivaluedMap<K, V> map) { addAll(map); }
/** * {@inheritDoc} */ @Override public void add(K k, V v) { getList(k).add(v); }
/** * Maps the headers object value map into simple string representation. * * @param httpHeaders the http headers map * * @param <TKey> the key type * @param <TVal> the value type * * @return the result map */ private <TKey, TVal> MultivaluedMap<TKey, TVal> getHeaders(Map<TKey, List<TVal>> httpHeaders) { if(httpHeaders == null) { return null; } MultivaluedMap<TKey, TVal> result = new MultivaluedMapImpl<TKey, TVal>(); for (Map.Entry<TKey, List<TVal>> entry : httpHeaders.entrySet()) { result.put(entry.getKey(), entry.getValue()); } return result; }
/** * {@inheritDoc} */ @Override public void putSingle(K key, V value) { List<V> list = new ArrayList<V>(); list.add(value); put(key, list); }
/** * {@inheritDoc} */ @Override public V getFirst(K k) { List<V> list = get(k); return list != null ? list.get(0) : null; }
/** * Maps the headers object value map into simple string representation. * * @param httpHeaders * the http headers map * @param <TKey> * the key type * @param <TVal> * the value type * * @return the result map */ private <TKey, TVal> MultivaluedMap<TKey, TVal> getHeaders(Map<TKey, List<TVal>> httpHeaders) { if (httpHeaders == null) { return null; } MultivaluedMap<TKey, TVal> result = new MultivaluedMapImpl<TKey, TVal>(); for (Map.Entry<TKey, List<TVal>> entry : httpHeaders.entrySet()) { result.put(entry.getKey(), entry.getValue()); } return result; }
/** * {@inheritDoc} */ @Override public void putSingle(K key, V value) { List<V> list = new ArrayList<V>(); list.add(value); put(key, list); }
/** * {@inheritDoc} */ @Override public V getFirst(K k) { List<V> list = get(k); return list != null ? list.get(0) : null; }
/** * Builds the {@link HttpRequest}. * * @return the {@link HttpRequest} */ private HttpRequest buildHttpRequest() { HttpRequestImpl request = new HttpRequestImpl(); if (request != null) { request.setContentType(getMediaTypeName(containerRequest.getMediaType())); // TODO accessing the request entity in jersey is bizarre // and requires knowing it's type up front, which is not possible at the current stage // request.setEntity(containerRequest.getEntity(Object.class)); request.setMethod(getHttpMethod(containerRequest.getMethod())); request.setHeaders(new MultivaluedMapImpl<String, String>(containerRequest.getRequestHeaders())); } return request; }
/** * {@inheritDoc} */ @Override public void add(K k, V v) { getList(k).add(v); }
/** * Creates new instance of {@link MultivaluedMapImpl} from specfied map * * @param map the map */ public MultivaluedMapImpl(MultivaluedMap<K, V> map) { addAll(map); }
/** * Builds the {@link HttpRequest}. * * @return the {@link HttpRequest} */ private HttpRequest buildHttpRequest() { HttpRequestImpl httpRequest = new HttpRequestImpl(); if (containerRequestContext != null) { httpRequest.setMethod(getHttpMethod(containerRequestContext.getMethod())); httpRequest.setHeaders(new MultivaluedMapImpl<String, String>(containerRequestContext.getHeaders())); httpRequest.setContentType(getMediaTypeName(containerRequestContext.getMediaType())); // makes a shallow copy preventing from allowing the original map from being modified httpRequest.setEntity(requestEntity); } return httpRequest; }
/** * Adds all elements of given map. * * @param map the map */ private void addAll(MultivaluedMap<K, V> map) { for (Map.Entry<K, List<V>> entry : map.entrySet()) { getList(entry.getKey()).addAll(entry.getValue()); } }
/** * Builds the {@link HttpRequest}. * * @return the {@link HttpRequest} */ private HttpRequest buildHttpRequest() { HttpRequestImpl httpRequest = new HttpRequestImpl(); if (containerRequestContext != null) { httpRequest.setMethod(getHttpMethod(containerRequestContext.getMethod())); httpRequest.setHeaders(new MultivaluedMapImpl<String, String>(containerRequestContext.getHeaders())); httpRequest.setContentType(getMediaTypeName(containerRequestContext.getMediaType())); // makes a shallow copy preventing from allowing the original map from being modified httpRequest.setEntity(requestEntity); } return httpRequest; }
/** * Adds all elements of given map. * * @param map * the map */ private void addAll(MultivaluedMap<K, V> map) { for (Map.Entry<K, List<V>> entry : map.entrySet()) { getList(entry.getKey()).addAll(entry.getValue()); } }
/** * Builds the {@link HttpRequest}. * * @return the {@link HttpRequest} */ private HttpRequest buildHttpRequest() { HttpRequestImpl request = new HttpRequestImpl(); if (httpRequest != null) { request.setContentType(getMediaTypeName(httpRequest.getHttpHeaders().getMediaType())); request.setEntity(this.requestEntity); request.setMethod(getHttpMethod(httpRequest.getHttpMethod())); request.setHeaders(new MultivaluedMapImpl<String, String>(httpRequest.getHttpHeaders().getRequestHeaders())); } return request; }