Как создать класс, содержащий различные задачи JavaFx? - PullRequest
0 голосов
/ 26 апреля 2019

Поэтому я использую задачи JavaFX для различных методов получения данных из онлайн-службы - это может занять некоторое время, поэтому я не хочу, чтобы пользовательский интерфейс зависал.

Для выполнения задач, которые я 'Мы создали отдельный класс для каждого из них, который будет вызываться другими классами в моем приложении.

Однако есть много разных вещей, которые я хочу получить от онлайн-сервиса, и я не хочу создавать новый класс для каждого из них.Все реализации задач, которые я вижу в сети, имеют их как классы.

Могу ли я иметь один класс "NetworkTasks", который содержит много задач?Это было бы намного чище и проще в работе, чем многие отдельные файлы классов задач.

РЕДАКТИРОВАТЬ: Пример класса задач.Это ищет список имен пользователей, когда им дают имя, используя внешний сетевой класс, который возвращает список имен.Это может занять некоторое время, поэтому пользователь мог бы заморозить интерфейс, если бы он не был Задачей

public class NameLookupTask extends Task<ArrayList<Label>> {


public UsernameSearchTask(NetworkClient client, String name) {
    this.client = client;
    this.name= name;
}

@Override
protected ArrayList<Label> call() throws Exception {
    String[] userMessages;
    userMessages = client.getMessages().getName();
    System.out.println(userMessages.length);
    ArrayList<Label> newNames= new ArrayList();
    if (userMessages.length != 0) {
        for (int i = 0; i < userMessages.length; i++) {
            Label newName= new Label(name);
            newMessages.add(newMessage);
            updateProgress(i, userMessages.length);
        }
    } else {
        this.cancel(true);
    }
    return newNames;
}

}

Я хочу иметь несколько подобных задач, но для других данных просто получитьданные и превращение в элементы пользовательского интерфейса.Может ли все это быть в одном файле класса?

...