package com.worklight.location.internal.wifi.triggerEvaluators;

import com.worklight.location.api.WLConfidenceLevel;
import com.worklight.location.api.wifi.WLWifiAccessPointFilter;
import com.worklight.location.internal.wifi.WifiInternalAccessPoint;
import com.worklight.location.internal.wifi.triggers.AbstractWifiAreaTrigger;
import java.util.Iterator;
import java.util.List;

abstract class WifiAreaTriggerEvaluator extends WifiTriggerEvaluator
{
  private static final int HIGH_CONFIDENCE = 80;
  private static final int MEDIUM_CONFIDENCE = 50;
  private final boolean considerStrength;
  private boolean isInside;

  public WifiAreaTriggerEvaluator(AbstractWifiAreaTrigger paramAbstractWifiAreaTrigger, boolean paramBoolean)
  {
    super(paramAbstractWifiAreaTrigger);
    this.considerStrength = paramBoolean;
  }

  private static boolean matchesArea(WifiInternalAccessPoint paramWifiInternalAccessPoint, List<WLWifiAccessPointFilter> paramList)
  {
    Iterator localIterator = paramList.iterator();
    while (localIterator.hasNext())
      if (((WLWifiAccessPointFilter)localIterator.next()).matches(paramWifiInternalAccessPoint))
        return true;
    return false;
  }

  private static boolean matchesPosition(WLWifiAccessPointFilter paramWLWifiAccessPointFilter, WifiInternalLocation paramWifiInternalLocation, WLConfidenceLevel paramWLConfidenceLevel, boolean paramBoolean1, boolean paramBoolean2)
  {
    Iterator localIterator = paramWifiInternalLocation.getAccessPoints().iterator();
    while (localIterator.hasNext())
    {
      WifiInternalAccessPoint localWifiInternalAccessPoint = (WifiInternalAccessPoint)localIterator.next();
      if (((!paramBoolean1) || (paramBoolean2) || (((paramWLConfidenceLevel != WLConfidenceLevel.MEDIUM) || (localWifiInternalAccessPoint.getStrength() >= 50)) && ((paramWLConfidenceLevel != WLConfidenceLevel.HIGH) || (localWifiInternalAccessPoint.getStrength() >= 80)))) && (paramWLWifiAccessPointFilter.matches(localWifiInternalAccessPoint)))
        return true;
    }
    return false;
  }

  public AbstractWifiAreaTrigger getTriggerDefinition()
  {
    return (AbstractWifiAreaTrigger)super.getTriggerDefinition();
  }

  protected boolean isInside()
  {
    return this.isInside;
  }

  protected void updatePosition(WifiInternalLocation paramWifiInternalLocation)
  {
    if (paramWifiInternalLocation == null)
      throw new IllegalArgumentException("position is null");
    if (!getTriggerDefinition().areOtherAccessPointsAllowed())
    {
      Iterator localIterator2 = paramWifiInternalLocation.getAccessPoints().iterator();
      while (localIterator2.hasNext())
        if (!matchesArea((WifiInternalAccessPoint)localIterator2.next(), getTriggerDefinition().getAreaAccessPoints()))
        {
          this.isInside = false;
          return;
        }
    }
    Iterator localIterator1 = getTriggerDefinition().getAreaAccessPoints().iterator();
    while (localIterator1.hasNext())
      if (!matchesPosition((WLWifiAccessPointFilter)localIterator1.next(), paramWifiInternalLocation, getTriggerDefinition().getConfidenceLevel(), this.considerStrength, this.isInside))
      {
        this.isInside = false;
        return;
      }
    this.isInside = true;
  }
}

/* Location:           C:\Documents and Settings\Cesar Cabello Cea\Mis documentos\Downloads\apk-downloader\com.ikea.kompis-6_dex2jar.jar
 * Qualified Name:     com.worklight.location.internal.wifi.triggerEvaluators.WifiAreaTriggerEvaluator
 * JD-Core Version:    0.6.2
 */