Documentation
¶
Index ¶
- func AdminFromContext(ctx context.Context) (value *adminv1.Admin, found bool)
- func ContextWithAdmin(parent context.Context, admin *adminv1.Admin) context.Context
- func DevelopmentContext(parent context.Context) context.Context
- func ExposeNodes(nodes ...any) exposedNodes
- func IsDevelopmentContext(ctx context.Context) (value bool)
- func Mutation[Arg interfaces.GraphqlArgument, Out interfaces.GraphqlOutput](fn func(context.Context, Arg) (Out, error)) mutation
- func NewConnection(ctx context.Context, conf ConnectionConfig) *connection
- func NewFilesystemStorage(params FilesystemStorageConfig) *filesystemStorage
- func Query[Arg interfaces.GraphqlArgument, Out interfaces.GraphqlOutput](fn func(context.Context, Arg) (Out, error)) query
- type AdminHandler
- type AdminHandlerConfig
- type AdminHandlerParams
- type ApplicationConfig
- type ArangoAccess
- func (e *ArangoAccess) AutoMigrate(ctx context.Context, graph IGraph) error
- func (e *ArangoAccess) Collection(ctx context.Context, elem any, callbacks ...CollectionCallback) (err error)
- func (e *ArangoAccess) Create(ctx context.Context, val any) ([]string, error)
- func (e *ArangoAccess) Delete(ctx context.Context, item any) error
- func (e *ArangoAccess) Find(ctx context.Context, bindVars Vars, out any) error
- func (e *ArangoAccess) List(ctx context.Context, bindVars Vars, out any) (int64, error)
- func (e *ArangoAccess) ListKeys(ctx context.Context, keys []string, out any) error
- func (e *ArangoAccess) Read(ctx context.Context, key string, out any) error
- func (e *ArangoAccess) Relations(ctx context.Context, id string, bindVars Vars, direction Direction, out any) (int, error)
- func (e *ArangoAccess) Replace(ctx context.Context, key string, item any) error
- func (e *ArangoAccess) Update(ctx context.Context, key string, item any) error
- type CollectionCallback
- type ConnectionConfig
- type Direction
- type Empty
- type Event
- type FilesystemStorageConfig
- type Graph
- func (g *Graph) CollectionFor(t reflect.Type) string
- func (g *Graph) Edge(from, to, edge any)
- func (g *Graph) Edges() []reflect.Type
- func (g *Graph) Node(node any)
- func (g *Graph) Nodes() []reflect.Type
- func (g *Graph) Relation(edge reflect.Type) *Relation
- func (g *Graph) TypeOf(collection string) reflect.Type
- type GraphqlHandler
- type IAccess
- type IConnection
- type IFileStorage
- type IGraph
- type IObserver
- type Observer
- type PaginationResult
- type Processor
- type Relation
- type SourceID
- type Topic
- type Vars
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func AdminFromContext ¶ added in v0.0.11
AdminFromContext ...
func ContextWithAdmin ¶ added in v0.0.11
ContextWithAdmin ...
func DevelopmentContext ¶ added in v0.0.12
DevelopmentContext ...
func IsDevelopmentContext ¶ added in v0.0.12
IsDevelopmentContext ...
func Mutation ¶ added in v0.1.0
func Mutation[Arg interfaces.GraphqlArgument, Out interfaces.GraphqlOutput](fn func(context.Context, Arg) (Out, error)) mutation
Mutation ...
func NewConnection ¶
func NewConnection(ctx context.Context, conf ConnectionConfig) *connection
NewConnection ...
func NewFilesystemStorage ¶ added in v0.0.6
func NewFilesystemStorage(params FilesystemStorageConfig) *filesystemStorage
NewFilesystemStorage ...
func Query ¶ added in v0.1.0
func Query[Arg interfaces.GraphqlArgument, Out interfaces.GraphqlOutput](fn func(context.Context, Arg) (Out, error)) query
Query ...
Types ¶
type AdminHandler ¶ added in v0.4.3
type AdminHandler struct {
// contains filtered or unexported fields
}
AdminHandler ...
func NewAdminHandler ¶ added in v0.4.3
func NewAdminHandler(ctx context.Context, config AdminHandlerConfig, params AdminHandlerParams) *AdminHandler
NewAdminHandler ...
type AdminHandlerConfig ¶ added in v0.4.3
type AdminHandlerConfig struct {
Secret []byte
}
AdminHandlerConfig ...
type AdminHandlerParams ¶ added in v0.4.3
type AdminHandlerParams struct {
fx.In
Access IAccess
Graph IGraph
Storage IFileStorage
Observer IObserver[Topic]
}
AdminHandlerParams ...
type ApplicationConfig ¶ added in v0.0.9
type ApplicationConfig struct {
// Name ...
Name string `json:"name"`
// Domain ...
Domain string `json:"domain"`
// Logo ...
Logo string `json:"logo"`
}
ApplicationConfig ...
type ArangoAccess ¶ added in v0.4.3
type ArangoAccess struct {
// contains filtered or unexported fields
}
func NewArangoAccess ¶ added in v0.4.3
func NewArangoAccess(conn IConnection, observer IObserver[Topic]) *ArangoAccess
func (*ArangoAccess) AutoMigrate ¶ added in v0.4.3
func (e *ArangoAccess) AutoMigrate(ctx context.Context, graph IGraph) error
AutoMigrate ...
func (*ArangoAccess) Collection ¶ added in v0.4.3
func (e *ArangoAccess) Collection(ctx context.Context, elem any, callbacks ...CollectionCallback) (err error)
Collection ...
func (*ArangoAccess) Delete ¶ added in v0.4.3
func (e *ArangoAccess) Delete(ctx context.Context, item any) error
Delete ...
func (*ArangoAccess) Relations ¶ added in v0.4.3
func (e *ArangoAccess) Relations(ctx context.Context, id string, bindVars Vars, direction Direction, out any) (int, error)
Relations ...
type CollectionCallback ¶ added in v0.4.3
type CollectionCallback func(context.Context, driver.Collection)
CollectionCallback ...
type ConnectionConfig ¶ added in v0.4.3
type ConnectionConfig struct {
// DBName ...
DBName string
// UserName ...
UserName string
// Password ...
Password string
// Connection ...
Connection http.ConnectionConfig
}
ConnectionConfig ...
type Empty ¶ added in v0.4.3
type Empty struct{}
Empty is ignored from graphql input
func (*Empty) Argument ¶ added in v0.4.3
func (*Empty) Argument() graphql.FieldConfigArgument
type Event ¶
type Event[T comparable] struct { // Topic ... Topic T // Payload ... Payload protoreflect.ProtoMessage // Timestamp ... Timestamp time.Time }
Event ...
type FilesystemStorageConfig ¶ added in v0.4.3
type FilesystemStorageConfig struct {
// BasePath ...
BasePath string
// MaxMemory ...
MaxMemory int
}
FilesystemStorageConfig ...
type Graph ¶ added in v0.4.3
type Graph struct {
// contains filtered or unexported fields
}
Graph ...
func (*Graph) CollectionFor ¶ added in v0.4.3
CollectionFor ...
type GraphqlHandler ¶ added in v0.4.3
type GraphqlHandler struct {
// contains filtered or unexported fields
}
GraphqlHandler ...
func NewGraphqlHandler ¶ added in v0.4.3
func NewGraphqlHandler(access IAccess, graph IGraph) *GraphqlHandler
NewGraphqlHandler ...
type IAccess ¶ added in v0.4.3
type IAccess interface {
// AutoMigrate ...
AutoMigrate(ctx context.Context, graph IGraph) error
// Collection ...
Collection(ctx context.Context, elem any, callbacks ...CollectionCallback) (err error)
// List ...
List(ctx context.Context, bindVars Vars, out any) (int64, error)
// ListKeys ...
ListKeys(ctx context.Context, keys []string, out any) error
// Find ...
Find(ctx context.Context, bindVars Vars, out any) error
// Read ...
Read(ctx context.Context, key string, out any) error
// Create ...
Create(ctx context.Context, val any) ([]string, error)
// Update ...
Update(ctx context.Context, key string, item any) error
// Replace ...
Replace(ctx context.Context, key string, item any) error
// Delete ...
Delete(ctx context.Context, item any) error
// Relations ...
Relations(ctx context.Context, id string, bindVars Vars, direction Direction, out any) (int, error)
}
IAccess ...
type IConnection ¶
type IConnection interface {
// Database ...
Database(ctx context.Context) (driver.Database, error)
// Collection ...
Collection(ctx context.Context, elem any) (driver.Collection, error)
// Reflect ...
Reflect(ctx context.Context, elem reflect.Type) (driver.Collection, error)
}
IConnection ...
type IFileStorage ¶ added in v0.0.6
type IFileStorage interface {
// StoreFile ...
StoreFile(name string, file []byte) (err error)
// StoreByHash ...
StoreByHash(file []byte) (hash string, err error)
// ReadFile ...
ReadFile(name string) (fileContent []byte, errr error)
// MaxMemory ...
MaxMemory() int
}
IFileStorage ...
type IGraph ¶ added in v0.4.3
type IGraph interface {
// Node ...
Node(node any)
// Edge ...
Edge(from, to, edge any)
// Nodes ...
Nodes() []reflect.Type
// Edges ...
Edges() []reflect.Type
// Relation ...
Relation(edge reflect.Type) *Relation
// CollectionFor ...
CollectionFor(elem reflect.Type) string
// TypeOf ...
TypeOf(colection string) reflect.Type
}
IGraph ...
type IObserver ¶
type IObserver[T comparable] interface { // Subscribe ... Subscribe(t T, p Processor[T]) SourceID // Unsubscribe ... Unsubscribe(s SourceID) // Emit ... Emit(e *Event[T]) error }
IObserver ...
type Observer ¶
type Observer[T comparable] struct { // contains filtered or unexported fields }
Observer ...
type PaginationResult ¶ added in v0.1.14
Source Files
¶
Click to show internal directories.
Click to hide internal directories.