hasuradb

package
v1.0.0 Latest Latest
Warning

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

Go to latest
Published: Dec 17, 2019 License: Apache-2.0 Imports: 19 Imported by: 0

Documentation

Index

Constants

View Source
const (
	DefaultMigrationsTable = "schema_migrations"
	DefaultSchema          = "hdb_catalog"
)
View Source
const (
	TuplesOK  = "TuplesOk"
	CommandOK = "CommandOk"
)
View Source
const (
	DefaultSettingsTable = "migration_settings"
)

Variables

View Source
var (
	ErrNilConfig      = fmt.Errorf("no config")
	ErrNoDatabaseName = fmt.Errorf("no database name")
	ErrNoSchema       = fmt.Errorf("no schema")
	ErrDatabaseDirty  = fmt.Errorf("database is dirty")
)

Functions

func WithInstance

func WithInstance(config *Config, logger *log.Logger) (database.Driver, error)

Types

type Config

type Config struct {
	MigrationsTable string
	SettingsTable   string

	Headers map[string]string
	// contains filtered or unexported fields
}

type CustomQuery

type CustomQuery linq.Query

func (CustomQuery) MergeAllowLists

func (q CustomQuery) MergeAllowLists(squashList *database.CustomList) error

func (CustomQuery) MergeComputedFields

func (q CustomQuery) MergeComputedFields(squashList *database.CustomList) error

func (CustomQuery) MergeEventTriggers

func (q CustomQuery) MergeEventTriggers(squashList *database.CustomList) error

func (CustomQuery) MergeFunctions

func (q CustomQuery) MergeFunctions(squashList *database.CustomList) error

func (CustomQuery) MergePermissions

func (q CustomQuery) MergePermissions(squashList *database.CustomList) error

func (CustomQuery) MergeQueryCollections

func (q CustomQuery) MergeQueryCollections(squashList *database.CustomList) error

func (CustomQuery) MergeQueryInCollections

func (q CustomQuery) MergeQueryInCollections(squashList *database.CustomList) error

func (CustomQuery) MergeRelationships

func (q CustomQuery) MergeRelationships(squashList *database.CustomList) error

func (CustomQuery) MergeRemoteSchemas

func (q CustomQuery) MergeRemoteSchemas(squashList *database.CustomList) error

func (CustomQuery) MergeTableCustomFields

func (q CustomQuery) MergeTableCustomFields(squashList *database.CustomList) error

func (CustomQuery) MergeTables

func (q CustomQuery) MergeTables(squashList *database.CustomList) error

type HasuraArgs

type HasuraArgs struct {
	SQL       string        `json:"sql,omitempty" yaml:"sql"`
	Table     interface{}   `json:"table,omitempty"`
	Columns   interface{}   `json:"columns,omitempty"`
	Where     interface{}   `json:"where,omitempty"`
	OrderBy   interface{}   `json:"order_by,omitempty"`
	Objects   []interface{} `json:"objects,omitempty"`
	Limit     int           `json:"limit,omitempty"`
	Returning []string      `json:"returning,omitempty"`
	Set       interface{}   `json:"$set,omitempty"`
}

type HasuraBulk

type HasuraBulk struct {
	Type string        `json:"type" yaml:"type"`
	Args []HasuraQuery `json:"args" yaml:"args"`
}

type HasuraColumn

type HasuraColumn struct {
	Name    string      `json:"name"`
	Columns interface{} `json:"columns,omitempty"`
}

type HasuraDB

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

func (*HasuraDB) ApplyMetadata

func (h *HasuraDB) ApplyMetadata(data interface{}) error

func (*HasuraDB) Close

func (h *HasuraDB) Close() error

func (*HasuraDB) Drop

func (h *HasuraDB) Drop() error

func (*HasuraDB) ExportMetadata

func (h *HasuraDB) ExportMetadata() (interface{}, error)

func (*HasuraDB) ExportSchemaDump

func (h *HasuraDB) ExportSchemaDump(schemaNames []string) ([]byte, error)

func (*HasuraDB) First

func (h *HasuraDB) First() (version uint64, ok bool)

func (*HasuraDB) GetSetting

func (h *HasuraDB) GetSetting(name string) (value string, err error)

func (*HasuraDB) InsertVersion

func (h *HasuraDB) InsertVersion(version int64) error

func (*HasuraDB) Last

