class LoadNews extends AsyncTask<String, String, String> {
@Override
protected void onPreExecute() {
super.onPreExecute();
mProgress = new ProgressDialog(getSherlockActivity());
mProgress.setMessage("Loading news, Please wait...");
mProgress.setIndeterminate(false);
mProgress.setCancelable(true);
mProgress.show();
}
protected String doInBackground(String... args) {
List<NameValuePair> params = new ArrayList<NameValuePair>();
JSONObject json = jParser.makeHttpRequest(AllNewsItemsURL, "GET", params);
try {
int success = json.getInt(TAG_SUCCESS);
if (success == 1) {
newsItems = json.getJSONArray(NEWS);
for (int i = 0; i < newsItems.length(); i++) {
JSONObject obj = newsItems.getJSONObject(i);
Integer id = i + 1;
String title = obj.getString(TITLE);
String story = obj.getString(STORY);
String imageSrc = IMAGE_DIR_URL + obj.getString(IMAGE_SRC);
String date = obj.getString(DATE);
story = replace(story, imageSrc);
date = buildDate(date);
if (id > dbhandler.getNewsCount()) {
dbhandler.addNews(new News(id, title, story, imageSrc, date));
} else {
dbhandler.updateNews(new News(id, title, story, imageSrc, date));
}
if (isCancelled() || FlagCancelled) break;
}
} else {
Log.e("JSON Response", "success == 0");
}
} catch (JSONException e) {
e.printStackTrace();
}
return null;
}
protected void onPostExecute(String file_url) {
mProgress.dismiss();
getSherlockActivity().runOnUiThread(new Runnable() {
public void run() {
getNewsList();
}
});
}
}