Skip to content

Commit 0578a5e

Browse files
soerenreichardtjjaderberg
authored andcommitted
Remove TaskRegistry interface
1 parent 6d5d130 commit 0578a5e

File tree

12 files changed

+43
-110
lines changed

12 files changed

+43
-110
lines changed

core/src/main/java/org/neo4j/gds/core/utils/progress/EmptyTaskRegistry.java

Lines changed: 0 additions & 36 deletions
This file was deleted.

core/src/main/java/org/neo4j/gds/core/utils/progress/EmptyTaskRegistryFactory.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,6 @@ public enum EmptyTaskRegistryFactory implements TaskRegistryFactory {
2424

2525
@Override
2626
public TaskRegistry newInstance() {
27-
return new LocalTaskRegistry("", EmptyTaskStore.INSTANCE);
27+
return new TaskRegistry("", EmptyTaskStore.INSTANCE);
2828
}
2929
}

core/src/main/java/org/neo4j/gds/core/utils/progress/LocalTaskRegistry.java

Lines changed: 0 additions & 45 deletions
This file was deleted.

core/src/main/java/org/neo4j/gds/core/utils/progress/LocalTaskRegistryFactory.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,6 @@ public class LocalTaskRegistryFactory implements TaskRegistryFactory {
3131

3232
@Override
3333
public TaskRegistry newInstance() {
34-
return new LocalTaskRegistry(username, taskStore);
34+
return new TaskRegistry(username, taskStore);
3535
}
3636
}

core/src/main/java/org/neo4j/gds/core/utils/progress/TaskRegistry.java

Lines changed: 23 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -19,11 +19,31 @@
1919
*/
2020
package org.neo4j.gds.core.utils.progress;
2121

22+
import org.jetbrains.annotations.TestOnly;
2223
import org.neo4j.gds.core.utils.progress.tasks.Task;
2324

