class CollectionUtils {

    public static <K, V> Map<V, K> invertMap(final Map<K, V> map) {

        Reject.ifNull(map);
        final Map<V, K> newMap = new HashMap<V, K>(map.size());

        for (Map.Entry<K, V> entry : map.entrySet()) {
            newMap.put(entry.getValue(), entry.getKey());
        }

        return newMap;
    }

    private  CollectionUtils();

}