ben-roling commented on a change in pull request #3441: URL: https://github.com/apache/storm/pull/3441#discussion_r804090549
########## File path: storm-webapp/src/main/java/org/apache/storm/daemon/ui/UIHelpers.java ########## @@ -1746,19 +1746,26 @@ private static Double nullToZero(Double value) { } /** - * sanitizeStreamName. + * Sanitizes streamName for use as an identifier in the visualization. Replaces all characters except A-Z, a-z, + * '.', '-', and '_' with '_'. If streamName does not start with A-Z or a-z, adds '_s' prefix. * @param streamName streamName - * @return sanitizeStreamName + * @return sanitized stream name */ public static String sanitizeStreamName(String streamName) { - Pattern pattern = Pattern.compile("(?![A-Za-z_\\-:\\.])."); - Pattern pattern2 = Pattern.compile("^[A-Za-z]"); - Matcher matcher = pattern2.matcher(streamName); - Matcher matcher2 = pattern.matcher("\\s" + streamName); - if (matcher.find()) { - matcher2 = pattern.matcher(streamName); + Pattern startsWithLetterPattern = Pattern.compile("^[A-Za-z]"); + Pattern problemCharacterPattern = Pattern.compile("(?![A-Za-z_\\-\\.])."); Review comment: The use of zero-width negative lookahead (?!X) here seemed odd to me. I didn't understand what it was at first and still don't understand why it was structured this way but I left it alone. If anyone can explain that I'd be curious to learn. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: dev-unsubscr...@storm.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org