diff options
| author | Portree-Kid <keith.paterson@gmx.de> | 2013-03-08 15:06:41 +0100 |
|---|---|---|
| committer | Portree-Kid <keith.paterson@gmx.de> | 2013-03-08 15:06:41 +0100 |
| commit | a0932683fdf840fd97464e93a4597fac5c93a731 (patch) | |
| tree | a0e27bbad9012436d378da27f3e2b052a0edb2f3 /main/src/cgeo/geocaching/loaders/CoordsGeocacheListLoader.java | |
| parent | cfb16fb725c069f59d545a50ba40045320a55c2c (diff) | |
| download | cgeo-a0932683fdf840fd97464e93a4597fac5c93a731.zip cgeo-a0932683fdf840fd97464e93a4597fac5c93a731.tar.gz cgeo-a0932683fdf840fd97464e93a4597fac5c93a731.tar.bz2 | |
Refactoring to use Loaders fixes #2365
Diffstat (limited to 'main/src/cgeo/geocaching/loaders/CoordsGeocacheListLoader.java')
| -rw-r--r-- | main/src/cgeo/geocaching/loaders/CoordsGeocacheListLoader.java | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/main/src/cgeo/geocaching/loaders/CoordsGeocacheListLoader.java b/main/src/cgeo/geocaching/loaders/CoordsGeocacheListLoader.java new file mode 100644 index 0000000..2f76d49 --- /dev/null +++ b/main/src/cgeo/geocaching/loaders/CoordsGeocacheListLoader.java @@ -0,0 +1,36 @@ +package cgeo.geocaching.loaders; + +import cgeo.geocaching.SearchResult; +import cgeo.geocaching.Settings; +import cgeo.geocaching.connector.ConnectorFactory; +import cgeo.geocaching.connector.capability.ISearchByCenter; +import cgeo.geocaching.connector.gc.GCParser; +import cgeo.geocaching.geopoint.Geopoint; + +import android.content.Context; + +public class CoordsGeocacheListLoader extends AbstractSearchLoader { + private Geopoint coords; + + public CoordsGeocacheListLoader(Context context, Geopoint coords) { + super(context); + this.coords = coords; + } + + @Override + public SearchResult runSearch() { + SearchResult search = GCParser.searchByCoords(coords, Settings.getCacheType(), Settings.isShowCaptcha(), this); + + for (ISearchByCenter centerConn : ConnectorFactory.getSearchByCenterConnectors()) { + if (centerConn.isActivated()) { + SearchResult temp = centerConn.searchByCenter(coords); + if (temp != null) { + search.addGeocodes(temp.getGeocodes()); + } + } + } + + return search; + } + +} |