24-
public interface TaskRegistry {
25+
public class TaskRegistry {
2526

26-
void registerTask(Task task);
27+
private final String username;
28+
private final TaskStore taskStore;
29+
private final JobId jobId;
2730

28-
void unregisterTask();
31+
@TestOnly
32+
public TaskRegistry(TaskRegistry taskRegistry) {
33+
this(taskRegistry.username, taskRegistry.taskStore);
34+
}
35+
36+
public TaskRegistry(String username, TaskStore taskStore) {
37+
this.username = username;
38+
this.taskStore = taskStore;
39+
this.jobId = new JobId();
40+
}
41+
42+
public void registerTask(Task task) {
43+
taskStore.store(username, jobId, task);
44+
}
45+
46+
public void unregisterTask() {
47+
taskStore.remove(username, jobId);
48+
}
2949
}

core/src/test/java/org/neo4j/gds/core/utils/progress/TaskRegistryTest.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@ class TaskRegistryTest {
2929
@Test
3030
void shouldStoreIncomingTasks() {
3131
var globalTaskStore = new GlobalTaskStore();
32-
var taskRegistry1 = new LocalTaskRegistry("", globalTaskStore);
32+
var taskRegistry1 = new TaskRegistry("", globalTaskStore);
3333

3434
assertThat(globalTaskStore.isEmpty()).isTrue();
3535

@@ -39,7 +39,7 @@ void shouldStoreIncomingTasks() {
3939
assertThat(globalTaskStore.query("")).containsValue(task1);
4040
assertThat(globalTaskStore.isEmpty()).isFalse();
4141

42-
var taskRegistry2 = new LocalTaskRegistry("", globalTaskStore);
42+
var taskRegistry2 = new TaskRegistry("", globalTaskStore);
4343
var task2 = Tasks.leaf("task2");
4444
taskRegistry2.registerTask(task2);
4545

@@ -50,7 +50,7 @@ void shouldStoreIncomingTasks() {
5050
@Test
5151
void shouldRemoveStoredTasks() {
5252
var globalTaskStore = new GlobalTaskStore();
53-
var taskRegistry = new LocalTaskRegistry("", globalTaskStore);
53+
var taskRegistry = new TaskRegistry("", globalTaskStore);
5454

5555
var task = Tasks.leaf("task");
5656
taskRegistry.registerTask(task);

pregel/src/test/java/org/neo4j/gds/beta/pregel/PregelTest.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -44,7 +44,7 @@
4444
import org.neo4j.gds.core.utils.mem.AllocationTracker;
4545
import org.neo4j.gds.core.utils.mem.MemoryRange;
4646
import org.neo4j.gds.core.utils.paged.HugeDoubleArray;
47-
import org.neo4j.gds.core.utils.progress.LocalTaskRegistry;
47+
import org.neo4j.gds.core.utils.progress.TaskRegistry;
4848
import org.neo4j.gds.core.utils.progress.tasks.ProgressTracker;
4949
import org.neo4j.gds.core.utils.progress.tasks.TaskProgressTracker;
5050
import org.neo4j.gds.extension.GdlExtension;
@@ -196,7 +196,7 @@ void cleanupProgressLogging() {
196196

197197
var task = Pregel.progressTask(graph, config, computation.getClass().getSimpleName());
198198
var progressLogger = new TestProgressLogger(task, config.concurrency());
199-
var progressTracker = new TaskProgressTracker(task, progressLogger, () -> new LocalTaskRegistry("", taskStore));
199+
var progressTracker = new TaskProgressTracker(task, progressLogger, () -> new TaskRegistry("", taskStore));
200200

201201
var pregelAlgo = Pregel.create(
202202
graph,

proc/common/src/test/java/org/neo4j/gds/AlgorithmCleanupTest.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@
2424
import org.junit.jupiter.api.Test;
2525
import org.neo4j.gds.catalog.GraphCreateProc;
2626
import org.neo4j.gds.core.loading.GraphStoreCatalog;
27-
import org.neo4j.gds.core.utils.progress.LocalTaskRegistry;
27+
import org.neo4j.gds.core.utils.progress.TaskRegistry;
2828
import org.neo4j.gds.core.utils.progress.TaskRegistryFactory;
2929
import org.neo4j.gds.test.TestProc;
3030
import org.neo4j.logging.NullLog;
@@ -52,7 +52,7 @@ void teardown() {
5252
@Test
5353
void cleanupTaskRegistryUnderRegularExecution() {
5454
var taskStore = new TestTaskStore();
55-
var taskRegistryFactory = (TaskRegistryFactory) () -> new LocalTaskRegistry(getUsername(), taskStore);
55+
var taskRegistryFactory = (TaskRegistryFactory) () -> new TaskRegistry(getUsername(), taskStore);
5656

5757
var proc = new TestProc();
5858
proc.taskRegistryFactory = taskRegistryFactory;
@@ -67,7 +67,7 @@ void cleanupTaskRegistryUnderRegularExecution() {
6767
@Test
6868
void cleanupTaskRegistryWhenTheAlgorithmFails() {
6969
var taskStore = new TestTaskStore();
70-
var taskRegistryFactory = (TaskRegistryFactory) () -> new LocalTaskRegistry(getUsername(), taskStore);
70+
var taskRegistryFactory = (TaskRegistryFactory) () -> new TaskRegistry(getUsername(), taskStore);
7171

7272
var proc = new TestProc();
7373
proc.taskRegistryFactory = taskRegistryFactory;

proc/misc/src/test/java/org/neo4j/gds/BaseProgressTest.java

Lines changed: 2 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,6 @@
2626
import org.neo4j.gds.core.utils.progress.TaskRegistry;
2727
import org.neo4j.gds.core.utils.progress.TaskRegistryExtension;
2828
import org.neo4j.gds.core.utils.progress.TaskRegistryFactory;
29-
import org.neo4j.gds.core.utils.progress.tasks.Task;
3029
import org.neo4j.gds.core.utils.progress.tasks.TaskProgressTracker;
3130
import org.neo4j.gds.core.utils.progress.tasks.Tasks;
3231
import org.neo4j.logging.Level;
@@ -86,17 +85,10 @@ public static class Bar {
8685
public Bar(String field) {this.field = field;}
8786
}
8887

89-
public static class NonReleasingTaskRegistry implements TaskRegistry {
90-
91-
private final TaskRegistry taskRegistry;
88+
public static class NonReleasingTaskRegistry extends TaskRegistry {
9289

9390
NonReleasingTaskRegistry(TaskRegistry taskRegistry) {
94-
this.taskRegistry = taskRegistry;
95-
}
96-
97-
@Override
98-
public void registerTask(Task task) {
99-
taskRegistry.registerTask(task);
91+
super(taskRegistry);
10092
}
10193

10294
@Override

proc/misc/src/test/java/org/neo4j/gds/ListProgressProcTest.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -150,7 +150,8 @@ public Stream<FastRPStreamProc.StreamResult> fakeStream(
150150
@Name(value = "graphName") Object graphNameOrConfig,
151151
@Name(value = "configuration", defaultValue = "{}") Map<String, Object> configuration
152152
) {
153-
this.taskRegistryFactory = () -> new NonReleasingTaskRegistry(taskRegistryFactory.newInstance());
153+
var taskRegistry = taskRegistryFactory.newInstance();
154+
this.taskRegistryFactory = () -> new NonReleasingTaskRegistry(taskRegistry);
154155
return super.stream(graphNameOrConfig, configuration);
155156
}
156157

0 commit comments

Comments
 (0)