feat(pkg/sensor): new support for sensor bme280
This commit is contained in:
@ -14,28 +14,6 @@ type csvLogfile struct {
|
||||
logfile string
|
||||
}
|
||||
|
||||
func (cl *csvLogfile) Append(compression bool, measuredValues []types.MeasuredValue) error {
|
||||
|
||||
allMeasuredValues, err := cl.Read()
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
allMeasuredValues = append(allMeasuredValues, measuredValues...)
|
||||
|
||||
if compression {
|
||||
allMeasuredValues = Compression(allMeasuredValues)
|
||||
}
|
||||
|
||||
err = cl.Write(allMeasuredValues)
|
||||
if err != nil {
|
||||
return err
|
||||
|
||||
}
|
||||
|
||||
return nil
|
||||
}
|
||||
|
||||
func (cl *csvLogfile) Read() ([]types.MeasuredValue, error) {
|
||||
if _, err := os.Stat(cl.logfile); os.IsNotExist(err) {
|
||||
return nil, fmt.Errorf("%v: %v", errorLogfileNotFound, cl.logfile)
|
||||
|
@ -5,7 +5,6 @@ import (
|
||||
)
|
||||
|
||||
type Logfile interface {
|
||||
Append(compression bool, measuredValues []types.MeasuredValue) error
|
||||
Read() ([]types.MeasuredValue, error)
|
||||
Write(measuredValues []types.MeasuredValue) error
|
||||
}
|
||||
|
@ -17,28 +17,6 @@ type jsonLogfile struct {
|
||||
logfile string
|
||||
}
|
||||
|
||||
func (jl *jsonLogfile) Append(compression bool, measuredValues []types.MeasuredValue) error {
|
||||
|
||||
allMeasuredValues, err := jl.Read()
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
allMeasuredValues = append(allMeasuredValues, measuredValues...)
|
||||
|
||||
if compression {
|
||||
allMeasuredValues = Compression(allMeasuredValues)
|
||||
}
|
||||
|
||||
err = jl.Write(allMeasuredValues)
|
||||
if err != nil {
|
||||
return err
|
||||
|
||||
}
|
||||
|
||||
return nil
|
||||
}
|
||||
|
||||
func (jl *jsonLogfile) Read() ([]types.MeasuredValue, error) {
|
||||
|
||||
if _, err := os.Stat(jl.logfile); os.IsNotExist(err) {
|
||||
|
@ -1,6 +1,7 @@
|
||||
package logfile
|
||||
|
||||
import (
|
||||
"math"
|
||||
"path/filepath"
|
||||
"sort"
|
||||
"time"
|
||||
@ -9,7 +10,35 @@ import (
|
||||
)
|
||||
|
||||
// var validUUID = regexp.MustCompile("^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-4[a-fA-F0-9]{3}-[8|9|aA|bB][a-fA-F0-9]{3}-[a-fA-F0-9]{12}$")
|
||||
var timeFormat = time.RFC3339
|
||||
var timeFormat = "2006-01-02T15:04:05.999999Z07:00"
|
||||
|
||||
func Append(logfile Logfile, compression bool, round float64, measuredValues []types.MeasuredValue) error {
|
||||
|
||||
if round != 0 {
|
||||
for _, measuredValue := range measuredValues {
|
||||
measuredValue.SetValue(math.Round(measuredValue.GetValue()/round) * round)
|
||||
}
|
||||
}
|
||||
|
||||
allMeasuredValues, err := logfile.Read()
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
allMeasuredValues = append(allMeasuredValues, measuredValues...)
|
||||
|
||||
if compression {
|
||||
allMeasuredValues = Compression(allMeasuredValues)
|
||||
}
|
||||
|
||||
err = logfile.Write(allMeasuredValues)
|
||||
if err != nil {
|
||||
return err
|
||||
|
||||
}
|
||||
|
||||
return nil
|
||||
}
|
||||
|
||||
// Compression the measured values. The system checks whether the measured values
|
||||
// of the same type correspond to those of the predecessor. If this is the case,
|
||||
|
Reference in New Issue
Block a user