Source:
<code>void validate() { if (!containsMacro("path")) { Preconditions.checkArgument(!Strings.isNullOrEmpty(path), "Path cannot be empty."); } if (!containsMacro("nodePath")) { Preconditions.checkArgument(!Strings.isNullOrEmpty(nodePath), "Node path cannot be empty."); } if (!containsMacro("tableExpiryPeriod") && tableExpiryPeriod != null && tableExpiryPeriod < 0) { throw new IllegalArgumentException("Value for Table expiry period should either be empty or greater than 0."); } if (!containsMacro("temporaryFolder")) { Preconditions.checkArgument(!Strings.isNullOrEmpty(temporaryFolder), "Temporary folder cannot be empty."); } boolean onlyOneActionRequired = !actionAfterProcess.equalsIgnoreCase("NONE") && isReprocessingRequired(); Preconditions.checkArgument(!onlyOneActionRequired, "Please select either 'After Processing Action' or " + "'Reprocessing Required'; both cannot be applied at the same time."); boolean targetFolderEmpty = (actionAfterProcess.equalsIgnoreCase("ARCHIVE") || actionAfterProcess.equalsIgnoreCase("MOVE")) && Strings.isNullOrEmpty(targetFolder); Preconditions.checkArgument(!targetFolderEmpty, "Target folder cannot be empty for Action = '" + actionAfterProcess + "'."); if (!Strings.isNullOrEmpty(pattern)) { try { Pattern.compile(pattern); } catch (Exception e) { throw new IllegalArgumentException(String.format("The regular expression '%s' is not valid.", pattern), e); } if (path.endsWith("/") || !(path.contains("*") || path.contains("?") || path.contains("{") || path.contains("["))) { throw new IllegalArgumentException("When filtering with regular expressions, " + "the Path must be a directory and leverage glob syntax. Most likely, " + "you just need to end your folder path with a /*"); <START> } <END> } }</code><technical_language>throw new IllegalArgumentException("When filtering regular expressions, " + "the path a directory leverage glob syntax. " + "the folder path needs end '/*'.");</technical_language>

Target:
void validate() { if (!containsMacro("path")) { Preconditions.checkArgument(!Strings.isNullOrEmpty(path), "Path cannot be empty."); } if (!containsMacro("nodePath")) { Preconditions.checkArgument(!Strings.isNullOrEmpty(nodePath), "Node path cannot be empty."); } if (!containsMacro("tableExpiryPeriod") && tableExpiryPeriod != null && tableExpiryPeriod < 0) { throw new IllegalArgumentException("Value for Table expiry period should either be empty or greater than 0."); } if (!containsMacro("temporaryFolder")) { Preconditions.checkArgument(!Strings.isNullOrEmpty(temporaryFolder), "Temporary folder cannot be empty."); } boolean onlyOneActionRequired = !actionAfterProcess.equalsIgnoreCase("NONE") && isReprocessingRequired(); Preconditions.checkArgument(!onlyOneActionRequired, "Please select either 'After Processing Action' or " + "'Reprocessing Required'; both cannot be applied at the same time."); boolean targetFolderEmpty = (actionAfterProcess.equalsIgnoreCase("ARCHIVE") || actionAfterProcess.equalsIgnoreCase("MOVE")) && Strings.isNullOrEmpty(targetFolder); Preconditions.checkArgument(!targetFolderEmpty, "Target folder cannot be empty for Action = '" + actionAfterProcess + "'."); if (!Strings.isNullOrEmpty(pattern)) { try { Pattern.compile(pattern); } catch (Exception e) { throw new IllegalArgumentException(String.format("The regular expression '%s' is not valid.", pattern), e); } if (path.endsWith("/") || !(path.contains("*") || path.contains("?") || path.contains("{") || path.contains("["))) { throw new IllegalArgumentException("When filtering with regular expressions, " + "the path must be a directory and leverage glob syntax. Usually " + "the folder path needs to end with '/*'."); } } }