отменить загрузку данных. Singleton

205
13 марта 2017, 09:07

Добрый день. В своем приложении загружаю данные с сервера. Для решения этой задачи реализовал класс который загружает данные в отдельном потоке, парсит их и возвращает ответ. Также создал Singleton через который запускаю загрузку данных

public class SingletonHtmlHelper {
private static SingletonHtmlHelper instance;
private static HtmlHelper.LoadEndListener listener;
private SingletonHtmlHelper(){
}
public static synchronized SingletonHtmlHelper getInstance(HtmlHelper.LoadEndListener l){
    if (instance == null){
        instance = new SingletonHtmlHelper();
    }
    listener = l;
    return instance;
}
public void startLoad(String stationFrom, String stationTo){
    HtmlHelper htmlHelper = new HtmlHelper(listener);
    htmlHelper.startLoad(stationFrom, stationTo);
}}

Загрузку начинаю при старте приложения. Также ее может начать пользователь нажав на кнопку. Это разные данные, они имеют одинаковую структуру, но разное содержание. Проблема в том что если нажать на кнопку пока грузятся первые данные то загрузка вторых начнется только завершения загрузки первых, а это при медленном интернете может занять достаточно долго времени. Как можно отменить загрузку первых данных? или в данном случае Singleton вообще ненужен?

READ ALSO
Способ вывода значений Map на экран [требует правки]

Способ вывода значений Map на экран [требует правки]

// Далее добавляем эти значения при помощи конкатенации строк в string, в том // порядке, в котором эти значения получены из Map for (List collection : mapvalues())...

195
Что Делает каждый операнд в этой строчке?

Что Делает каждый операнд в этой строчке?

Что Делает каждый операнд в этой строчке?

207
Java. Hibernate. foreign key

Java. Hibernate. foreign key

Есть 2 таблицы в БД

261
Ошибка unreachable statement

Ошибка unreachable statement

Прохожу урок на StartAndroid, возникла ошибка в коде, не могу понять как исправить, нужный класс импортирован, всё переписал как в примере, помогите...

391