add read sensor
This commit is contained in:
@@ -143,7 +143,15 @@ func (i *inMemory) UpdateSensor(s Sensor) error {
|
||||
}
|
||||
|
||||
func (i *inMemory) ReadSensor(sensorID string) (Sensor, error) {
|
||||
panic("unimplemented")
|
||||
i.mu.Lock()
|
||||
defer i.mu.Unlock()
|
||||
|
||||
sensor, exists := i.sensors[sensorID]
|
||||
if !exists {
|
||||
return Sensor{}, ErrSensorNotFound
|
||||
}
|
||||
|
||||
return *sensor, nil
|
||||
}
|
||||
|
||||
func (i *inMemory) ReadSensorValues(sensorID string, from time.Time, to time.Time) ([]SensorData, error) {
|
||||
@@ -234,10 +242,21 @@ func (d *DecoratorRepo) ReadSensorValues(sensorID string, from, to time.Time) ([
|
||||
}
|
||||
|
||||
func (d *DecoratorRepo) ReadAllSensors() ([]Sensor, error) {
|
||||
var sensors []Sensor
|
||||
|
||||
sensors, err := d.memory.ReadAllSensors()
|
||||
if err == nil && len(sensors) > 0 {
|
||||
return sensors, nil
|
||||
}
|
||||
|
||||
return d.db.ReadAllSensors()
|
||||
sensors, err = d.db.ReadAllSensors()
|
||||
if err != nil {
|
||||
return []Sensor{}, err
|
||||
}
|
||||
|
||||
for _, s := range sensors {
|
||||
_ = d.memory.CreateSensor(s)
|
||||
}
|
||||
|
||||
return sensors, nil
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user