From 7343620dbb400dea186fd31cc6748b8328e85983 Mon Sep 17 00:00:00 2001 From: Claude Warren Date: Wed, 15 May 2024 20:04:08 +0200 Subject: [PATCH] fixed some spotbugs --- .../configuration/MatcherBuilderTracker.java | 17 +++++++++-------- .../configuration/XMLConfigurationReader.java | 8 ++++++-- 2 files changed, 15 insertions(+), 10 deletions(-) diff --git a/apache-rat-core/src/main/java/org/apache/rat/configuration/MatcherBuilderTracker.java b/apache-rat-core/src/main/java/org/apache/rat/configuration/MatcherBuilderTracker.java index ce3f56f0b..44233ac29 100644 --- a/apache-rat-core/src/main/java/org/apache/rat/configuration/MatcherBuilderTracker.java +++ b/apache-rat-core/src/main/java/org/apache/rat/configuration/MatcherBuilderTracker.java @@ -95,7 +95,7 @@ public Collection> getClasses() { return Collections.unmodifiableCollection(matcherBuilders.values()); } - private void addBuilderImpl(final String className, String name) { + private void addBuilderImpl(final String className, final String name) { Objects.requireNonNull(className, "className may not be null"); Class clazz; try { @@ -106,20 +106,21 @@ private void addBuilderImpl(final String className, String name) { if (AbstractBuilder.class.isAssignableFrom(clazz)) { @SuppressWarnings("unchecked") Class candidate = (Class) clazz; - if (StringUtils.isBlank(name)) { - name = candidate.getSimpleName(); - if (!name.endsWith("Builder")) { + String workingName = name; + if (StringUtils.isBlank(workingName)) { + workingName = candidate.getSimpleName(); + if (!workingName.endsWith("Builder")) { throw new ConfigurationException( "name is required, or " + candidate.getName() + " must end with 'Builder'"); } - name = name.substring(0, name.lastIndexOf("Builder")); - if (StringUtils.isBlank(name)) { + workingName = workingName.substring(0, workingName.lastIndexOf("Builder")); + if (StringUtils.isBlank(workingName)) { throw new ConfigurationException("Last segment of " + candidate.getName() + " may not be 'Builder', but must end in 'Builder'"); } - name = WordUtils.uncapitalize(name); + workingName = WordUtils.uncapitalize(workingName); } - matcherBuilders.put(name, candidate); + matcherBuilders.put(workingName, candidate); } else { throw new ConfigurationException("Class " + clazz.getName() + " does not extend " + AbstractBuilder.class); } diff --git a/apache-rat-core/src/main/java/org/apache/rat/configuration/XMLConfigurationReader.java b/apache-rat-core/src/main/java/org/apache/rat/configuration/XMLConfigurationReader.java index 93e56a3f6..08096eeba 100644 --- a/apache-rat-core/src/main/java/org/apache/rat/configuration/XMLConfigurationReader.java +++ b/apache-rat-core/src/main/java/org/apache/rat/configuration/XMLConfigurationReader.java @@ -69,7 +69,7 @@ /** * A class that reads the XML configuration file format. */ -public class XMLConfigurationReader implements LicenseReader, MatcherReader { +public final class XMLConfigurationReader implements LicenseReader, MatcherReader { private Log log; private Document document; @@ -127,6 +127,10 @@ public void setLog(Log log) { this.log = log; } + /** + * Returns the log the reader. + * @return the log if set, if not set {@code DefaultLog.getInstance()} is returned. + */ public Log getLog() { return log == null ? DefaultLog.getInstance() : log; } @@ -138,7 +142,7 @@ public void addLicenses(URL url) { /** * Read xml from a reader. - * + * * @param reader the reader to read XML from. */ public void read(Reader reader) {