public Collection<String> getProvidersForListener(LocationListener listener) { cleanupRemovedLocationListeners(); Set<String> providers = new HashSet<>(); for (List<ListenerRegistration> listenerRegistrations : locationListeners.values()) { for (ListenerRegistration listenerRegistration : listenerRegistrations) { if (listenerRegistration.listener == listener) { providers.add(listenerRegistration.provider); } } } return providers; }
/** * @return lastRequestedLocationUpdatesLocationListener */ public List<LocationListener> getRequestLocationUpdateListeners() { cleanupRemovedLocationListeners(); List<LocationListener> all = new ArrayList<>(); for (Map.Entry<String, List<ListenerRegistration>> entry : locationListeners.entrySet()) { for (ListenerRegistration reg : entry.getValue()) { all.add(reg.listener); } } return all; }
public void simulateLocation(Location location) { cleanupRemovedLocationListeners(); setLastKnownLocation(location.getProvider(), location); List<ListenerRegistration> providerListeners = locationListeners.get( location.getProvider()); if (providerListeners == null) return; for (ListenerRegistration listenerReg : providerListeners) { if(listenerReg.lastSeenLocation != null && location != null) { float distanceChange = distanceBetween(location, listenerReg.lastSeenLocation); boolean withinMinDistance = distanceChange < listenerReg.minDistance; boolean exceededMinTime = location.getTime() - listenerReg.lastSeenTime > listenerReg.minTime; if (withinMinDistance || !exceededMinTime) continue; } listenerReg.lastSeenLocation = copyOf(location); listenerReg.lastSeenTime = location == null ? 0 : location.getTime(); listenerReg.listener.onLocationChanged(copyOf(location)); } cleanupRemovedLocationListeners(); }
public Collection<String> getProvidersForListener(LocationListener listener) { cleanupRemovedLocationListeners(); Set<String> providers = new HashSet<>(); for (List<ListenerRegistration> listenerRegistrations : locationListeners.values()) { for (ListenerRegistration listenerRegistration : listenerRegistrations) { if (listenerRegistration.listener == listener) { providers.add(listenerRegistration.provider); } } } return providers; }
public Collection<String> getProvidersForListener(LocationListener listener) { cleanupRemovedLocationListeners(); Set<String> providers = new HashSet<>(); for (List<ListenerRegistration> listenerRegistrations : locationListeners.values()) { for (ListenerRegistration listenerRegistration : listenerRegistrations) { if (listenerRegistration.listener == listener) { providers.add(listenerRegistration.provider); } } } return providers; }
public Collection<String> getProvidersForListener(LocationListener listener) { cleanupRemovedLocationListeners(); Set<String> providers = new HashSet<>(); for (List<ListenerRegistration> listenerRegistrations : locationListeners.values()) { for (ListenerRegistration listenerRegistration : listenerRegistrations) { if (listenerRegistration.listener == listener) { providers.add(listenerRegistration.provider); } } } return providers; }
public Collection<String> getProvidersForListener(LocationListener listener) { cleanupRemovedLocationListeners(); Set<String> providers = new HashSet<>(); for (List<ListenerRegistration> listenerRegistrations : locationListeners.values()) { for (ListenerRegistration listenerRegistration : listenerRegistrations) { if (listenerRegistration.listener == listener) { providers.add(listenerRegistration.provider); } } } return providers; }
/** * @return lastRequestedLocationUpdatesLocationListener */ public List<LocationListener> getRequestLocationUpdateListeners() { cleanupRemovedLocationListeners(); List<LocationListener> all = new ArrayList<>(); for (Map.Entry<String, List<ListenerRegistration>> entry : locationListeners.entrySet()) { for (ListenerRegistration reg : entry.getValue()) { all.add(reg.listener); } } return all; }
/** * Non-Android accessor. * * @return lastRequestedLocationUpdatesLocationListener */ public List<LocationListener> getRequestLocationUpdateListeners() { cleanupRemovedLocationListeners(); List<LocationListener> all = new ArrayList<>(); for (Map.Entry<String, List<ListenerRegistration>> entry : locationListeners.entrySet()) { for (ListenerRegistration reg : entry.getValue()) { all.add(reg.listener); } } return all; }
/** * @return lastRequestedLocationUpdatesLocationListener */ public List<LocationListener> getRequestLocationUpdateListeners() { cleanupRemovedLocationListeners(); List<LocationListener> all = new ArrayList<>(); for (Map.Entry<String, List<ListenerRegistration>> entry : locationListeners.entrySet()) { for (ListenerRegistration reg : entry.getValue()) { all.add(reg.listener); } } return all; }
/** * Non-Android accessor. * * @return lastRequestedLocationUpdatesLocationListener */ public List<LocationListener> getRequestLocationUpdateListeners() { cleanupRemovedLocationListeners(); List<LocationListener> all = new ArrayList<>(); for (Map.Entry<String, List<ListenerRegistration>> entry : locationListeners.entrySet()) { for (ListenerRegistration reg : entry.getValue()) { all.add(reg.listener); } } return all; }
public void simulateLocation(Location location) { cleanupRemovedLocationListeners(); setLastKnownLocation(location.getProvider(), location); List<ListenerRegistration> providerListeners = locationListeners.get( location.getProvider()); if (providerListeners == null) return; for (ListenerRegistration listenerReg : providerListeners) { if(listenerReg.lastSeenLocation != null && location != null) { float distanceChange = distanceBetween(location, listenerReg.lastSeenLocation); boolean withinMinDistance = distanceChange < listenerReg.minDistance; boolean exceededMinTime = location.getTime() - listenerReg.lastSeenTime > listenerReg.minTime; if (withinMinDistance || !exceededMinTime) continue; } listenerReg.lastSeenLocation = copyOf(location); listenerReg.lastSeenTime = location == null ? 0 : location.getTime(); listenerReg.listener.onLocationChanged(copyOf(location)); } cleanupRemovedLocationListeners(); }
public void simulateLocation(Location location) { cleanupRemovedLocationListeners(); setLastKnownLocation(location.getProvider(), location); List<ListenerRegistration> providerListeners = locationListeners.get( location.getProvider()); if (providerListeners == null) return; for (ListenerRegistration listenerReg : providerListeners) { if(listenerReg.lastSeenLocation != null && location != null) { float distanceChange = distanceBetween(location, listenerReg.lastSeenLocation); boolean withinMinDistance = distanceChange < listenerReg.minDistance; boolean exceededMinTime = location.getTime() - listenerReg.lastSeenTime > listenerReg.minTime; if (withinMinDistance || !exceededMinTime) continue; } listenerReg.lastSeenLocation = copyOf(location); listenerReg.lastSeenTime = location == null ? 0 : location.getTime(); listenerReg.listener.onLocationChanged(copyOf(location)); } cleanupRemovedLocationListeners(); }
public void simulateLocation(Location location) { cleanupRemovedLocationListeners(); setLastKnownLocation(location.getProvider(), location); List<ListenerRegistration> providerListeners = locationListeners.get( location.getProvider()); if (providerListeners == null) return; for (ListenerRegistration listenerReg : providerListeners) { if(listenerReg.lastSeenLocation != null && location != null) { float distanceChange = distanceBetween(location, listenerReg.lastSeenLocation); boolean withinMinDistance = distanceChange < listenerReg.minDistance; boolean exceededMinTime = location.getTime() - listenerReg.lastSeenTime > listenerReg.minTime; if (withinMinDistance || !exceededMinTime) continue; } listenerReg.lastSeenLocation = copyOf(location); listenerReg.lastSeenTime = location == null ? 0 : location.getTime(); listenerReg.listener.onLocationChanged(copyOf(location)); } cleanupRemovedLocationListeners(); }
public void simulateLocation(Location location) { cleanupRemovedLocationListeners(); setLastKnownLocation(location.getProvider(), location); List<ListenerRegistration> providerListeners = locationListeners.get( location.getProvider()); if (providerListeners == null) return; for (ListenerRegistration listenerReg : providerListeners) { if(listenerReg.lastSeenLocation != null && location != null) { float distanceChange = distanceBetween(location, listenerReg.lastSeenLocation); boolean withinMinDistance = distanceChange < listenerReg.minDistance; boolean exceededMinTime = location.getTime() - listenerReg.lastSeenTime > listenerReg.minTime; if (withinMinDistance || !exceededMinTime) continue; } listenerReg.lastSeenLocation = copyOf(location); listenerReg.lastSeenTime = location == null ? 0 : location.getTime(); listenerReg.listener.onLocationChanged(copyOf(location)); } cleanupRemovedLocationListeners(); }