private void startSatelliteTask() { JSONObject data = cacheManager.getSatelliteCache(longitude, latitude, 0.5); if (data != null && !satelliteCacheExpired(data)) { SatelliteView sv = new SatelliteView(context, satelliteView); sv.setData(data); satelliteUpdated = true; } else { if (!NetworkManager.isNetworkAvailable()) { Toast.makeText(this.context, R.string.toast_without_network, Toast.LENGTH_SHORT).show(); return; } refreshDialog.show(); TaskContext taskContext = new TaskContext(); SatelliteTask issTask = new SatelliteTask(); issTask.addTaskListener(new WeakReference<Task.OnTaskListener>(satTaskListener)); taskContext.set(SatelliteTask.KEY_LAT, latitude); taskContext.set(SatelliteTask.KEY_LON, longitude); taskContext.set(SatelliteTask.KEY_START_TIME, System.currentTimeMillis()); issTask.execute(taskContext); } }