diff --git a/algorithm-specifications/build.gradle b/algorithm-specifications/build.gradle index 5a00e0c732..940cf104ea 100644 --- a/algorithm-specifications/build.gradle +++ b/algorithm-specifications/build.gradle @@ -22,6 +22,9 @@ dependencies { implementation project(':community-configs') implementation project(':community-facade-api') + implementation project(':miscellaneous-configs') + implementation project(':miscellaneous-facade-api') + implementation project(':node-embeddings-configs') implementation project(':node-embeddings-facade-api') diff --git a/algorithm-specifications/src/main/java/org/neo4j/gds/indexInverse/Constants.java b/algorithm-specifications/src/main/java/org/neo4j/gds/indexInverse/Constants.java new file mode 100644 index 0000000000..be06e207ac --- /dev/null +++ b/algorithm-specifications/src/main/java/org/neo4j/gds/indexInverse/Constants.java @@ -0,0 +1,26 @@ +/* + * Copyright (c) "Neo4j" + * Neo4j Sweden AB [http://neo4j.com] + * + * This file is part of Neo4j. + * + * Neo4j 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.neo4j.gds.indexInverse; + +final class Constants { + static final String INDEX_INVERSE_DESCRIPTION = "The IndexInverse procedure indexes directed relationships to allow an efficient inverse access for other algorithms."; + + private Constants() {} +} diff --git a/proc/misc/src/main/java/org/neo4j/gds/indexInverse/IndexInverseSpec.java b/algorithm-specifications/src/main/java/org/neo4j/gds/indexInverse/IndexInverseSpec.java similarity index 100% rename from proc/misc/src/main/java/org/neo4j/gds/indexInverse/IndexInverseSpec.java rename to algorithm-specifications/src/main/java/org/neo4j/gds/indexInverse/IndexInverseSpec.java diff --git a/algorithm-specifications/src/main/java/org/neo4j/gds/scaling/Constants.java b/algorithm-specifications/src/main/java/org/neo4j/gds/scaling/Constants.java new file mode 100644 index 0000000000..01dccadd79 --- /dev/null +++ b/algorithm-specifications/src/main/java/org/neo4j/gds/scaling/Constants.java @@ -0,0 +1,28 @@ +/* + * Copyright (c) "Neo4j" + * Neo4j Sweden AB [http://neo4j.com] + * + * This file is part of Neo4j. + * + * Neo4j 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.neo4j.gds.scaling; + +final class Constants { + + private Constants() {} + + static final String SCALE_PROPERTIES_DESCRIPTION = "Scale node properties"; + +} diff --git a/proc/misc/src/main/java/org/neo4j/gds/scaling/ScalePropertiesMutateSpec.java b/algorithm-specifications/src/main/java/org/neo4j/gds/scaling/ScalePropertiesMutateSpec.java similarity index 88% rename from proc/misc/src/main/java/org/neo4j/gds/scaling/ScalePropertiesMutateSpec.java rename to algorithm-specifications/src/main/java/org/neo4j/gds/scaling/ScalePropertiesMutateSpec.java index f57e8fd7da..0eeee19e94 100644 --- a/proc/misc/src/main/java/org/neo4j/gds/scaling/ScalePropertiesMutateSpec.java +++ b/algorithm-specifications/src/main/java/org/neo4j/gds/scaling/ScalePropertiesMutateSpec.java @@ -34,8 +34,7 @@ import java.util.stream.Stream; import static org.neo4j.gds.executor.ExecutionMode.MUTATE_NODE_PROPERTY; -import static org.neo4j.gds.scaling.ScalePropertiesProc.SCALE_PROPERTIES_DESCRIPTION; -import static org.neo4j.gds.scaling.ScalePropertiesProc.validateLegacyScalers; +import static org.neo4j.gds.scaling.Constants.SCALE_PROPERTIES_DESCRIPTION; @GdsCallable(name = "gds.scaleProperties.mutate", aliases = {"gds.alpha.scaleProperties.mutate"}, description = SCALE_PROPERTIES_DESCRIPTION, executionMode = MUTATE_NODE_PROPERTY) public class ScalePropertiesMutateSpec implements AlgorithmSpec, ScalePropertiesFactory> { @@ -58,11 +57,7 @@ public ScalePropertiesFactory algorithmFactory(Exec @Override public NewConfigFunction newConfigFunction() { - return (__, userInput) -> { - var config = ScalePropertiesMutateConfig.of(userInput); - validateLegacyScalers(config, allowL1L2Scalers); - return config; - }; + return (__, userInput) -> ScalePropertiesMutateConfig.of(userInput); } @Override diff --git a/proc/misc/src/main/java/org/neo4j/gds/scaling/ScalePropertiesStatsSpec.java b/algorithm-specifications/src/main/java/org/neo4j/gds/scaling/ScalePropertiesStatsSpec.java similarity index 87% rename from proc/misc/src/main/java/org/neo4j/gds/scaling/ScalePropertiesStatsSpec.java rename to algorithm-specifications/src/main/java/org/neo4j/gds/scaling/ScalePropertiesStatsSpec.java index 99510b54f5..e426d3391a 100644 --- a/proc/misc/src/main/java/org/neo4j/gds/scaling/ScalePropertiesStatsSpec.java +++ b/algorithm-specifications/src/main/java/org/neo4j/gds/scaling/ScalePropertiesStatsSpec.java @@ -34,8 +34,7 @@ import java.util.stream.Stream; import static org.neo4j.gds.executor.ExecutionMode.STREAM; -import static org.neo4j.gds.scaling.ScalePropertiesProc.SCALE_PROPERTIES_DESCRIPTION; -import static org.neo4j.gds.scaling.ScalePropertiesProc.validateLegacyScalers; +import static org.neo4j.gds.scaling.Constants.SCALE_PROPERTIES_DESCRIPTION; @GdsCallable(name = "gds.scaleProperties.stats", description = SCALE_PROPERTIES_DESCRIPTION, executionMode = STREAM) public class ScalePropertiesStatsSpec implements AlgorithmSpec, ScalePropertiesFactory> { @@ -51,11 +50,7 @@ public ScalePropertiesFactory algorithmFactory(Execu @Override public NewConfigFunction newConfigFunction() { - return (__, userInput) -> { - var config = ScalePropertiesStatsConfig.of(userInput); - validateLegacyScalers(config, false); - return config; - }; + return (__, userInput) -> ScalePropertiesStatsConfig.of(userInput); } @Override diff --git a/proc/misc/src/main/java/org/neo4j/gds/scaling/ScalePropertiesStreamSpec.java b/algorithm-specifications/src/main/java/org/neo4j/gds/scaling/ScalePropertiesStreamSpec.java similarity index 87% rename from proc/misc/src/main/java/org/neo4j/gds/scaling/ScalePropertiesStreamSpec.java rename to algorithm-specifications/src/main/java/org/neo4j/gds/scaling/ScalePropertiesStreamSpec.java index d98e83c913..19cad46fa3 100644 --- a/proc/misc/src/main/java/org/neo4j/gds/scaling/ScalePropertiesStreamSpec.java +++ b/algorithm-specifications/src/main/java/org/neo4j/gds/scaling/ScalePropertiesStreamSpec.java @@ -34,8 +34,7 @@ import java.util.stream.Stream; import static org.neo4j.gds.executor.ExecutionMode.STREAM; -import static org.neo4j.gds.scaling.ScalePropertiesProc.SCALE_PROPERTIES_DESCRIPTION; -import static org.neo4j.gds.scaling.ScalePropertiesProc.validateLegacyScalers; +import static org.neo4j.gds.scaling.Constants.SCALE_PROPERTIES_DESCRIPTION; @GdsCallable(name = "gds.scaleProperties.stream", aliases = {"gds.alpha.scaleProperties.stream"}, description = SCALE_PROPERTIES_DESCRIPTION, executionMode = STREAM) public class ScalePropertiesStreamSpec implements AlgorithmSpec, ScalePropertiesFactory> { @@ -58,11 +57,7 @@ public ScalePropertiesFactory algorithmFactory(Exec @Override public NewConfigFunction newConfigFunction() { - return (__, userInput) -> { - var config = ScalePropertiesStreamConfig.of(userInput); - validateLegacyScalers(config, allowL1L2Scalers); - return config; - }; + return (__, userInput) -> ScalePropertiesStreamConfig.of(userInput); } @Override diff --git a/proc/misc/src/main/java/org/neo4j/gds/scaling/ScalePropertiesWriteSpec.java b/algorithm-specifications/src/main/java/org/neo4j/gds/scaling/ScalePropertiesWriteSpec.java similarity index 87% rename from proc/misc/src/main/java/org/neo4j/gds/scaling/ScalePropertiesWriteSpec.java rename to algorithm-specifications/src/main/java/org/neo4j/gds/scaling/ScalePropertiesWriteSpec.java index aa71b0d4bd..1539668178 100644 --- a/proc/misc/src/main/java/org/neo4j/gds/scaling/ScalePropertiesWriteSpec.java +++ b/algorithm-specifications/src/main/java/org/neo4j/gds/scaling/ScalePropertiesWriteSpec.java @@ -34,8 +34,7 @@ import java.util.stream.Stream; -import static org.neo4j.gds.scaling.ScalePropertiesProc.SCALE_PROPERTIES_DESCRIPTION; -import static org.neo4j.gds.scaling.ScalePropertiesProc.validateLegacyScalers; +import static org.neo4j.gds.scaling.Constants.SCALE_PROPERTIES_DESCRIPTION; @GdsCallable(name = "gds.scaleProperties.write", description = SCALE_PROPERTIES_DESCRIPTION, executionMode = ExecutionMode.WRITE_NODE_PROPERTY) public class ScalePropertiesWriteSpec implements AlgorithmSpec, ScalePropertiesFactory> { @@ -52,11 +51,7 @@ public ScalePropertiesFactory algorithmFactory(Execu @Override public NewConfigFunction newConfigFunction() { - return (__, userInput) -> { - var config = ScalePropertiesWriteConfig.of(userInput); - validateLegacyScalers(config, false); - return config; - }; + return (__, userInput) -> ScalePropertiesWriteConfig.of(userInput); } @Override diff --git a/algorithm-specifications/src/main/java/org/neo4j/gds/undirected/Constants.java b/algorithm-specifications/src/main/java/org/neo4j/gds/undirected/Constants.java new file mode 100644 index 0000000000..305b77eb6b --- /dev/null +++ b/algorithm-specifications/src/main/java/org/neo4j/gds/undirected/Constants.java @@ -0,0 +1,26 @@ +/* + * Copyright (c) "Neo4j" + * Neo4j Sweden AB [http://neo4j.com] + * + * This file is part of Neo4j. + * + * Neo4j 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.neo4j.gds.undirected; + +final class Constants { + static final String TO_UNDIRECTED_DESCRIPTION = "The ToUndirected procedure converts directed relationships to undirected relationships"; + + private Constants() {} +} diff --git a/proc/misc/src/main/java/org/neo4j/gds/undirected/ToUndirectedSpec.java b/algorithm-specifications/src/main/java/org/neo4j/gds/undirected/ToUndirectedSpec.java similarity index 100% rename from proc/misc/src/main/java/org/neo4j/gds/undirected/ToUndirectedSpec.java rename to algorithm-specifications/src/main/java/org/neo4j/gds/undirected/ToUndirectedSpec.java diff --git a/proc/misc/src/main/java/org/neo4j/gds/walking/CollapsePathMutateSpec.java b/algorithm-specifications/src/main/java/org/neo4j/gds/walking/CollapsePathMutateSpec.java similarity index 95% rename from proc/misc/src/main/java/org/neo4j/gds/walking/CollapsePathMutateSpec.java rename to algorithm-specifications/src/main/java/org/neo4j/gds/walking/CollapsePathMutateSpec.java index 546f96cca2..aef5a67853 100644 --- a/proc/misc/src/main/java/org/neo4j/gds/walking/CollapsePathMutateSpec.java +++ b/algorithm-specifications/src/main/java/org/neo4j/gds/walking/CollapsePathMutateSpec.java @@ -31,12 +31,12 @@ import java.util.stream.Stream; import static org.neo4j.gds.executor.ExecutionMode.MUTATE_RELATIONSHIP; -import static org.neo4j.gds.walking.CollapsePathMutateProc.DESCRIPTION; +import static org.neo4j.gds.walking.Constants.COLLAPSE_PATH_DESCRIPTION; @GdsCallable( name = "gds.collapsePath.mutate", aliases = "gds.beta.collapsePath.mutate", - description = DESCRIPTION, + description = COLLAPSE_PATH_DESCRIPTION, executionMode = MUTATE_RELATIONSHIP ) public class CollapsePathMutateSpec implements AlgorithmSpec, CollapsePathAlgorithmFactory> { diff --git a/algorithm-specifications/src/main/java/org/neo4j/gds/walking/Constants.java b/algorithm-specifications/src/main/java/org/neo4j/gds/walking/Constants.java new file mode 100644 index 0000000000..fbacf71650 --- /dev/null +++ b/algorithm-specifications/src/main/java/org/neo4j/gds/walking/Constants.java @@ -0,0 +1,26 @@ +/* + * Copyright (c) "Neo4j" + * Neo4j Sweden AB [http://neo4j.com] + * + * This file is part of Neo4j. + * + * Neo4j 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.neo4j.gds.walking; + +final class Constants { + static final String COLLAPSE_PATH_DESCRIPTION = "Collapse Path algorithm is a traversal algorithm capable of creating relationships between the start and end nodes of a traversal"; + + private Constants() {} +} diff --git a/proc/misc/build.gradle b/proc/misc/build.gradle index 5d326409aa..c6ea1456f9 100644 --- a/proc/misc/build.gradle +++ b/proc/misc/build.gradle @@ -7,49 +7,28 @@ group = 'org.neo4j.gds' dependencies { annotationProcessor project(':procedure-collector') - // TODO: remove this fella - implementation project(':algo') - - implementation project(':algorithms-machinery') -// implementation project(':algorithms-procedure-facade') - implementation project(':algo-common') - implementation project(':annotations') - implementation project(':config-api') - implementation project(':core') - implementation project(':core-write') - implementation project(':core-utils') - implementation project(':csv') - implementation project(':executor') - implementation project(':logging') - implementation project(':memory-usage') - -// implementation project(':opengds-procedure-facade') + implementation project(':neo4j-kernel-adapter') implementation project(':procedures-facade-api') - - implementation project(':operations-facade-api') implementation project(':proc-common') - implementation project(':proc-embeddings') implementation project(':progress-tracking') - implementation project(':string-formatting') - implementation project(':transaction') compileOnly openGds.jetbrains.annotations compileOnly openGds.immutables.builder compileOnly openGds.immutables.value.annotations - neodeps().each { - compileOnly(group: 'org.neo4j', name: it, version: ver.'neo4j') { - transitive = false - } - } + compileOnly group: 'org.neo4j', name: 'neo4j-procedure-api', version: ver.neo4j + compileOnly group: 'org.neo4j', name: 'neo4j-kernel-api', version: ver.neo4j testCompileOnly openGds.immutables.builder - + testImplementation project(':core') + testImplementation project(':core-utils') + testImplementation project(':executor') testImplementation project(':graph-schema-api') testImplementation project(':ml-core') testImplementation project(':proc-test') + testImplementation project(':string-formatting') testImplementation project(':opengds-extension') } diff --git a/proc/misc/src/main/java/org/neo4j/gds/indexInverse/Constants.java b/proc/misc/src/main/java/org/neo4j/gds/indexInverse/Constants.java index 454278dba5..be06e207ac 100644 --- a/proc/misc/src/main/java/org/neo4j/gds/indexInverse/Constants.java +++ b/proc/misc/src/main/java/org/neo4j/gds/indexInverse/Constants.java @@ -19,6 +19,8 @@ */ package org.neo4j.gds.indexInverse; -class Constants { +final class Constants { static final String INDEX_INVERSE_DESCRIPTION = "The IndexInverse procedure indexes directed relationships to allow an efficient inverse access for other algorithms."; + + private Constants() {} } diff --git a/proc/misc/src/main/java/org/neo4j/gds/scaling/Constants.java b/proc/misc/src/main/java/org/neo4j/gds/scaling/Constants.java new file mode 100644 index 0000000000..01dccadd79 --- /dev/null +++ b/proc/misc/src/main/java/org/neo4j/gds/scaling/Constants.java @@ -0,0 +1,28 @@ +/* + * Copyright (c) "Neo4j" + * Neo4j Sweden AB [http://neo4j.com] + * + * This file is part of Neo4j. + * + * Neo4j 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.neo4j.gds.scaling; + +final class Constants { + + private Constants() {} + + static final String SCALE_PROPERTIES_DESCRIPTION = "Scale node properties"; + +} diff --git a/proc/misc/src/main/java/org/neo4j/gds/scaling/ScalePropertiesMutateProc.java b/proc/misc/src/main/java/org/neo4j/gds/scaling/ScalePropertiesMutateProc.java index 15255fdafd..3bd770831a 100644 --- a/proc/misc/src/main/java/org/neo4j/gds/scaling/ScalePropertiesMutateProc.java +++ b/proc/misc/src/main/java/org/neo4j/gds/scaling/ScalePropertiesMutateProc.java @@ -32,7 +32,7 @@ import java.util.stream.Stream; import static org.neo4j.gds.procedures.ProcedureConstants.MEMORY_ESTIMATION_DESCRIPTION; -import static org.neo4j.gds.scaling.ScalePropertiesProc.SCALE_PROPERTIES_DESCRIPTION; +import static org.neo4j.gds.scaling.Constants.SCALE_PROPERTIES_DESCRIPTION; import static org.neo4j.procedure.Mode.READ; public class ScalePropertiesMutateProc { diff --git a/proc/misc/src/main/java/org/neo4j/gds/scaling/ScalePropertiesProc.java b/proc/misc/src/main/java/org/neo4j/gds/scaling/ScalePropertiesProc.java deleted file mode 100644 index 9ac2d2a57f..0000000000 --- a/proc/misc/src/main/java/org/neo4j/gds/scaling/ScalePropertiesProc.java +++ /dev/null @@ -1,58 +0,0 @@ -/* - * Copyright (c) "Neo4j" - * Neo4j Sweden AB [http://neo4j.com] - * - * This file is part of Neo4j. - * - * Neo4j 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.neo4j.gds.scaling; - -import org.neo4j.gds.algorithms.misc.ScaledPropertiesNodePropertyValues; -import org.neo4j.gds.api.properties.nodes.NodePropertyValues; -import org.neo4j.gds.collections.ha.HugeObjectArray; -import org.neo4j.gds.executor.ComputationResult; -import org.neo4j.gds.scaleproperties.ScaleProperties; -import org.neo4j.gds.scaleproperties.ScalePropertiesBaseConfig; -import org.neo4j.gds.scaleproperties.ScalePropertiesResult; - -public final class ScalePropertiesProc { - - private ScalePropertiesProc() {} - - static final String SCALE_PROPERTIES_DESCRIPTION = "Scale node properties"; - - static NodePropertyValues nodeProperties( - ComputationResult computationResult - ) { - var size = computationResult.graph().nodeCount(); - var scaledProperties = computationResult.result() - .map(ScalePropertiesResult::scaledProperties) - .orElseGet(() -> HugeObjectArray.newArray(double[].class, 0)); - - return new ScaledPropertiesNodePropertyValues(size, scaledProperties); - } - - static NodePropertyValues nodeProperties(long size, HugeObjectArray scaledProperties) { - return new ScaledPropertiesNodePropertyValues(size, scaledProperties); - } - - static void validateLegacyScalers(ScalePropertiesBaseConfig config, boolean allowL1L2Scalers) { - var specifiedScaler = config.scaler().type(); - if (!allowL1L2Scalers && (specifiedScaler.equals(L1Norm.TYPE) || specifiedScaler.equals(L2Norm.TYPE))) { - ScalerFactory.throwForInvalidScaler(specifiedScaler); - } - } - -} diff --git a/proc/misc/src/main/java/org/neo4j/gds/scaling/ScalePropertiesStatsProc.java b/proc/misc/src/main/java/org/neo4j/gds/scaling/ScalePropertiesStatsProc.java index aa222fe17a..e5f3533c7d 100644 --- a/proc/misc/src/main/java/org/neo4j/gds/scaling/ScalePropertiesStatsProc.java +++ b/proc/misc/src/main/java/org/neo4j/gds/scaling/ScalePropertiesStatsProc.java @@ -19,9 +19,9 @@ */ package org.neo4j.gds.scaling; +import org.neo4j.gds.applications.algorithms.machinery.MemoryEstimateResult; import org.neo4j.gds.procedures.GraphDataScienceProcedures; import org.neo4j.gds.procedures.algorithms.miscellaneous.ScalePropertiesStatsResult; -import org.neo4j.gds.applications.algorithms.machinery.MemoryEstimateResult; import org.neo4j.procedure.Context; import org.neo4j.procedure.Description; import org.neo4j.procedure.Name; @@ -31,7 +31,7 @@ import java.util.stream.Stream; import static org.neo4j.gds.procedures.ProcedureConstants.MEMORY_ESTIMATION_DESCRIPTION; -import static org.neo4j.gds.scaling.ScalePropertiesProc.SCALE_PROPERTIES_DESCRIPTION; +import static org.neo4j.gds.scaling.Constants.SCALE_PROPERTIES_DESCRIPTION; import static org.neo4j.procedure.Mode.READ; public class ScalePropertiesStatsProc { diff --git a/proc/misc/src/main/java/org/neo4j/gds/scaling/ScalePropertiesStreamProc.java b/proc/misc/src/main/java/org/neo4j/gds/scaling/ScalePropertiesStreamProc.java index b7b917b135..1d1858a854 100644 --- a/proc/misc/src/main/java/org/neo4j/gds/scaling/ScalePropertiesStreamProc.java +++ b/proc/misc/src/main/java/org/neo4j/gds/scaling/ScalePropertiesStreamProc.java @@ -19,9 +19,9 @@ */ package org.neo4j.gds.scaling; +import org.neo4j.gds.applications.algorithms.machinery.MemoryEstimateResult; import org.neo4j.gds.procedures.GraphDataScienceProcedures; import org.neo4j.gds.procedures.algorithms.miscellaneous.ScalePropertiesStreamResult; -import org.neo4j.gds.applications.algorithms.machinery.MemoryEstimateResult; import org.neo4j.procedure.Context; import org.neo4j.procedure.Description; import org.neo4j.procedure.Internal; @@ -32,7 +32,7 @@ import java.util.stream.Stream; import static org.neo4j.gds.procedures.ProcedureConstants.MEMORY_ESTIMATION_DESCRIPTION; -import static org.neo4j.gds.scaling.ScalePropertiesProc.SCALE_PROPERTIES_DESCRIPTION; +import static org.neo4j.gds.scaling.Constants.SCALE_PROPERTIES_DESCRIPTION; import static org.neo4j.procedure.Mode.READ; public class ScalePropertiesStreamProc { diff --git a/proc/misc/src/main/java/org/neo4j/gds/scaling/ScalePropertiesWriteProc.java b/proc/misc/src/main/java/org/neo4j/gds/scaling/ScalePropertiesWriteProc.java index a934ee2510..ae7b0bf38a 100644 --- a/proc/misc/src/main/java/org/neo4j/gds/scaling/ScalePropertiesWriteProc.java +++ b/proc/misc/src/main/java/org/neo4j/gds/scaling/ScalePropertiesWriteProc.java @@ -31,7 +31,7 @@ import java.util.stream.Stream; import static org.neo4j.gds.procedures.ProcedureConstants.MEMORY_ESTIMATION_DESCRIPTION; -import static org.neo4j.gds.scaling.ScalePropertiesProc.SCALE_PROPERTIES_DESCRIPTION; +import static org.neo4j.gds.scaling.Constants.SCALE_PROPERTIES_DESCRIPTION; import static org.neo4j.procedure.Mode.READ; import static org.neo4j.procedure.Mode.WRITE; diff --git a/proc/misc/src/main/java/org/neo4j/gds/undirected/Constants.java b/proc/misc/src/main/java/org/neo4j/gds/undirected/Constants.java index 305b77eb6b..5ba8a160ad 100644 --- a/proc/misc/src/main/java/org/neo4j/gds/undirected/Constants.java +++ b/proc/misc/src/main/java/org/neo4j/gds/undirected/Constants.java @@ -21,6 +21,7 @@ final class Constants { static final String TO_UNDIRECTED_DESCRIPTION = "The ToUndirected procedure converts directed relationships to undirected relationships"; + static final String CALLABLE_NAME = "gds.graph.relationships.toUndirected"; private Constants() {} } diff --git a/proc/misc/src/main/java/org/neo4j/gds/undirected/ToUndirectedProc.java b/proc/misc/src/main/java/org/neo4j/gds/undirected/ToUndirectedProc.java index 01f49b9962..d5db14440b 100644 --- a/proc/misc/src/main/java/org/neo4j/gds/undirected/ToUndirectedProc.java +++ b/proc/misc/src/main/java/org/neo4j/gds/undirected/ToUndirectedProc.java @@ -43,7 +43,7 @@ public class ToUndirectedProc { @Deprecated(forRemoval = true) @Procedure( value = "gds.beta.graph.relationships.toUndirected", mode = READ, - deprecatedBy = ToUndirectedSpec.CALLABLE_NAME + deprecatedBy = Constants.CALLABLE_NAME ) @Description(TO_UNDIRECTED_DESCRIPTION) public Stream mutateDeprecated( diff --git a/proc/misc/src/main/java/org/neo4j/gds/walking/CollapsePathMutateProc.java b/proc/misc/src/main/java/org/neo4j/gds/walking/CollapsePathMutateProc.java index 0b63a65810..d8837ff340 100644 --- a/proc/misc/src/main/java/org/neo4j/gds/walking/CollapsePathMutateProc.java +++ b/proc/misc/src/main/java/org/neo4j/gds/walking/CollapsePathMutateProc.java @@ -34,13 +34,11 @@ public class CollapsePathMutateProc { - static final String DESCRIPTION = "Collapse Path algorithm is a traversal algorithm capable of creating relationships between the start and end nodes of a traversal"; - @Context public GraphDataScienceProcedures facade; @Procedure(name = "gds.collapsePath.mutate", mode = READ) - @Description(DESCRIPTION) + @Description(Constants.COLLAPSE_PATH_DESCRIPTION) public Stream mutate( @Name(value = "graphName") String graphName, @Name(value = "configuration", defaultValue = "{}") Map configuration @@ -49,7 +47,7 @@ public Stream mutate( } @Procedure(name = "gds.beta.collapsePath.mutate", mode = READ, deprecatedBy = "gds.collapsePath.mutate") - @Description(DESCRIPTION) + @Description(Constants.COLLAPSE_PATH_DESCRIPTION) @Deprecated(forRemoval = true) @Internal public Stream betaMutate( diff --git a/proc/misc/src/main/java/org/neo4j/gds/walking/Constants.java b/proc/misc/src/main/java/org/neo4j/gds/walking/Constants.java new file mode 100644 index 0000000000..fbacf71650 --- /dev/null +++ b/proc/misc/src/main/java/org/neo4j/gds/walking/Constants.java @@ -0,0 +1,26 @@ +/* + * Copyright (c) "Neo4j" + * Neo4j Sweden AB [http://neo4j.com] + * + * This file is part of Neo4j. + * + * Neo4j 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.neo4j.gds.walking; + +final class Constants { + static final String COLLAPSE_PATH_DESCRIPTION = "Collapse Path algorithm is a traversal algorithm capable of creating relationships between the start and end nodes of a traversal"; + + private Constants() {} +}