Class ExtensionBuilder
- java.lang.Object
-
- org.neo4j.gds.procedures.integration.ExtensionBuilder
-
public final class ExtensionBuilder extends java.lang.ObjectThis is a general builder for extensions. It includes convenience for theGraphDataSciencecomponent, but allows arbitrary component registration.
-
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static ExtensionBuildercreate(org.neo4j.gds.logging.Log log, org.neo4j.graphdb.config.Configuration neo4jConfiguration, org.neo4j.kernel.api.procedure.GlobalProcedures globalProcedures)We create the extension builder purely from a few Neo4j servicesorg.neo4j.function.ThrowingFunction<org.neo4j.kernel.api.procedure.Context,org.neo4j.gds.procedures.GraphDataScience,org.neo4j.internal.kernel.api.exceptions.ProcedureException>gdsProvider(ExporterBuildersProviderService exporterBuildersProviderService, java.util.Optional<java.util.function.Function<org.neo4j.gds.applications.graphstorecatalog.CatalogBusinessFacade,org.neo4j.gds.applications.graphstorecatalog.CatalogBusinessFacade>> businessFacadeDecorator, org.neo4j.gds.metrics.MetricsFacade metricsFacade, java.util.Optional<java.util.function.Function<org.neo4j.gds.applications.algorithms.pathfinding.AlgorithmProcessingTemplate,org.neo4j.gds.applications.algorithms.pathfinding.AlgorithmProcessingTemplate>> algorithmProcessingTemplateDecorator, org.neo4j.gds.modelcatalogservices.ModelCatalogServiceProvider modelCatalogServiceProvider)Convenience for putting together theGraphDataScienceprovider.org.neo4j.kernel.lifecycle.LifecycleregisterExtension()The finalisation of the builder registers components with Neo4j<T> ExtensionBuilderwithComponent(java.lang.Class<T> cls, java.util.function.Supplier<org.neo4j.function.ThrowingFunction<org.neo4j.kernel.api.procedure.Context,T,org.neo4j.internal.kernel.api.exceptions.ProcedureException>> provider)
-
-
-
Method Detail
-
create
public static ExtensionBuilder create(org.neo4j.gds.logging.Log log, org.neo4j.graphdb.config.Configuration neo4jConfiguration, org.neo4j.kernel.api.procedure.GlobalProcedures globalProcedures)
We create the extension builder purely from a few Neo4j services
-
withComponent
public <T> ExtensionBuilder withComponent(java.lang.Class<T> cls, java.util.function.Supplier<org.neo4j.function.ThrowingFunction<org.neo4j.kernel.api.procedure.Context,T,org.neo4j.internal.kernel.api.exceptions.ProcedureException>> provider)
-
registerExtension
public org.neo4j.kernel.lifecycle.Lifecycle registerExtension()
The finalisation of the builder registers components with Neo4j
-
gdsProvider
public org.neo4j.function.ThrowingFunction<org.neo4j.kernel.api.procedure.Context,org.neo4j.gds.procedures.GraphDataScience,org.neo4j.internal.kernel.api.exceptions.ProcedureException> gdsProvider(ExporterBuildersProviderService exporterBuildersProviderService, java.util.Optional<java.util.function.Function<org.neo4j.gds.applications.graphstorecatalog.CatalogBusinessFacade,org.neo4j.gds.applications.graphstorecatalog.CatalogBusinessFacade>> businessFacadeDecorator, org.neo4j.gds.metrics.MetricsFacade metricsFacade, java.util.Optional<java.util.function.Function<org.neo4j.gds.applications.algorithms.pathfinding.AlgorithmProcessingTemplate,org.neo4j.gds.applications.algorithms.pathfinding.AlgorithmProcessingTemplate>> algorithmProcessingTemplateDecorator, org.neo4j.gds.modelcatalogservices.ModelCatalogServiceProvider modelCatalogServiceProvider)
Convenience for putting together theGraphDataScienceprovider. You can customise a few things, but overall most things are dull here.- Parameters:
exporterBuildersProviderService- The catalog of writersbusinessFacadeDecorator- Any checks added across requestsmetricsFacade-
-
-