/* * Copyright (C) 2011-2012 Intel Corporation * All rights reserved. */ package com.intel.mtwilson; import java.util.ArrayList; import java.util.HashMap; import java.util.List; import javax.ws.rs.core.MultivaluedMap; /** * * @since 0.5.2 * @author jbuhacoff */ public class MultivaluedMapImpl<K,V> extends HashMap<K,List<V>> implements MultivaluedMap<K,V> { @Override public void putSingle(K k, V v) { ArrayList<V> list = new ArrayList<V>(); list.add(v); put(k, list); } @Override public void add(K k, V v) { List<V> list = get(k); if( list == null ) { list = new ArrayList<V>(); } list.add(v); put(k, list); } @Override public V getFirst(K k) { List<V> list = get(k); if(list != null) { if( list.isEmpty() ) { return null; } }else{ return null; } return list.get(0); } @Override public void addAll(K k, V... vs) { List<V> list = get(k); if( list == null ) { list = new ArrayList<V>(); } for(V v : vs) { list.add(v); } put(k, list); } @Override public void addAll(K k, List<V> vs) { List<V> list = get(k); if( list == null ) { list = new ArrayList<V>(); } list.addAll(vs); put(k, list); } @Override public void addFirst(K k, V v) { List<V> list = get(k); if( list == null ) { list = new ArrayList<V>(); } list.add(v); put(k, list); } @Override public boolean equalsIgnoreValueOrder(MultivaluedMap<K, V> mm) { throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates. } }