private <T> T checkNonNull(T in, String errorMessage) { if (in == null) { throw new JApiCmpException(JApiCmpException.Reason.CliError, errorMessage); } else { return in; } } }
private <T> T checkNonNull(T in, String errorMessage) { if (in == null) { throw new JApiCmpException(JApiCmpException.Reason.CliError, errorMessage); } else { return in; } } }
public static JApiCmpException of(Reason reason, String format, Object... args) { String msg = String.format(format, args); return new JApiCmpException(reason, msg); }
public static JApiCmpException of(Reason reason, String format, Object... args) { String msg = String.format(format, args); return new JApiCmpException(reason, msg); }
public JavadocLikeFieldFilter(String filterString) { this.filterString = filterString; String regEx = filterString.replace(".", "\\."); regEx = regEx.replace("*", ".*"); regEx = regEx.replace("$", "\\$"); String[] parts = regEx.split("#"); if (parts.length != 2) { throw new JApiCmpException(JApiCmpException.Reason.CliError, "Filter option '" + filterString + "' contains more than one '#'."); } this.patternClass = Pattern.compile(parts[0]); this.patternField = Pattern.compile(parts[1]); }
public JavadocLikeFieldFilter(String filterString) { this.filterString = filterString; String regEx = filterString.replace(".", "\\."); regEx = regEx.replace("*", ".*"); regEx = regEx.replace("$", "\\$"); String[] parts = regEx.split("#"); if (parts.length != 2) { throw new JApiCmpException(JApiCmpException.Reason.CliError, "Filter option '" + filterString + "' contains more than one '#'."); } this.patternClass = Pattern.compile(parts[0]); this.patternField = Pattern.compile(parts[1]); }
private void parseParameters(String signature, int parenthesisCloseIndex) { int parenthesisOpenIndex = signature.indexOf('('); if (parenthesisOpenIndex < 0) { throw new JApiCmpException(JApiCmpException.Reason.IllegalState, "Signature does not contain '('."); } if (parenthesisCloseIndex - parenthesisOpenIndex < 1) { throw new JApiCmpException(JApiCmpException.Reason.IllegalState, "Signature must contain the char '(' before the char ')'."); } String paramPart = signature.substring(parenthesisOpenIndex + 1, parenthesisCloseIndex); List<String> paramTypes = parseTypes(paramPart); parameters.clear(); parameters.addAll(paramTypes); }
private void parseParameters(String signature, int parenthesisCloseIndex) { int parenthesisOpenIndex = signature.indexOf('('); if (parenthesisOpenIndex < 0) { throw new JApiCmpException(JApiCmpException.Reason.IllegalState, "Signature does not contain '('."); } if (parenthesisCloseIndex - parenthesisOpenIndex < 1) { throw new JApiCmpException(JApiCmpException.Reason.IllegalState, "Signature must contain the char '(' before the char ')'."); } String paramPart = signature.substring(parenthesisOpenIndex + 1, parenthesisCloseIndex); List<String> paramTypes = parseTypes(paramPart); parameters.clear(); parameters.addAll(paramTypes); }
public void addIgnoreMissingClassRegularExpression(String missingClassRegEx) { try { Pattern pattern = Pattern.compile(missingClassRegEx); this.ignoreMissingClasses.getIgnoreMissingClassRegularExpression().add(pattern); } catch (Exception e) { throw new JApiCmpException(JApiCmpException.Reason.IllegalArgument, "Could not compile provided regular expression: " + e.getMessage(), e); } }
private String getOptionWithArgument(String option, StringArrayEnumeration sae) { if (sae.hasMoreElements()) { String value = sae.nextElement(); if (value.startsWith("-")) { throw new JApiCmpException(JApiCmpException.Reason.CliError, String.format("Missing argument for option '%s'.", option)); } return value; } else { throw new JApiCmpException(JApiCmpException.Reason.CliError, String.format("Missing argument for option '%s'.", option)); } }
public void addIgnoreMissingClassRegularExpression(String missingClassRegEx) { try { Pattern pattern = Pattern.compile(missingClassRegEx); this.ignoreMissingClasses.getIgnoreMissingClassRegularExpression().add(pattern); } catch (Exception e) { throw new JApiCmpException(JApiCmpException.Reason.IllegalArgument, "Could not compile provided regular expression: " + e.getMessage(), e); } }
private String getOptionWithArgument(String option, StringArrayEnumeration sae) { if (sae.hasMoreElements()) { String value = sae.nextElement(); if (value.startsWith("-")) { throw new JApiCmpException(JApiCmpException.Reason.CliError, String.format("Missing argument for option '%s'.", option)); } return value; } else { throw new JApiCmpException(JApiCmpException.Reason.CliError, String.format("Missing argument for option '%s'.", option)); } }
public static JApiCmpException forClassLoading(Exception e, String name, JarArchiveComparator jarArchiveComparator) { String classPathAsString = "(CLASSPATH=" + jarArchiveComparator.getCommonClasspathAsString() + ")"; if (jarArchiveComparator.getJarArchiveComparatorOptions().getClassPathMode() == JarArchiveComparatorOptions.ClassPathMode.TWO_SEPARATE_CLASSPATHS) { classPathAsString = "(OLD CLASSPATH=" + jarArchiveComparator.getOldClassPathAsString() + " / NEW CLASSPATH=" + jarArchiveComparator.getNewClassPathAsString() + ")"; } return new JApiCmpException(JApiCmpException.Reason.ClassLoading, "Could not load '" + name + "': " + e.getMessage() + ". Please make sure that all libraries have been added to the classpath " + classPathAsString + " or try the option '--ignore-missing-classes'.", e); }
public static JApiCmpException forClassLoading(Exception e, String name, JarArchiveComparator jarArchiveComparator) { String classPathAsString = "(CLASSPATH=" + jarArchiveComparator.getCommonClasspathAsString() + ")"; if (jarArchiveComparator.getJarArchiveComparatorOptions().getClassPathMode() == JarArchiveComparatorOptions.ClassPathMode.TWO_SEPARATE_CLASSPATHS) { classPathAsString = "(OLD CLASSPATH=" + jarArchiveComparator.getOldClassPathAsString() + " / NEW CLASSPATH=" + jarArchiveComparator.getNewClassPathAsString() + ")"; } return new JApiCmpException(JApiCmpException.Reason.ClassLoading, "Could not load '" + name + "': " + e.getMessage() + ". Please make sure that all libraries have been added to the classpath " + classPathAsString + " or try the option '--ignore-missing-classes'.", e); }
private static void toJarArchiveComparatorClassPathMode(Options options, JarArchiveComparatorOptions comparatorOptions) { switch (options.getClassPathMode()) { case TWO_SEPARATE_CLASSPATHS: comparatorOptions.setClassPathMode(ClassPathMode.TWO_SEPARATE_CLASSPATHS); break; case ONE_COMMON_CLASSPATH: comparatorOptions.setClassPathMode(ClassPathMode.ONE_COMMON_CLASSPATH); break; default: throw new JApiCmpException(JApiCmpException.Reason.IllegalState, "Unknown classPathMode: " + options.getClassPathMode()); } }
private static void toJarArchiveComparatorClassPathMode(Options options, JarArchiveComparatorOptions comparatorOptions) { switch (options.getClassPathMode()) { case TWO_SEPARATE_CLASSPATHS: comparatorOptions.setClassPathMode(ClassPathMode.TWO_SEPARATE_CLASSPATHS); break; case ONE_COMMON_CLASSPATH: comparatorOptions.setClassPathMode(ClassPathMode.ONE_COMMON_CLASSPATH); break; default: throw new JApiCmpException(JApiCmpException.Reason.IllegalState, "Unknown classPathMode: " + options.getClassPathMode()); } }
public static JApiCmpException forClassLoading(String name, JarArchiveComparator jarArchiveComparator) { String classPathAsString = "(CLASSPATH=" + jarArchiveComparator.getCommonClasspathAsString() + ")"; if (jarArchiveComparator.getJarArchiveComparatorOptions().getClassPathMode() == JarArchiveComparatorOptions.ClassPathMode.TWO_SEPARATE_CLASSPATHS) { classPathAsString = "(OLD CLASSPATH=" + jarArchiveComparator.getOldClassPathAsString() + " / NEW CLASSPATH=" + jarArchiveComparator.getNewClassPathAsString() + ")"; } return new JApiCmpException(JApiCmpException.Reason.ClassLoading, "Could not load '" + name + "'. Please make sure that all libraries have been added to the classpath " + classPathAsString + " or try the option '--ignore-missing-classes'."); } }
public static JApiCmpException forClassLoading(String name, JarArchiveComparator jarArchiveComparator) { String classPathAsString = "(CLASSPATH=" + jarArchiveComparator.getCommonClasspathAsString() + ")"; if (jarArchiveComparator.getJarArchiveComparatorOptions().getClassPathMode() == JarArchiveComparatorOptions.ClassPathMode.TWO_SEPARATE_CLASSPATHS) { classPathAsString = "(OLD CLASSPATH=" + jarArchiveComparator.getOldClassPathAsString() + " / NEW CLASSPATH=" + jarArchiveComparator.getNewClassPathAsString() + ")"; } return new JApiCmpException(JApiCmpException.Reason.ClassLoading, "Could not load '" + name + "'. Please make sure that all libraries have been added to the classpath " + classPathAsString + " or try the option '--ignore-missing-classes'."); } }
private void setupClasspaths() { if (this.options.getClassPathMode() == JarArchiveComparatorOptions.ClassPathMode.ONE_COMMON_CLASSPATH) { commonClassPool = new ClassPool(); commonClassPathAsString = setupClasspath(commonClassPool, this.options.getClassPathEntries()); } else if (this.options.getClassPathMode() == JarArchiveComparatorOptions.ClassPathMode.TWO_SEPARATE_CLASSPATHS) { oldClassPool = new ClassPool(); oldClassPathAsString = setupClasspath(oldClassPool, this.options.getOldClassPath()); newClassPool = new ClassPool(); newClassPathAsString = setupClasspath(newClassPool, this.options.getNewClassPath()); } else { throw new JApiCmpException(Reason.IllegalState, "Unknown classpath mode: " + this.options.getClassPathMode()); } }
private void setupClasspaths() { if (this.options.getClassPathMode() == JarArchiveComparatorOptions.ClassPathMode.ONE_COMMON_CLASSPATH) { commonClassPool = new ClassPool(); commonClassPathAsString = setupClasspath(commonClassPool, this.options.getClassPathEntries()); } else if (this.options.getClassPathMode() == JarArchiveComparatorOptions.ClassPathMode.TWO_SEPARATE_CLASSPATHS) { oldClassPool = new ClassPool(); oldClassPathAsString = setupClasspath(oldClassPool, this.options.getOldClassPath()); newClassPool = new ClassPool(); newClassPathAsString = setupClasspath(newClassPool, this.options.getNewClassPath()); } else { throw new JApiCmpException(Reason.IllegalState, "Unknown classpath mode: " + this.options.getClassPathMode()); } }