in core/src/main/java/org/apache/jsieve/commands/optional/Vacation.java [80:94]
private ActionVacation retrieveAction(Arguments arguments) throws SieveException {
ArgumentParser argumentParser = new ArgumentParser(arguments.getArgumentList());
argumentParser.throwOnUnvalidSeenSingleTag();
argumentParser.throwOnUnvalidSeenTagWithValue(FROM, SUBJECT, HANDLE, MIME, DAYS, ADDRESSES);
return ActionVacation.builder()
.addresses(argumentParser.getStringListForTag(ADDRESSES, ADDRESSES_EXCEPTION_MESSAGE))
.duration(argumentParser.getNumericValueForTag(DAYS, DAYS_EXCEPTION_MESSAGE))
.handle(argumentParser.getStringValueForTag(HANDLE, HANDLE_EXCEPTION_MESSAGE))
.mime(argumentParser.getStringValueForTag(MIME, MIME_EXCEPTION_MESSAGE))
.subject(argumentParser.getStringValueForTag(SUBJECT, SUBJECT_EXCEPTION_MESSAGE))
.from(argumentParser.getStringValueForTag(FROM, FROM_EXCEPTION_MESSAGE))
.reason(argumentParser.getRemainingStringValue("Expecting a single String value as a reason"))
.build();
}