package com.google.android.m4b.maps.ao;

import android.os.Handler;
import android.os.Looper;
import com.google.android.m4b.maps.ac.a;
import com.google.android.m4b.maps.ak.g;
import com.google.android.m4b.maps.ak.h;
import com.google.android.m4b.maps.ak.i;
import com.google.android.m4b.maps.bc.ba;
import com.google.android.m4b.maps.bc.bd.a;
import com.google.android.m4b.maps.bc.be;
import com.google.android.m4b.maps.bc.bk;
import com.google.android.m4b.maps.bc.z;
import com.google.android.m4b.maps.cl.ad;
import com.google.android.m4b.maps.g.l;
import com.google.common.annotations.VisibleForTesting;
import com.google.common.base.Strings;
import com.google.common.collect.Lists;
import com.google.common.io.ByteStreams;
import java.io.ByteArrayInputStream;
import java.io.DataInputStream;
import java.io.IOException;
import java.util.Collection;
import java.util.concurrent.ScheduledExecutorService;
import java.util.concurrent.TimeUnit;
import org.apache.http.HttpEntity;
import org.apache.http.HttpResponse;
import org.apache.http.StatusLine;
import org.apache.http.client.HttpClient;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.impl.client.DefaultHttpClient;

public final class j
  implements i
{
  private static final a a;
  private final Collection<com.google.android.m4b.maps.ak.j> b = Lists.newArrayList();
  private final ScheduledExecutorService c;
  private final h d;
  private final Handler e;

  static
  {
    a locala = new a(ad.d);
    a = locala;
    locala.a(1, 0);
    a.a(2, 0);
  }

  public j(h paramh, ScheduledExecutorService paramScheduledExecutorService)
  {
    this.d = ((h)l.a(paramh));
    this.c = ((ScheduledExecutorService)l.a(paramScheduledExecutorService));
    this.e = new Handler(Looper.getMainLooper());
  }

  private void b(g paramg)
  {
    com.google.android.m4b.maps.ak.j[] arrayOfj = b();
    int i = arrayOfj.length;
    for (int j = 0; j < i; j++)
      arrayOfj[j].b(paramg);
  }

  private com.google.android.m4b.maps.ak.j[] b()
  {
    try
    {
      com.google.android.m4b.maps.ak.j[] arrayOfj = new com.google.android.m4b.maps.ak.j[this.b.size()];
      this.b.toArray(arrayOfj);
      return arrayOfj;
    }
    finally
    {
      localObject = finally;
      throw localObject;
    }
  }

  private static a d(g paramg)
  {
    com.google.android.m4b.maps.ak.c localc = new com.google.android.m4b.maps.ak.c();
    paramg.a(localc);
    DataInputStream localDataInputStream = new DataInputStream(new ByteArrayInputStream(localc.a()));
    return com.google.android.m4b.maps.ac.c.a(ad.c, localDataInputStream);
  }

  public final void a(int paramInt, byte[] paramArrayOfByte, boolean paramBoolean1, boolean paramBoolean2)
  {
    this.d.a(paramInt, paramArrayOfByte, paramBoolean1, paramBoolean2);
  }

  public final void a(int paramInt, byte[] paramArrayOfByte, boolean paramBoolean1, boolean paramBoolean2, boolean paramBoolean3)
  {
    this.d.a(paramInt, paramArrayOfByte, paramBoolean1, paramBoolean2, paramBoolean3);
  }

  public final void a(com.google.android.m4b.maps.ak.j paramj)
  {
    this.b.add(paramj);
    this.d.a(paramj);
  }

  public final void c(g paramg)
  {
    int i = 1;
    if (paramg.i() != 108)
    {
      b(paramg);
      return;
    }
    while (true)
    {
      try
      {
        String str = d(paramg).c(9, 0).g(29).h(1);
        if ((str != null) && ((str.startsWith("ft:cw:")) || (str.startsWith("vdb:"))))
        {
          if (i == 0)
            break;
          this.d.c(paramg);
          return;
        }
      }
      catch (IOException localIOException)
      {
        b(paramg);
        return;
      }
      i = 0;
    }
    this.c.execute(new a(paramg));
  }

  public final void j()
  {
    this.d.j();
  }

  public final long l()
  {
    return this.d.l();
  }

  public final String m()
  {
    return this.d.m();
  }

  @VisibleForTesting
  final class a
    implements Runnable
  {

    @VisibleForTesting
    private g a;

    @VisibleForTesting
    private a b;
    private int c = 0;

    public a(g arg2)
    {
      g localg;
      this.a = localg;
      this.b = j.a(localg);
    }

    private static String a(a parama, String paramString)
    {
      int i = parama.k(2);
      for (int j = 0; j < i; j++)
      {
        a locala = parama.c(2, j);
        if (locala.h(1).equals(paramString))
          return locala.h(2);
      }
      return null;
    }

    private static void a(a parama1, a parama2)
    {
      a locala = new a(ad.e);
      locala.a(1, parama2);
      parama1.a(9, locala);
    }

    public final void run()
    {
      a locala1 = new a(ad.f);
      for (int i = 0; ; i++)
        if (i < this.b.k(9))
        {
          a locala2 = this.b.c(9, i);
          try
          {
            be localbe = new be();
            localbe.a(bd.a.f.a(locala2));
            a locala3 = bk.a(locala2.e(30));
            ba localba = new ba(-1 + locala3.d(4), locala3.d(2), locala3.d(3), localbe);
            a locala4 = ((z)localba.a(bd.a.f)).b();
            Object[] arrayOfObject = new Object[6];
            arrayOfObject[0] = locala4.h(1);
            arrayOfObject[1] = Strings.nullToEmpty(a(locala4, "v"));
            arrayOfObject[2] = Strings.nullToEmpty(a(locala4, "authToken"));
            arrayOfObject[3] = Integer.valueOf(localba.c());
            arrayOfObject[4] = Integer.valueOf(localba.d());
            arrayOfObject[5] = Integer.valueOf(localba.b());
            HttpGet localHttpGet = new HttpGet(String.format("https://mapsengine.google.com/%s/maptile/maps?v=%s&authToken=%s&x=%d&y=%d&z=%d&s=", arrayOfObject));
            HttpResponse localHttpResponse = new DefaultHttpClient().execute(localHttpGet);
            if (localHttpResponse.getStatusLine().getStatusCode() == 200)
            {
              byte[] arrayOfByte = ByteStreams.toByteArray(localHttpResponse.getEntity().getContent());
              a locala5 = new a(ad.e);
              locala5.a(1, locala2);
              locala5.a(2, arrayOfByte);
              locala1.a(9, locala5);
            }
            else
            {
              a(locala1, locala2);
            }
          }
          catch (IOException localIOException2)
          {
            long l = ()(200.0D * Math.pow(2.0D, this.c));
            if (l < 60000L)
            {
              j.a(j.this).schedule(this, l, TimeUnit.MILLISECONDS);
              this.c = (1 + this.c);
              return;
            }
            a(locala1, locala2);
          }
        }
        else
        {
          locala1.a(1, j.a());
          try
          {
            this.a.a(com.google.android.m4b.maps.ac.c.b(locala1));
            j.b(j.this, this.a);
            return;
          }
          catch (IOException localIOException1)
          {
            while (true)
              j.a(j.this, this.a);
          }
        }
    }
  }
}

/* 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.ao.j
 * JD-Core Version:    0.6.2
 */