package com.google.android.m4b.maps.a;

import java.util.HashMap;
import java.util.HashSet;
import java.util.LinkedList;
import java.util.Map;
import java.util.Queue;
import java.util.Set;
import java.util.concurrent.PriorityBlockingQueue;
import java.util.concurrent.atomic.AtomicInteger;

public class l
{
  private AtomicInteger a = new AtomicInteger();
  private final Map<String, Queue<k>> b = new HashMap();
  private final Set<k> c = new HashSet();
  private final PriorityBlockingQueue<k> d = new PriorityBlockingQueue();
  private final PriorityBlockingQueue<k> e = new PriorityBlockingQueue();
  private final b f;
  private final e g;
  private final n h;
  private f[] i;
  private c j;

  public l(b paramb, e parame, int paramInt, n paramn)
  {
    this.f = paramb;
    this.g = parame;
    this.i = new f[4];
    this.h = paramn;
  }

  public k a(k paramk)
  {
    paramk.a(this);
    synchronized (this.c)
    {
      this.c.add(paramk);
      paramk.a(this.a.incrementAndGet());
      paramk.a("add-to-queue");
      if (!paramk.l())
      {
        this.e.add(paramk);
        return paramk;
      }
    }
    while (true)
    {
      String str;
      synchronized (this.b)
      {
        str = paramk.d();
        if (this.b.containsKey(str))
        {
          Object localObject3 = (Queue)this.b.get(str);
          if (localObject3 == null)
            localObject3 = new LinkedList();
          ((Queue)localObject3).add(paramk);
          this.b.put(str, localObject3);
          if (s.a)
            s.a("Request for cacheKey=%s is in flight, putting on hold.", new Object[] { str });
          return paramk;
        }
      }
      this.b.put(str, null);
      this.d.add(paramk);
    }
  }

  public final void a()
  {
    b();
    this.j = new c(this.d, this.e, this.f, this.h);
    this.j.start();
    for (int k = 0; k < this.i.length; k++)
    {
      f localf = new f(this.e, this.g, this.f, this.h);
      this.i[k] = localf;
      localf.start();
    }
  }

  public final void b()
  {
    if (this.j != null)
      this.j.a();
    for (int k = 0; k < this.i.length; k++)
      if (this.i[k] != null)
        this.i[k].a();
  }

  final void b(k paramk)
  {
    synchronized (this.c)
    {
      this.c.remove(paramk);
      if (!paramk.l());
    }
    synchronized (this.b)
    {
      String str = paramk.d();
      Queue localQueue = (Queue)this.b.remove(str);
      if (localQueue != null)
      {
        if (s.a)
        {
          Object[] arrayOfObject = new Object[2];
          arrayOfObject[0] = Integer.valueOf(localQueue.size());
          arrayOfObject[1] = str;
          s.a("Releasing %d waiting requests for cacheKey=%s.", arrayOfObject);
        }
        this.d.addAll(localQueue);
      }
      return;
      localObject1 = finally;
      throw localObject1;
    }
  }
}

/* Location:           C:\Documents and Settings\Cesar Cabello Cea\Mis documentos\Downloads\apk-downloader\com.ikea.kompis-6_dex2jar.jar
 * Qualified Name:     com.google.android.m4b.maps.a.l
 * JD-Core Version:    0.6.2
 */