Я использую интерфейс командной строки Apache для анализа командной строки в служебном приложении Scala.Одним из аргументов является номер порта базы данных (--port=
), который переопределяет значение по умолчанию «5432» (для PostgreSQL).Я пытаюсь использовать класс Option, чтобы помочь в проверке.Вот код, который я придумал.Есть ли лучший способ сделать проверку?
val port = Option(commandLine.getOptionValue("port", "5432")) map {
try {
val value = Integer.parseInt(_)
if (value < 1 || value > 65535) throw new NumberFormatException
value
} catch {
case ex: NumberFormatException =>
throw new
IllegalArgumentException("the port argument must be a number between 1 and 65535")
}
} get
Номер порта должен быть целым числом от 1 до 65535 включительно.
Было бы лучше сделать это?Почему или почему нет?
val port = Option(commandLine.getOptionValue("port")) map {
try {
val value = Integer.parseInt(_)
if (value < 1 || value > 65535) throw new NumberFormatException
value
} catch {
case ex: NumberFormatException =>
throw new
IllegalArgumentException("the port argument must be a number between 1 and 65535")
}
} getOrElse(5432)