com.sony.csl.j2me.locationapitools
Class LocationCache

java.lang.Object
  extended by com.sony.csl.j2me.locationapitools.LocationCache
All Implemented Interfaces:
LocationProxyListener

public class LocationCache
extends java.lang.Object
implements LocationProxyListener

Author:
mstevens

Nested Class Summary
private  class LocationCache.CacheEntry
           
 
Field Summary
private  java.util.Vector cache
           
private  long lastLocationTimeStamp
           
private  int retentionTimeMilliSeconds
           
 
Constructor Summary
LocationCache(LocationProxy locationProxy, int retentionTimeSeconds)
           
 
Method Summary
 void firstLocationFound(LocationProxy proxy, LocationProvider provider, Location location)
           
 java.util.Vector getCache()
           
 Location getLocationClosestTo(long timeStamp)
           
 Location getLocationJustAfter(long timeStamp)
           
 Location getLocationJustAfterOrAt(long timeStamp)
           
 Location getLocationJustBefore(long timeStamp)
           
 Location getLocationJustBeforeOrAt(long timeStamp)
           
 Location[] getLocationsBetween(long begin, long end)
           
 Location[] getLocationsBetween(long begin, long end, boolean inclusive)
           
 Location getNewestLocation()
           
 Location getOldestLocation()
           
 boolean isEmpty()
           
 void locationProviderStateChanged(LocationProxy proxy, LocationProvider provider, int newState)
           
 void locationUpdated(LocationProxy proxy, LocationProvider provider, Location location)
           
 void proxyConnected(LocationProxy proxy, LocationProvider provider)
           
 void proxyDisconnected(LocationProxy proxy)
           
private  void purgeOldLocations()
           
 boolean receivesInvalidLocations()
           
 int size()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

cache

private java.util.Vector cache

lastLocationTimeStamp

private long lastLocationTimeStamp

retentionTimeMilliSeconds

private int retentionTimeMilliSeconds
Constructor Detail

LocationCache

public LocationCache(LocationProxy locationProxy,
                     int retentionTimeSeconds)
Method Detail

firstLocationFound

public void firstLocationFound(LocationProxy proxy,
                               LocationProvider provider,
                               Location location)
Specified by:
firstLocationFound in interface LocationProxyListener

locationProviderStateChanged

public void locationProviderStateChanged(LocationProxy proxy,
                                         LocationProvider provider,
                                         int newState)
Specified by:
locationProviderStateChanged in interface LocationProxyListener

locationUpdated

public void locationUpdated(LocationProxy proxy,
                            LocationProvider provider,
                            Location location)
Specified by:
locationUpdated in interface LocationProxyListener

purgeOldLocations

private void purgeOldLocations()

proxyConnected

public void proxyConnected(LocationProxy proxy,
                           LocationProvider provider)
Specified by:
proxyConnected in interface LocationProxyListener

proxyDisconnected

public void proxyDisconnected(LocationProxy proxy)
Specified by:
proxyDisconnected in interface LocationProxyListener

receivesInvalidLocations

public boolean receivesInvalidLocations()
Specified by:
receivesInvalidLocations in interface LocationProxyListener

getCache

public java.util.Vector getCache()

isEmpty

public boolean isEmpty()

size

public int size()

getOldestLocation

public Location getOldestLocation()

getNewestLocation

public Location getNewestLocation()

getLocationJustBefore

public Location getLocationJustBefore(long timeStamp)

getLocationJustBeforeOrAt

public Location getLocationJustBeforeOrAt(long timeStamp)

getLocationJustAfter

public Location getLocationJustAfter(long timeStamp)

getLocationJustAfterOrAt

public Location getLocationJustAfterOrAt(long timeStamp)

getLocationClosestTo

public Location getLocationClosestTo(long timeStamp)

getLocationsBetween

public Location[] getLocationsBetween(long begin,
                                      long end)

getLocationsBetween

public Location[] getLocationsBetween(long begin,
                                      long end,
                                      boolean inclusive)