// ListForAddress lists all devices for a specific DevAddr func (s *RedisDeviceStore) ListForAddress(devAddr types.DevAddr) ([]*Device, error) { deviceKeys, err := s.devAddrIndex.Get(devAddr.String()) if errors.GetErrType(err) == errors.NotFound { return nil, nil } if err != nil { return nil, err } devicesI, err := s.store.GetAll(deviceKeys, nil) if err != nil { return nil, err } devices := make([]*Device, 0, len(devicesI)) for _, deviceI := range devicesI { if device, ok := deviceI.(Device); ok { devices = append(devices, &device) } } return devices, nil }