api

package
v1.0.13 Latest Latest
Warning

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

Go to latest
Published: Apr 6, 2024 License: AGPL-3.0 Imports: 39 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func CreateMux

func CreateMux(
	storageServices *storage.Services,
	apiFunctions *ScratchDataAPIStruct,
	c config.ScratchDataConfig,
	destinationManager *destinations.DestinationManager,
) *chi.Mux

func PrometheusMiddleware added in v1.0.8

func PrometheusMiddleware(next http.Handler) http.Handler

func RunAPI

func RunAPI(ctx context.Context, config config.API, mux *chi.Mux)

func UserFromContext added in v1.0.11

func UserFromContext(c context.Context) (*models.User, bool)

Types

type CachedQueryData added in v1.0.7

type CachedQueryData struct {
	Query      string
	DatabaseID int64
}

type Flattener

type Flattener interface {
	Flatten(table string, json string) ([]JSONData, error)
}

type HorizontalFlattener

type HorizontalFlattener struct{}

func (HorizontalFlattener) Flatten

func (h HorizontalFlattener) Flatten(table string, json string) ([]JSONData, error)

type JSONData

type JSONData struct {
	Table string
	JSON  string
}

type MultiTableFlattener added in v1.0.12

type MultiTableFlattener struct {
	// contains filtered or unexported fields
}

func NewMultiTableFlattener added in v1.0.12

func NewMultiTableFlattener() MultiTableFlattener

func (MultiTableFlattener) Flatten added in v1.0.12

func (f MultiTableFlattener) Flatten(table string, json string) ([]JSONData, error)

func (MultiTableFlattener) FlattenJSON added in v1.0.12

func (f MultiTableFlattener) FlattenJSON(table string, data gjson.Result, parent_table string, parent_id int64) ([]JSONData, error)

type ScratchDataAPIStruct

type ScratchDataAPIStruct struct {
	// contains filtered or unexported fields
}

func NewScratchDataAPI

func NewScratchDataAPI(
	storageServices *storage.Services,
	destinationManager *destinations.DestinationManager,
	dataSink datasink.DataSink,
	conf config.ScratchDataConfig,
) (*ScratchDataAPIStruct, error)

func (*ScratchDataAPIStruct) AddAPIKey added in v1.0.7

func (a *ScratchDataAPIStruct) AddAPIKey(w http.ResponseWriter, r *http.Request)

func (*ScratchDataAPIStruct) AuthGetDatabaseID

func (a *ScratchDataAPIStruct) AuthGetDatabaseID(ctx context.Context) int64

func (*ScratchDataAPIStruct) AuthGetTeamID added in v1.0.11

func (a *ScratchDataAPIStruct) AuthGetTeamID(ctx context.Context) uint

func (*ScratchDataAPIStruct) AuthMiddleware

func (a *ScratchDataAPIStruct) AuthMiddleware(next http.Handler) http.Handler

func (*ScratchDataAPIStruct) Authenticator added in v1.0.11

func (a *ScratchDataAPIStruct) Authenticator(ja *jwtauth.JWTAuth) func(http.Handler) http.Handler

func (*ScratchDataAPIStruct) Columns added in v1.0.9

func (*ScratchDataAPIStruct) Copy added in v1.0.11

func (*ScratchDataAPIStruct) CreateDestination added in v1.0.7

func (a *ScratchDataAPIStruct) CreateDestination(w http.ResponseWriter, r *http.Request)

func (*ScratchDataAPIStruct) CreateQuery added in v1.0.7

func (a *ScratchDataAPIStruct) CreateQuery(w http.ResponseWriter, r *http.Request)

func (*ScratchDataAPIStruct) GetDestinations added in v1.0.7

func (a *ScratchDataAPIStruct) GetDestinations(w http.ResponseWriter, r *http.Request)

func (*ScratchDataAPIStruct) Healthcheck added in v1.0.10

func (a *ScratchDataAPIStruct) Healthcheck(w http.ResponseWriter, r *http.Request)

func (*ScratchDataAPIStruct) Insert

func (*ScratchDataAPIStruct) Login added in v1.0.11

func (*ScratchDataAPIStruct) Logout added in v1.0.11

func (*ScratchDataAPIStruct) OAuthCallback added in v1.0.11

func (a *ScratchDataAPIStruct) OAuthCallback(w http.ResponseWriter, r *http.Request)

func (*ScratchDataAPIStruct) Select

func (*ScratchDataAPIStruct) ShareData added in v1.0.7

func (a *ScratchDataAPIStruct) ShareData(w http.ResponseWriter, r *http.Request)

func (*ScratchDataAPIStruct) Tables added in v1.0.9

type VerticalFlattener

type VerticalFlattener struct{}

func (VerticalFlattener) Flatten

func (e VerticalFlattener) Flatten(table string, json string) ([]JSONData, error)

Jump to

Keyboard shortcuts

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