package com.google.common.collect;

import com.google.common.base.Preconditions;
import java.util.Collection;
import java.util.Iterator;
import java.util.Map;
import java.util.Set;
import javax.annotation.Nullable;

abstract class AbstractMultimap<K, V>
  implements Multimap<K, V>
{
  private transient Map<K, Collection<V>> asMap;
  private transient Set<K> keySet;

  public Map<K, Collection<V>> asMap()
  {
    Map localMap = this.asMap;
    if (localMap == null)
    {
      localMap = createAsMap();
      this.asMap = localMap;
    }
    return localMap;
  }

  abstract Map<K, Collection<V>> createAsMap();

  Set<K> createKeySet()
  {
    return new Maps.KeySet()
    {
      Map<K, Collection<V>> map()
      {
        return AbstractMultimap.this.asMap();
      }
    };
  }

  public boolean equals(@Nullable Object paramObject)
  {
    if (paramObject == this)
      return true;
    if ((paramObject instanceof Multimap))
    {
      Multimap localMultimap = (Multimap)paramObject;
      return asMap().equals(localMultimap.asMap());
    }
    return false;
  }

  public int hashCode()
  {
    return asMap().hashCode();
  }

  public boolean isEmpty()
  {
    return size() == 0;
  }

  public Set<K> keySet()
  {
    Set localSet = this.keySet;
    if (localSet == null)
    {
      localSet = createKeySet();
      this.keySet = localSet;
    }
    return localSet;
  }

  public boolean put(@Nullable K paramK, @Nullable V paramV)
  {
    return get(paramK).add(paramV);
  }

  public boolean putAll(@Nullable K paramK, Iterable<? extends V> paramIterable)
  {
    Preconditions.checkNotNull(paramIterable);
    return (paramIterable.iterator().hasNext()) && (Iterables.addAll(get(paramK), paramIterable));
  }

  public String toString()
  {
    return asMap().toString();
  }
}

/* Location:           C:\Documents and Settings\Cesar Cabello Cea\Mis documentos\Downloads\apk-downloader\com.ikea.kompis-6_dex2jar.jar
 * Qualified Name:     com.google.common.collect.AbstractMultimap
 * JD-Core Version:    0.6.2
 */