alarmSettingsValidation static method

void alarmSettingsValidation(
  1. AlarmSettings alarmSettings
)

Validates alarmSettings fields.

Implementation

static void alarmSettingsValidation(AlarmSettings alarmSettings) {
  if (alarmSettings.id == 0 || alarmSettings.id == -1) {
    throw AlarmException(
      'Alarm id cannot be 0 or -1. Provided: ${alarmSettings.id}',
    );
  }
  if (alarmSettings.id > 2147483647) {
    throw AlarmException(
      '''Alarm id cannot be set larger than Int max value (2147483647). Provided: ${alarmSettings.id}''',
    );
  }
  if (alarmSettings.id < -2147483648) {
    throw AlarmException(
      '''Alarm id cannot be set smaller than Int min value (-2147483648). Provided: ${alarmSettings.id}''',
    );
  }
  if (alarmSettings.volume != null &&
      (alarmSettings.volume! < 0 || alarmSettings.volume! > 1)) {
    throw AlarmException(
      'Volume must be between 0 and 1. Provided: ${alarmSettings.volume}',
    );
  }
  if (alarmSettings.fadeDuration < 0) {
    throw AlarmException(
      '''Fade duration must be positive. Provided: ${alarmSettings.fadeDuration}''',
    );
  }
}