Documentation
¶
Index ¶
- Variables
- func Contains(a string, b []string) bool
- func Find(ctx context.Context, adapter Adapter, dest interface{}) error
- func GetTableName(ent interface{}) string
- func ReadEntities[T tt.EntityWithID](reader *Reader, table string) chan T
- func RegisterAdapter(name string, fn func(string) Adapter)
- func Update(ctx context.Context, adapter Adapter, ent interface{}, columns ...string) error
- type Adapter
- type CanBeginx
- type CanClose
- type CanGetID
- type CanSetFeedVersion
- type CanSetID
- type CanUpdateTimestamps
- type Ext
- type HasTableName
- type NotNullFilter
- type Reader
- func (reader *Reader) Agencies() chan gtfs.Agency
- func (reader *Reader) Areas() (out chan gtfs.Area)
- func (reader *Reader) Attributions() chan gtfs.Attribution
- func (reader *Reader) CalendarDates() chan gtfs.CalendarDate
- func (reader *Reader) Calendars() chan gtfs.Calendar
- func (reader *Reader) Close() error
- func (reader *Reader) FareAttributes() chan gtfs.FareAttribute
- func (reader *Reader) FareLegRules() (out chan gtfs.FareLegRule)
- func (reader *Reader) FareMedia() (out chan gtfs.FareMedia)
- func (reader *Reader) FareProducts() (out chan gtfs.FareProduct)
- func (reader *Reader) FareRules() chan gtfs.FareRule
- func (reader *Reader) FareTransferRules() (out chan gtfs.FareTransferRule)
- func (reader *Reader) FeedInfos() chan gtfs.FeedInfo
- func (reader *Reader) Frequencies() chan gtfs.Frequency
- func (reader *Reader) Levels() chan gtfs.Level
- func (reader *Reader) Networks() (out chan gtfs.Network)
- func (reader *Reader) Open() error
- func (reader *Reader) Pathways() chan gtfs.Pathway
- func (reader *Reader) ReadEntities(c interface{}) error
- func (reader *Reader) RiderCategories() (out chan gtfs.RiderCategory)
- func (reader *Reader) RouteNetworks() (out chan gtfs.RouteNetwork)
- func (reader *Reader) Routes() chan gtfs.Route
- func (reader *Reader) Shapes() chan gtfs.Shape
- func (reader *Reader) ShapesByShapeID(ids ...string) chan []gtfs.Shape
- func (reader *Reader) StopAreas() (out chan gtfs.StopArea)
- func (reader *Reader) StopTimes() chan gtfs.StopTime
- func (reader *Reader) StopTimesByTripID(tripIDs ...string) chan []gtfs.StopTime
- func (reader *Reader) Stops() chan gtfs.Stop
- func (reader *Reader) String() string
- func (reader *Reader) Timeframes() (out chan gtfs.Timeframe)
- func (reader *Reader) Transfers() chan gtfs.Transfer
- func (reader *Reader) Translations() chan gtfs.Translation
- func (reader *Reader) Trips() chan gtfs.Trip
- func (reader *Reader) ValidateStructure() []error
- func (reader *Reader) Where() sq.SelectBuilder
- type Writer
- func (writer *Writer) AddEntities(ents []tt.Entity) ([]string, error)
- func (writer *Writer) AddEntity(ent tt.Entity) (string, error)
- func (writer *Writer) Close() error
- func (writer *Writer) Create() error
- func (writer *Writer) Delete() error
- func (writer *Writer) NewReader() (adapters.Reader, error)
- func (writer *Writer) Open() error
- func (writer *Writer) String() string
Constants ¶
This section is empty.
Variables ¶
var MapperCache = tags.NewCache(reflectx.NewMapperFunc("db", tags.ToSnakeCase))
Functions ¶
func GetTableName ¶ added in v1.0.0
func GetTableName(ent interface{}) string
func ReadEntities ¶ added in v0.11.0
func ReadEntities[T tt.EntityWithID](reader *Reader, table string) chan T
func RegisterAdapter ¶ added in v1.0.0
Types ¶
type Adapter ¶
type Adapter interface {
Open() error
Close() error
Create() error
DBX() Ext
Tx(func(Adapter) error) error
Sqrl() sq.StatementBuilderType
TableExists(string) (bool, error)
Insert(context.Context, interface{}) (int, error)
Update(context.Context, interface{}, ...string) error
Find(context.Context, interface{}) error
Get(context.Context, interface{}, string, ...interface{}) error
Select(context.Context, interface{}, string, ...interface{}) error
MultiInsert(context.Context, []interface{}) ([]int, error)
}
Adapter provides an interface for connecting to various kinds of database backends.
type CanSetFeedVersion ¶ added in v1.0.0
type CanSetFeedVersion interface {
SetFeedVersionID(int)
}
type CanUpdateTimestamps ¶ added in v1.0.0
type CanUpdateTimestamps interface {
UpdateTimestamps()
}
type HasTableName ¶ added in v1.0.0
type HasTableName interface {
TableName() string
}
type NotNullFilter ¶ added in v0.18.0
type NotNullFilter struct{}
NotNullFilter sets some int fields to default zero values where there is a 'not null' database constraint that can't be removed but the spec allows empty values.
type Reader ¶
Reader reads from a database.
func (*Reader) Attributions ¶ added in v0.10.0
func (reader *Reader) Attributions() chan gtfs.Attribution
func (*Reader) CalendarDates ¶
func (reader *Reader) CalendarDates() chan gtfs.CalendarDate
func (*Reader) FareAttributes ¶
func (reader *Reader) FareAttributes() chan gtfs.FareAttribute
func (*Reader) FareLegRules ¶ added in v0.11.0
func (reader *Reader) FareLegRules() (out chan gtfs.FareLegRule)
func (*Reader) FareProducts ¶ added in v0.11.0
func (reader *Reader) FareProducts() (out chan gtfs.FareProduct)
func (*Reader) FareTransferRules ¶ added in v0.11.0
func (reader *Reader) FareTransferRules() (out chan gtfs.FareTransferRule)
func (*Reader) Frequencies ¶
func (*Reader) ReadEntities ¶
ReadEntities provides a generic interface for reading entities.
func (*Reader) RiderCategories ¶ added in v0.11.0
func (reader *Reader) RiderCategories() (out chan gtfs.RiderCategory)
func (*Reader) RouteNetworks ¶ added in v1.0.0
func (reader *Reader) RouteNetworks() (out chan gtfs.RouteNetwork)
func (*Reader) ShapesByShapeID ¶ added in v1.0.0
Shapes sends Shapes grouped by ID.
func (*Reader) StopTimesByTripID ¶
StopTimesByTripID sends StopTimes grouped by TripID. Each group is sorted by stop_sequence.
func (*Reader) Timeframes ¶ added in v1.0.0
func (*Reader) Translations ¶ added in v0.10.0
func (reader *Reader) Translations() chan gtfs.Translation
func (*Reader) ValidateStructure ¶
ValidateStructure returns if all the necessary tables are present. Not implemented.
func (*Reader) Where ¶
func (reader *Reader) Where() sq.SelectBuilder
Where returns a select builder with feed_version_id set
type Writer ¶
Writer takes a Reader and saves it to a database.
func OpenWriter ¶ added in v0.10.0
OpenWriter opens & creates a db writer
func (*Writer) AddEntities ¶
AddEntities writes entities to the database.