54 lines
1.4 KiB
Markdown
54 lines
1.4 KiB
Markdown
|
# Anthrove Plug SDK
|
||
|
|
||
|
Anthrove Plug SDK is a Golang-based Software Development Kit (SDK) that provides a gRPC server implementation for the Anthrove system. This SDK enables users to easily set up a server, establish a graph database connection, and set a task execution function.
|
||
|
|
||
|
## Installation
|
||
|
|
||
|
To install the Anthrove Plug SDK, you will need to have Go installed on your system. You can then use the go get command to fetch the SDK:
|
||
|
|
||
|
```bash
|
||
|
go get git.dragse.it/anthrove/plug-sdk
|
||
|
```
|
||
|
## Usage
|
||
|
|
||
|
Below is a basic example of how to use the SDK:
|
||
|
|
||
|
````go
|
||
|
package main
|
||
|
|
||
|
import (
|
||
|
"context"
|
||
|
"git.dragse.it/anthrove/plug-sdk/pkg/otter"
|
||
|
"log"
|
||
|
"net"
|
||
|
"git.dragse.it/anthrove/otter-space-sdk/pkg/graph"
|
||
|
"git.dragse.it/anthrove/otter-space-sdk/pkg/models"
|
||
|
"git.dragse.it/anthrove/plug-sdk/pkg/plug"
|
||
|
)
|
||
|
|
||
|
func main() {
|
||
|
var ctx context.Context
|
||
|
|
||
|
// Initialize a new server
|
||
|
server := plug.NewServer(ctx, "localhost", "8080")
|
||
|
|
||
|
graph := otter.ConnectToDatabase(ctx, "endpoint", "username", "password", false)
|
||
|
|
||
|
// Set the graph database connection
|
||
|
server.WithGraphConnection(graph)
|
||
|
|
||
|
// Set the task execution function
|
||
|
server.TaskExecutionFunction(taskExecution)
|
||
|
|
||
|
// Listen for connections
|
||
|
if err := server.Listen(); err != nil {
|
||
|
log.Fatalf("Failed to listen: %v", err)
|
||
|
}
|
||
|
}
|
||
|
|
||
|
func taskExecution(ctx context.Context, graph graph.OtterSpace, sourceUsername string, anthroveUser models.AnthroveUser, deepScrape bool, cancelFunction func()) error {
|
||
|
// SOME EXECUTION MAGIC
|
||
|
}
|
||
|
|
||
|
````
|