Client Package Types
GraphBatchJob
type GraphBatchJob struct {
Commands []command.CommandInterface
Database string
Client *Neo4jClient
AccessMode neo4j.AccessMode
}
GraphBatchJob holds a set of commands conforming to the CypherCommandInterface.
GraphWorkerPool
type GraphWorkerPool struct {
Client *Neo4jClient
JobQueue chan GraphBatchJob
Workers int
StopChan chan struct{}
WaitGroup sync.WaitGroup
Logger *logrus.Logger
JobWaitGroup sync.WaitGroup
}
GraphWorkerPool represents a graph worker pool
Neo4jClient
type Neo4jClient struct {
URI string
Username string
Driver neo4j.DriverWithContext
}
Neo4jClient holds information about a Neo4j client.
RelationalClient
type RelationalClient struct {
DB *sql.DB
}
RelationalClient provides an abstraction over raw database interactions for relational databases.
RelationalWorkerPool
type RelationalWorkerPool struct {
DB *sql.DB
JobQueue chan RelationalBatchJob
Workers int
StopChan chan struct{}
WaitGroup sync.WaitGroup
Logger *logrus.Logger
JobWaitGroup sync.WaitGroup
}
RelationalWorkerPool manages a pool of workers processing jobs.
Last modified: 28 January 2025