package management import ( d "playback-device-server/data" ) type DeviceManager struct { deviceDatabase *d.DeviceDatabase } func (um *DeviceManager) Initialize(deviceDatabase *d.DeviceDatabase) error { um.deviceDatabase = deviceDatabase return nil } func (um *DeviceManager) CreateDevice(device *d.PlaybackDevice) (string, error) { id, error := um.deviceDatabase.CreateDevice(device.Name, device.Description) if error != nil { return "", error } return id, nil } func (um *DeviceManager) DeviceIdExists(id string) (bool, error) { exists, error := um.deviceDatabase.DeviceIdExists(id) if error != nil { return false, error } return exists, nil } //func (um *DeviceManager) Register(code string) (string, error) { // device, error := um.GetDeviceByCode(code) // if error != nil { // return "", error // } // // expiryDate := time.Now().AddDate(0, 0, 30) // token, error := um.deviceDatabase.CreateSession(device.ID, expiryDate) // if error != nil { // return "", error // } // // return token, nil //} func (um *DeviceManager) GetSession(sessionToken string) (*d.DeviceSession, error) { session, error := um.deviceDatabase.GetSession(sessionToken) if error != nil { return nil, error } return session, nil } func (um *DeviceManager) GetDeviceById(id string) (*d.PlaybackDevice, error) { device, error := um.deviceDatabase.GetDeviceById(id) if error != nil { return nil, error } return device, nil } func (um *DeviceManager) UpdateDevice(device *d.PlaybackDevice) error { error := um.deviceDatabase.UpdateDevice(device) return error } func (um *DeviceManager) DeleteSession(token string) error { error := um.deviceDatabase.DeleteSessionByToken(token) if error != nil { return error } return nil } func (um *DeviceManager) GetDevices() (*[]d.PlaybackDevice, error) { users, error := um.deviceDatabase.GetDevices() return users, error } func (um *DeviceManager) DeleteDevice(ID string) error { error := um.deviceDatabase.DeleteDevice(ID) return error }