func (h *HasuraDB) Last() (version uint64, ok bool)

func (*HasuraDB) Lock

func (h *HasuraDB) Lock() error

func (*HasuraDB) Next

func (h *HasuraDB) Next(version uint64) (nextVersion uint64, ok bool)

func (*HasuraDB) Open

func (h *HasuraDB) Open(url string, isCMD bool, logger *log.Logger) (database.Driver, error)

func (*HasuraDB) Prev

func (h *HasuraDB) Prev(version uint64) (prevVersion uint64, ok bool)

func (*HasuraDB) PushToList

func (h *HasuraDB) PushToList(migration io.Reader, fileType string, l *database.CustomList) error

func (*HasuraDB) Query

func (h *HasuraDB) Query(data []interface{}) error

func (*HasuraDB) Read

func (h *HasuraDB) Read(version uint64) (ok bool)

func (*HasuraDB) ReloadMetadata

func (h *HasuraDB) ReloadMetadata() error

ReloadMetadata - Reload Hasura GraphQL Engine metadata on the database

func (*HasuraDB) RemoveVersion

func (h *HasuraDB) RemoveVersion(version int64) error

func (*HasuraDB) Reset

func (h *HasuraDB) Reset() error

func (*HasuraDB) ResetMetadata

func (h *HasuraDB) ResetMetadata() error

func (*HasuraDB) ResetQuery

func (h *HasuraDB) ResetQuery()

func (*HasuraDB) Run

func (h *HasuraDB) Run(migration io.Reader, fileType, fileName string) error

func (*HasuraDB) Scan

func (h *HasuraDB) Scan() error

func (*HasuraDB) Squash

func (h *HasuraDB) Squash(l *database.CustomList, ret chan<- interface{})

func (*HasuraDB) UnLock

func (h *HasuraDB) UnLock() error

func (*HasuraDB) UpdateSetting

func (h *HasuraDB) UpdateSetting(name string, value string) error

func (*HasuraDB) Version

func (h *HasuraDB) Version() (version int64, dirty bool, err error)

type HasuraError

type HasuraError struct {
	Path         string            `json:"path"`
	ErrorMessage string            `json:"error"`
	Internal     *SQLInternalError `json:"internal,omitempty"`
	Message      string            `json:"message,omitempty"`
	Code         string            `json:"code"`
	// contains filtered or unexported fields
}

func (*HasuraError) APIError

func (h *HasuraError) APIError() error

func (*HasuraError) CMDError

func (h *HasuraError) CMDError() error

func (*HasuraError) Error

func (h *HasuraError) Error(isCMD bool) error

type HasuraInterfaceBulk

type HasuraInterfaceBulk struct {
	Type string        `json:"type" yaml:"type"`
	Args []interface{} `json:"args" yaml:"args"`
}

func (*HasuraInterfaceBulk) ResetArgs

func (h *HasuraInterfaceBulk) ResetArgs()

type HasuraInterfaceQuery

type HasuraInterfaceQuery struct {
	Type    requestTypes    `json:"type" yaml:"type"`
	Version metadataVersion `json:"version,omitempty" yaml:"version,omitempty"`
	Args    interface{}     `json:"args" yaml:"args"`
}

type HasuraOrderBy

type HasuraOrderBy struct {
	Column string `json:"column,omitempty"`
	Type   string `json:"type,omitempty"`
	Nulls  string `json:"nulls,omitempty"`
}

type HasuraQuery

type HasuraQuery struct {
	Type string     `json:"type" yaml:"type"`
	Args HasuraArgs `json:"args" yaml:"args"`
}

type HasuraSQLRes

type HasuraSQLRes struct {
	ResultType string     `json:"result_type"`
	Result     [][]string `json:"result"`
}

type PostgresError

type PostgresError struct {
	StatusCode  string `json:"status_code"`
	ExecStatus  string `json:"exec_status"`
	Message     string `json:"message"`
	Description string `json:"description"`
	Hint        string `json:"hint"`
}

type SQLInternalError

type SQLInternalError struct {
	Arguments []string      `json:"arguments"`
	Error     PostgresError `json:"error"`
	Prepared  bool          `json:"prepared"`
	Statement string        `json:"statement"`
}

type SchemaDump

type SchemaDump struct {
	Opts        []string `json:"opts"`
	CleanOutput bool     `json:"clean_output"`
}

Jump to

Keyboard shortcuts

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