aggregate

package
v1.24.12 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: May 9, 2024 License: BSD-3-Clause Imports: 17 Imported by: 0

Documentation

Overview

Package aggregate provides the local aggregate graphql endpoint for Weaviate

Index

Constants

View Source
const GroupedByFieldName = "groupedBy"

GroupedByFieldName is a special graphQL field that appears alongside the to-be-aggregated props, but doesn't require any processing by the connectors itself, as it just displays meta info about the overall aggregation.

Variables

This section is empty.

Functions

func Build

func Build(dbSchema *schema.Schema, config config.Config,
	modulesProvider ModulesProvider,
) (*graphql.Field, error)

Build the Aggregate Kinds schema

Types

type ModulesProvider

type ModulesProvider interface {
	AggregateArguments(class *models.Class) map[string]*graphql.ArgumentConfig
	ExtractSearchParams(arguments map[string]interface{}, className string) map[string]interface{}
}

type RequestsLog

type RequestsLog interface {
	Register(requestType string, identifier string)
}

RequestsLog is a local abstraction on the RequestsLog that needs to be provided to the graphQL API in order to log Local.Get queries.

type Resolver

type Resolver interface {
	Aggregate(ctx context.Context, principal *models.Principal, info *aggregation.Params) (interface{}, error)
}

Resolver is a local interface that can be composed with other interfaces to form the overall GraphQL API main interface. All data-base connectors that want to support the Meta feature must implement this interface.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL