Documentation ¶
Index ¶
- func IncFiltersCount()
- func IncLinesPerStepCount(step string)
- func Reset()
- type Cycle
- type CycleList
- type DataSource
- type DataSourceFactory
- type Error
- type ExecutionStats
- type Filter
- type MockCycle
- type MockCycleList
- type MockDataSource
- type MockDataSourceFactory
- type MockFilter
- type MockPlan
- type MockRelation
- type MockRelationList
- type MockRowExporter
- type MockRowReader
- type MockStep
- type MockStepList
- type MockTable
- type MockTraceListener
- type MockValue
- type NoTraceListener
- type OneEmptyRowReader
- type Plan
- type Relation
- type RelationList
- type Row
- type RowExporter
- type RowReader
- type Step
- type StepList
- type Table
- type TraceListener
- type Value
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func IncFiltersCount ¶ added in v1.4.0
func IncFiltersCount()
func IncLinesPerStepCount ¶ added in v1.4.0
func IncLinesPerStepCount(step string)
Types ¶
type CycleList ¶
CycleList is a list of cycles.
func NewCycleList ¶
NewCycleList initialize a new CycleList object
type DataSource ¶
type DataSource interface { Open() *Error RowReader(source Table, filter Filter) (RowReader, *Error) Close() *Error }
DataSource to read in the pull process.
type DataSourceFactory ¶
type DataSourceFactory interface {
New(url string, schema string) DataSource
}
DataSourceFactory exposes methods to create new datasources.
type Error ¶
type Error struct {
Description string
}
Error is the error type returned by the domain
func Pull ¶
func Pull(plan Plan, filters RowReader, source DataSource, exporter RowExporter, diagnostic TraceListener) *Error
Pull data from source following the given puller plan.
type ExecutionStats ¶ added in v1.4.0
type ExecutionStats interface { GetLinesPerStepCount() map[string]int GetFiltersCount() int ToJSON() []byte }
func Compute ¶ added in v1.4.0
func Compute() ExecutionStats
Compute current statistics and give a snapshot
type MockCycle ¶
MockCycle is an autogenerated mock type for the Cycle type
type MockCycleList ¶
MockCycleList is an autogenerated mock type for the CycleList type
func (*MockCycleList) Cycle ¶
func (_m *MockCycleList) Cycle(idx uint) Cycle
Cycle provides a mock function with given fields: idx
func (*MockCycleList) Len ¶
func (_m *MockCycleList) Len() uint
Len provides a mock function with given fields:
type MockDataSource ¶
MockDataSource is an autogenerated mock type for the DataSource type
func (*MockDataSource) Close ¶
func (_m *MockDataSource) Close() *Error
Close provides a mock function with given fields:
func (*MockDataSource) Open ¶
func (_m *MockDataSource) Open() *Error
Open provides a mock function with given fields:
type MockDataSourceFactory ¶
MockDataSourceFactory is an autogenerated mock type for the DataSourceFactory type
func (*MockDataSourceFactory) New ¶
func (_m *MockDataSourceFactory) New(url string, schema string) DataSource
New provides a mock function with given fields: url, schema
type MockFilter ¶
MockFilter is an autogenerated mock type for the Filter type
func (*MockFilter) Limit ¶
func (_m *MockFilter) Limit() uint
Limit provides a mock function with given fields:
func (*MockFilter) Values ¶
func (_m *MockFilter) Values() Row
Values provides a mock function with given fields:
type MockPlan ¶
MockPlan is an autogenerated mock type for the Plan type
func (*MockPlan) InitFilter ¶
InitFilter provides a mock function with given fields:
type MockRelation ¶
MockRelation is an autogenerated mock type for the Relation type
func (*MockRelation) Child ¶
func (_m *MockRelation) Child() Table
Child provides a mock function with given fields:
func (*MockRelation) ChildKey ¶
func (_m *MockRelation) ChildKey() []string
ChildKey provides a mock function with given fields:
func (*MockRelation) Name ¶
func (_m *MockRelation) Name() string
Name provides a mock function with given fields:
func (*MockRelation) OppositeOf ¶
func (_m *MockRelation) OppositeOf(tablename string) Table
OppositeOf provides a mock function with given fields: tablename
func (*MockRelation) Parent ¶
func (_m *MockRelation) Parent() Table
Parent provides a mock function with given fields:
func (*MockRelation) ParentKey ¶
func (_m *MockRelation) ParentKey() []string
ParentKey provides a mock function with given fields:
type MockRelationList ¶
MockRelationList is an autogenerated mock type for the RelationList type
func (*MockRelationList) Len ¶
func (_m *MockRelationList) Len() uint
Len provides a mock function with given fields:
func (*MockRelationList) Relation ¶
func (_m *MockRelationList) Relation(idx uint) Relation
Relation provides a mock function with given fields: idx
type MockRowExporter ¶
MockRowExporter is an autogenerated mock type for the RowExporter type
func (*MockRowExporter) Export ¶
func (_m *MockRowExporter) Export(_a0 Row) *Error
Export provides a mock function with given fields: _a0
type MockRowReader ¶
MockRowReader is an autogenerated mock type for the RowReader type
func (*MockRowReader) Next ¶
func (_m *MockRowReader) Next() bool
Next provides a mock function with given fields:
func (*MockRowReader) Value ¶
func (_m *MockRowReader) Value() (Row, *Error)
Value provides a mock function with given fields:
type MockStep ¶
MockStep is an autogenerated mock type for the Step type
func (*MockStep) Relations ¶
func (_m *MockStep) Relations() RelationList
Relations provides a mock function with given fields:
type MockStepList ¶
MockStepList is an autogenerated mock type for the StepList type
func (*MockStepList) Len ¶
func (_m *MockStepList) Len() uint
Len provides a mock function with given fields:
func (*MockStepList) Step ¶
func (_m *MockStepList) Step(_a0 uint) Step
Step provides a mock function with given fields: _a0
type MockTable ¶
MockTable is an autogenerated mock type for the Table type
func (*MockTable) PrimaryKey ¶
PrimaryKey provides a mock function with given fields:
type MockTraceListener ¶
MockTraceListener is an autogenerated mock type for the TraceListener type
func (*MockTraceListener) TraceStep ¶
func (_m *MockTraceListener) TraceStep(_a0 Step, _a1 Filter) TraceListener
TraceStep provides a mock function with given fields: _a0, _a1
type NoTraceListener ¶
type NoTraceListener struct{}
NoTraceListener default implementation do nothing.
func (NoTraceListener) TraceStep ¶
func (t NoTraceListener) TraceStep(s Step, filter Filter) TraceListener
TraceStep catch Step event.
type OneEmptyRowReader ¶
type OneEmptyRowReader struct {
// contains filtered or unexported fields
}
OneOneEmptyRowReader return one empty row
func NewOneEmptyRowReader ¶
func NewOneEmptyRowReader() *OneEmptyRowReader
func (*OneEmptyRowReader) Next ¶
func (r *OneEmptyRowReader) Next() bool
Next is always false except for the first one
func (OneEmptyRowReader) Value ¶
func (r OneEmptyRowReader) Value() Row
Value is always an empty row
type Relation ¶
type Relation interface { Name() string Parent() Table Child() Table ParentKey() []string ChildKey() []string OppositeOf(tablename string) Table }
Relation between two tables.
type RelationList ¶
RelationList is a list of relations.
func NewRelationList ¶
func NewRelationList(relations []Relation) RelationList
NewRelationList initialize a new RelationList object
type RowExporter ¶
RowExporter receives pulled rows one by one.
type Step ¶
type Step interface { Index() uint Entry() Table Follow() Relation Relations() RelationList Cycles() CycleList NextSteps() StepList }
Step group of follows to perform.
type StepList ¶
StepList list of steps to perform.
func NewStepList ¶
NewStepList initialize a new StepList object
type TraceListener ¶
type TraceListener interface {
TraceStep(Step, Filter) TraceListener
}
TraceListener receives diagnostic trace
Source Files ¶
- driven.go
- driver.go
- mock_Cycle.go
- mock_CycleList.go
- mock_DataSource.go
- mock_DataSourceFactory.go
- mock_Filter.go
- mock_Plan.go
- mock_Relation.go
- mock_RelationList.go
- mock_RowExporter.go
- mock_RowReader.go
- mock_Step.go
- mock_StepList.go
- mock_Table.go
- mock_TraceListener.go
- mock_Value.go
- model.go
- model_cycle.go
- model_filter.go
- model_plan.go
- model_relation.go
- model_step.go
- model_table.go