gdrive

package
v0.2.2 Latest Latest
Warning

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

Go to latest
Published: Aug 26, 2022 License: MIT Imports: 17 Imported by: 0

Documentation

Index

Constants

View Source
const (
	OriginType           = "GoogleDrive"
	FileTypeSpreadsheets = "spreadsheets"
	FileTypeCSV          = "csv"
)

Variables

This section is empty.

Functions

This section is empty.

Types

type ColumnConfig

type ColumnConfig struct {
	Name        string `yaml:"name,omitempty"`
	DataType    string `yaml:"data_type,omitempty"`
	DataLength  *int   `yaml:"length,omitempty"`
	Contraint   string `yaml:"contraint,omitempty"`
	ColumnIndex *int   `yaml:"column_index,omitempty"`
}

type Origin

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

func (*Origin) GetRows

func (o *Origin) GetRows(ctx context.Context, w psqlfront.CacheWriter, table *psqlfront.Table) error

func (*Origin) GetTables

func (o *Origin) GetTables(_ context.Context) ([]*psqlfront.Table, error)

func (*Origin) ID

func (o *Origin) ID() string

func (*Origin) MigrateTable

func (o *Origin) MigrateTable(ctx context.Context, m psqlfront.CacheMigrator, table *psqlfront.Table) error

type OriginConfig

type OriginConfig struct {
	Schema string         `yaml:"schema"`
	Tables []*TableConfig `yaml:"tables"`
}

func (*OriginConfig) NewOrigin

func (cfg *OriginConfig) NewOrigin(id string) (psqlfront.Origin, error)

func (*OriginConfig) Restrict

func (cfg *OriginConfig) Restrict() error

func (*OriginConfig) Type

func (cfg *OriginConfig) Type() string

type TableConfig

type TableConfig struct {
	origin.BaseTableConfig `yaml:",inline"`
	FileType               string `yaml:"file_type"`
	FileID                 string `yaml:"-"`
	Range                  string `yaml:"range,omitempty"`

	URLString                string        `yaml:"url"`
	IgnoreLines              int           `yaml:"ignore_lines"`
	SchemaDetection          bool          `yaml:"schema_detection"`
	DetectedSchemaExpiration time.Duration `yaml:"detected_schema_expiration"`
	URL                      *url.URL      `yaml:"-"`
	LastSchemaDetection      time.Time     `yaml:"-"`
	// contains filtered or unexported fields
}

func (*TableConfig) DetectSchema

func (cfg *TableConfig) DetectSchema(ctx context.Context) error

func (*TableConfig) FetchRows

func (cfg *TableConfig) FetchRows(ctx context.Context) ([][]interface{}, error)

func (*TableConfig) Fetcher

func (cfg *TableConfig) Fetcher(ctx context.Context) ([][]string, error)

func (*TableConfig) Restrict

func (cfg *TableConfig) Restrict(schema string, driveSvc *drive.Service, sheetsSvc *sheets.Service) error

Jump to

Keyboard shortcuts

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