HashMultimap.java 2.49 KB
package com.google.common.collect;

import com.google.common.annotations.GwtCompatible;
import com.google.common.annotations.GwtIncompatible;
import com.google.common.annotations.VisibleForTesting;
import com.google.common.base.Preconditions;
import java.io.IOException;
import java.io.ObjectInputStream;
import java.io.ObjectOutputStream;
import java.util.HashMap;
import java.util.Set;
import nb;
import pt;

@GwtCompatible(emulated=true, serializable=true)
public final class HashMultimap<K, V>
  extends nb<K, V>
{
  @GwtIncompatible("Not needed in emulated source")
  private static final long serialVersionUID = 0L;
  @VisibleForTesting
  transient int a = 2;
  
  private HashMultimap()
  {
    super(new HashMap());
  }
  
  private HashMultimap(int paramInt1, int paramInt2)
  {
    super(Maps.newHashMapWithExpectedSize(paramInt1));
    if (paramInt2 >= 0) {}
    for (boolean bool = true;; bool = false)
    {
      Preconditions.checkArgument(bool);
      this.a = paramInt2;
      return;
    }
  }
  
  private HashMultimap(Multimap<? extends K, ? extends V> paramMultimap)
  {
    super(Maps.newHashMapWithExpectedSize(paramMultimap.keySet().size()));
    putAll(paramMultimap);
  }
  
  public static <K, V> HashMultimap<K, V> create()
  {
    return new HashMultimap();
  }
  
  public static <K, V> HashMultimap<K, V> create(int paramInt1, int paramInt2)
  {
    return new HashMultimap(paramInt1, paramInt2);
  }
  
  public static <K, V> HashMultimap<K, V> create(Multimap<? extends K, ? extends V> paramMultimap)
  {
    return new HashMultimap(paramMultimap);
  }
  
  @GwtIncompatible("java.io.ObjectInputStream")
  private void readObject(ObjectInputStream paramObjectInputStream)
    throws IOException, ClassNotFoundException
  {
    paramObjectInputStream.defaultReadObject();
    this.a = paramObjectInputStream.readInt();
    int i = paramObjectInputStream.readInt();
    a(Maps.newHashMapWithExpectedSize(i));
    pt.a(this, paramObjectInputStream, i);
  }
  
  @GwtIncompatible("java.io.ObjectOutputStream")
  private void writeObject(ObjectOutputStream paramObjectOutputStream)
    throws IOException
  {
    paramObjectOutputStream.defaultWriteObject();
    paramObjectOutputStream.writeInt(this.a);
    pt.a(this, paramObjectOutputStream);
  }
  
  final Set<V> a()
  {
    return Sets.newHashSetWithExpectedSize(this.a);
  }
}


/* Location:              /home/merong/decompile/hackery-dex2jar.jar!/com/google/common/collect/HashMultimap.class
 * Java compiler version: 6 (50.0)
 * JD-Core Version:       0.7.1
 */