package com.worklight.location.api.geo;

public class WLGeoAcquisitionPolicy
  implements Cloneable
{
  private static final long MIN_MAXIMUM_AGE = 100L;
  private int desiredAccuracy = 0;
  private boolean enableHighAccuracy = false;
  private long maximumAge = 100L;
  private int minChangeDistance = 0;
  private int minChangeTime = 0;
  private long timeout = -1L;

  public static WLGeoAcquisitionPolicy getLiveTrackingProfile()
  {
    return new WLGeoAcquisitionPolicy().setEnableHighAccuracy(true).setMaximumAge(100L);
  }

  public static WLGeoAcquisitionPolicy getPowerSavingProfile()
  {
    return new WLGeoAcquisitionPolicy().setEnableHighAccuracy(false).setMinChangeTime(300000).setMinChangeDistance(1000).setMaximumAge(300000L);
  }

  public static WLGeoAcquisitionPolicy getRoughTrackingProfile()
  {
    return new WLGeoAcquisitionPolicy().setEnableHighAccuracy(true).setDesiredAccuracy(200).setMinChangeTime(30000).setMinChangeDistance(50).setMaximumAge(60000L);
  }

  public WLGeoAcquisitionPolicy clone()
  {
    return new WLGeoAcquisitionPolicy().setEnableHighAccuracy(this.enableHighAccuracy).setDesiredAccuracy(this.desiredAccuracy).setMaximumAge(this.maximumAge).setMinChangeDistance(this.minChangeDistance).setMinChangeTime(this.minChangeTime).setTimeout(this.timeout);
  }

  public boolean equals(Object paramObject)
  {
    if (this == paramObject);
    WLGeoAcquisitionPolicy localWLGeoAcquisitionPolicy;
    do
    {
      return true;
      if (paramObject == null)
        return false;
      if (getClass() != paramObject.getClass())
        return false;
      localWLGeoAcquisitionPolicy = (WLGeoAcquisitionPolicy)paramObject;
      if (this.desiredAccuracy != localWLGeoAcquisitionPolicy.desiredAccuracy)
        return false;
      if (this.enableHighAccuracy != localWLGeoAcquisitionPolicy.enableHighAccuracy)
        return false;
      if (Double.doubleToLongBits(this.maximumAge) != Double.doubleToLongBits(localWLGeoAcquisitionPolicy.maximumAge))
        return false;
      if (this.minChangeDistance != localWLGeoAcquisitionPolicy.minChangeDistance)
        return false;
      if (this.minChangeTime != localWLGeoAcquisitionPolicy.minChangeTime)
        return false;
    }
    while (Double.doubleToLongBits(this.timeout) == Double.doubleToLongBits(localWLGeoAcquisitionPolicy.timeout));
    return false;
  }

  public int getDesiredAccuracy()
  {
    return this.desiredAccuracy;
  }

  public double getMaximumAge()
  {
    return this.maximumAge;
  }

  public int getMinChangeDistance()
  {
    return this.minChangeDistance;
  }

  public int getMinChangeTime()
  {
    return this.minChangeTime;
  }

  public long getTimeout()
  {
    return this.timeout;
  }

  public int hashCode()
  {
    int i = 31 * (31 + this.desiredAccuracy);
    if (this.enableHighAccuracy);
    for (int j = 1231; ; j = 1237)
    {
      int k = i + j;
      long l1 = Double.doubleToLongBits(this.maximumAge);
      int m = 31 * (31 * (k * 31 + (int)(l1 ^ l1 >>> 32)) + this.minChangeDistance) + this.minChangeTime;
      long l2 = Double.doubleToLongBits(this.timeout);
      return m * 31 + (int)(l2 ^ l2 >>> 32);
    }
  }

  public boolean isEnableHighAccuracy()
  {
    return this.enableHighAccuracy;
  }

  public WLGeoAcquisitionPolicy setDesiredAccuracy(int paramInt)
  {
    this.desiredAccuracy = paramInt;
    return this;
  }

  public WLGeoAcquisitionPolicy setEnableHighAccuracy(boolean paramBoolean)
  {
    this.enableHighAccuracy = paramBoolean;
    return this;
  }

  public WLGeoAcquisitionPolicy setMaximumAge(long paramLong)
  {
    if (paramLong > 100L)
      this.maximumAge = paramLong;
    return this;
  }

  public WLGeoAcquisitionPolicy setMinChangeDistance(int paramInt)
  {
    if ((this.enableHighAccuracy) && (paramInt > 0))
      this.minChangeDistance = paramInt;
    return this;
  }

  public WLGeoAcquisitionPolicy setMinChangeTime(int paramInt)
  {
    if ((this.enableHighAccuracy) && (paramInt > 0))
      this.minChangeTime = paramInt;
    return this;
  }

  public WLGeoAcquisitionPolicy setTimeout(long paramLong)
  {
    this.timeout = paramLong;
    return this;
  }
}

/* Location:           C:\Documents and Settings\Cesar Cabello Cea\Mis documentos\Downloads\apk-downloader\com.ikea.kompis-6_dex2jar.jar
 * Qualified Name:     com.worklight.location.api.geo.WLGeoAcquisitionPolicy
 * JD-Core Version:    0.6.2
 */