influxdb/storage/reads/stream_reader.gen.go

240 lines
5.6 KiB
Go

// Generated by tmpl
// https://github.com/benbjohnson/tmpl
//
// DO NOT EDIT!
// Source: stream_reader.gen.go.tmpl
package reads
import (
"fmt"
"github.com/influxdata/platform/storage/reads/datatypes"
"github.com/influxdata/platform/tsdb/cursors"
)
type floatCursorStreamReader struct {
fr *frameReader
a cursors.FloatArray
}
func (c *floatCursorStreamReader) Close() {
for c.fr.state == stateReadFloatPoints {
c.readFrame()
}
}
func (c *floatCursorStreamReader) Err() error { return c.fr.err }
func (c *floatCursorStreamReader) Next() *cursors.FloatArray {
if c.fr.state == stateReadFloatPoints {
c.readFrame()
}
return &c.a
}
func (c *floatCursorStreamReader) readFrame() {
c.a.Timestamps = nil
c.a.Values = nil
if f := c.fr.peekFrame(); f != nil {
switch ff := f.Data.(type) {
case *datatypes.ReadResponse_Frame_FloatPoints:
c.a.Timestamps = ff.FloatPoints.Timestamps
c.a.Values = ff.FloatPoints.Values
c.fr.nextFrame()
case *datatypes.ReadResponse_Frame_Series:
c.fr.state = stateReadSeries
case *datatypes.ReadResponse_Frame_Group:
c.fr.state = stateReadGroup
default:
c.fr.setErr(fmt.Errorf("floatCursorStreamReader: unexpected frame type %T", f.Data))
}
}
}
func (c *floatCursorStreamReader) Stats() cursors.CursorStats { return cursors.CursorStats{} }
type integerCursorStreamReader struct {
fr *frameReader
a cursors.IntegerArray
}
func (c *integerCursorStreamReader) Close() {
for c.fr.state == stateReadIntegerPoints {
c.readFrame()
}
}
func (c *integerCursorStreamReader) Err() error { return c.fr.err }
func (c *integerCursorStreamReader) Next() *cursors.IntegerArray {
if c.fr.state == stateReadIntegerPoints {
c.readFrame()
}
return &c.a
}
func (c *integerCursorStreamReader) readFrame() {
c.a.Timestamps = nil
c.a.Values = nil
if f := c.fr.peekFrame(); f != nil {
switch ff := f.Data.(type) {
case *datatypes.ReadResponse_Frame_IntegerPoints:
c.a.Timestamps = ff.IntegerPoints.Timestamps
c.a.Values = ff.IntegerPoints.Values
c.fr.nextFrame()
case *datatypes.ReadResponse_Frame_Series:
c.fr.state = stateReadSeries
case *datatypes.ReadResponse_Frame_Group:
c.fr.state = stateReadGroup
default:
c.fr.setErr(fmt.Errorf("integerCursorStreamReader: unexpected frame type %T", f.Data))
}
}
}
func (c *integerCursorStreamReader) Stats() cursors.CursorStats { return cursors.CursorStats{} }
type unsignedCursorStreamReader struct {
fr *frameReader
a cursors.UnsignedArray
}
func (c *unsignedCursorStreamReader) Close() {
for c.fr.state == stateReadUnsignedPoints {
c.readFrame()
}
}
func (c *unsignedCursorStreamReader) Err() error { return c.fr.err }
func (c *unsignedCursorStreamReader) Next() *cursors.UnsignedArray {
if c.fr.state == stateReadUnsignedPoints {
c.readFrame()
}
return &c.a
}
func (c *unsignedCursorStreamReader) readFrame() {
c.a.Timestamps = nil
c.a.Values = nil
if f := c.fr.peekFrame(); f != nil {
switch ff := f.Data.(type) {
case *datatypes.ReadResponse_Frame_UnsignedPoints:
c.a.Timestamps = ff.UnsignedPoints.Timestamps
c.a.Values = ff.UnsignedPoints.Values
c.fr.nextFrame()
case *datatypes.ReadResponse_Frame_Series:
c.fr.state = stateReadSeries
case *datatypes.ReadResponse_Frame_Group:
c.fr.state = stateReadGroup
default:
c.fr.setErr(fmt.Errorf("unsignedCursorStreamReader: unexpected frame type %T", f.Data))
}
}
}
func (c *unsignedCursorStreamReader) Stats() cursors.CursorStats { return cursors.CursorStats{} }
type stringCursorStreamReader struct {
fr *frameReader
a cursors.StringArray
}
func (c *stringCursorStreamReader) Close() {
for c.fr.state == stateReadStringPoints {
c.readFrame()
}
}
func (c *stringCursorStreamReader) Err() error { return c.fr.err }
func (c *stringCursorStreamReader) Next() *cursors.StringArray {
if c.fr.state == stateReadStringPoints {
c.readFrame()
}
return &c.a
}
func (c *stringCursorStreamReader) readFrame() {
c.a.Timestamps = nil
c.a.Values = nil
if f := c.fr.peekFrame(); f != nil {
switch ff := f.Data.(type) {
case *datatypes.ReadResponse_Frame_StringPoints:
c.a.Timestamps = ff.StringPoints.Timestamps
c.a.Values = ff.StringPoints.Values
c.fr.nextFrame()
case *datatypes.ReadResponse_Frame_Series:
c.fr.state = stateReadSeries
case *datatypes.ReadResponse_Frame_Group:
c.fr.state = stateReadGroup
default:
c.fr.setErr(fmt.Errorf("stringCursorStreamReader: unexpected frame type %T", f.Data))
}
}
}
func (c *stringCursorStreamReader) Stats() cursors.CursorStats { return cursors.CursorStats{} }
type booleanCursorStreamReader struct {
fr *frameReader
a cursors.BooleanArray
}
func (c *booleanCursorStreamReader) Close() {
for c.fr.state == stateReadBooleanPoints {
c.readFrame()
}
}
func (c *booleanCursorStreamReader) Err() error { return c.fr.err }
func (c *booleanCursorStreamReader) Next() *cursors.BooleanArray {
if c.fr.state == stateReadBooleanPoints {
c.readFrame()
}
return &c.a
}
func (c *booleanCursorStreamReader) readFrame() {
c.a.Timestamps = nil
c.a.Values = nil
if f := c.fr.peekFrame(); f != nil {
switch ff := f.Data.(type) {
case *datatypes.ReadResponse_Frame_BooleanPoints:
c.a.Timestamps = ff.BooleanPoints.Timestamps
c.a.Values = ff.BooleanPoints.Values
c.fr.nextFrame()
case *datatypes.ReadResponse_Frame_Series:
c.fr.state = stateReadSeries
case *datatypes.ReadResponse_Frame_Group:
c.fr.state = stateReadGroup
default:
c.fr.setErr(fmt.Errorf("booleanCursorStreamReader: unexpected frame type %T", f.Data))
}
}
}
func (c *booleanCursorStreamReader) Stats() cursors.CursorStats { return cursors.CursorStats{} }