From 0804a2fbf8015021e3a008bb97acc3d9d3b8524e Mon Sep 17 00:00:00 2001 From: huanghongxun Date: Tue, 22 Jan 2019 14:56:48 +0800 Subject: [PATCH] Merge TaskCallable and TaskCallable2 --- .../java/org/jackhuang/hmcl/task/Task.java | 2 +- .../org/jackhuang/hmcl/task/TaskCallable.java | 11 ++++- .../jackhuang/hmcl/task/TaskCallable2.java | 46 ------------------- 3 files changed, 10 insertions(+), 49 deletions(-) delete mode 100644 HMCLCore/src/main/java/org/jackhuang/hmcl/task/TaskCallable2.java diff --git a/HMCLCore/src/main/java/org/jackhuang/hmcl/task/Task.java b/HMCLCore/src/main/java/org/jackhuang/hmcl/task/Task.java index eb13784cf..7e1148161 100644 --- a/HMCLCore/src/main/java/org/jackhuang/hmcl/task/Task.java +++ b/HMCLCore/src/main/java/org/jackhuang/hmcl/task/Task.java @@ -376,7 +376,7 @@ public abstract class Task { } public static TaskResult ofResult(String id, ExceptionalFunction, V, ?> closure) { - return new TaskCallable2<>(id, closure); + return new TaskCallable<>(id, closure); } private static ExceptionalFunction, Task, ?> convert(Task t) { diff --git a/HMCLCore/src/main/java/org/jackhuang/hmcl/task/TaskCallable.java b/HMCLCore/src/main/java/org/jackhuang/hmcl/task/TaskCallable.java index 99e2ab79f..1b7e85432 100644 --- a/HMCLCore/src/main/java/org/jackhuang/hmcl/task/TaskCallable.java +++ b/HMCLCore/src/main/java/org/jackhuang/hmcl/task/TaskCallable.java @@ -17,6 +17,9 @@ */ package org.jackhuang.hmcl.task; +import org.jackhuang.hmcl.util.AutoTypingMap; +import org.jackhuang.hmcl.util.function.ExceptionalFunction; + import java.util.concurrent.Callable; /** @@ -26,9 +29,13 @@ import java.util.concurrent.Callable; class TaskCallable extends TaskResult { private final String id; - private final Callable callable; + private final ExceptionalFunction, V, ?> callable; public TaskCallable(String id, Callable callable) { + this(id, variables -> callable.call()); + } + + public TaskCallable(String id, ExceptionalFunction, V, ?> callable) { this.id = id; this.callable = callable; } @@ -40,6 +47,6 @@ class TaskCallable extends TaskResult { @Override public void execute() throws Exception { - setResult(callable.call()); + setResult(callable.apply(getVariables())); } } diff --git a/HMCLCore/src/main/java/org/jackhuang/hmcl/task/TaskCallable2.java b/HMCLCore/src/main/java/org/jackhuang/hmcl/task/TaskCallable2.java deleted file mode 100644 index e40e256f7..000000000 --- a/HMCLCore/src/main/java/org/jackhuang/hmcl/task/TaskCallable2.java +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Hello Minecraft! Launcher - * Copyright (C) 2019 huangyuhui and contributors - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see . - */ -package org.jackhuang.hmcl.task; - -import org.jackhuang.hmcl.util.AutoTypingMap; -import org.jackhuang.hmcl.util.function.ExceptionalFunction; - -/** - * - * @author huangyuhui - */ -class TaskCallable2 extends TaskResult { - - private final String id; - private final ExceptionalFunction, V, ?> callable; - - public TaskCallable2(String id, ExceptionalFunction, V, ?> callable) { - this.id = id; - this.callable = callable; - } - - @Override - public String getId() { - return id; - } - - @Override - public void execute() throws Exception { - setResult(callable.apply(getVariables())); - } -}