From 41fd24278fd174e2d1fa4c4bb2cf3e8c693fb688 Mon Sep 17 00:00:00 2001 From: J-N-K Date: Sun, 12 Feb 2023 12:28:24 +0100 Subject: [PATCH] Adjust to core changes (addon.xml) (#444) Signed-off-by: Jan N. Klug --- .../analysis/checkstyle/OhInfXmlLabelCheck.java | 2 +- .../analysis/checkstyle/OhInfXmlUsageCheck.java | 4 ++-- .../checkstyle/OhInfXmlValidationCheck.java | 16 ++++++++-------- .../checkstyle/api/AbstractOhInfXmlCheck.java | 8 ++++---- .../test/OhInfXmlValidationCheckTest.java | 14 +++++++------- .../test/OnlyTabIndentationCheckTest.java | 2 +- .../src/main/resources/OH-INF/addon/addon.xml | 7 +++++++ .../src/main/resources/OH-INF/binding/bind.xml | 7 ------- .../src/main/resources/OH-INF/binding/bind.xml | 9 +++++---- .../onlyTabIndentationInXmlFilesCheck/addon.xml | 8 ++++++++ .../binding.xml | 7 ------- docs/maven-plugin.md | 6 +++--- 12 files changed, 46 insertions(+), 44 deletions(-) create mode 100644 custom-checks/checkstyle/src/test/resources/checkstyle/ohInfXmlValidationCheckTest/invalidAddon/src/main/resources/OH-INF/addon/addon.xml delete mode 100644 custom-checks/checkstyle/src/test/resources/checkstyle/ohInfXmlValidationCheckTest/invalidBinding/src/main/resources/OH-INF/binding/bind.xml create mode 100644 custom-checks/checkstyle/src/test/resources/checkstyle/onlyTabIndentationInXmlFilesCheck/addon.xml delete mode 100644 custom-checks/checkstyle/src/test/resources/checkstyle/onlyTabIndentationInXmlFilesCheck/binding.xml diff --git a/custom-checks/checkstyle/src/main/java/org/openhab/tools/analysis/checkstyle/OhInfXmlLabelCheck.java b/custom-checks/checkstyle/src/main/java/org/openhab/tools/analysis/checkstyle/OhInfXmlLabelCheck.java index bd887b68..7ef95c07 100644 --- a/custom-checks/checkstyle/src/main/java/org/openhab/tools/analysis/checkstyle/OhInfXmlLabelCheck.java +++ b/custom-checks/checkstyle/src/main/java/org/openhab/tools/analysis/checkstyle/OhInfXmlLabelCheck.java @@ -118,7 +118,7 @@ protected void checkConfigFile(final FileText xmlFileText) throws CheckstyleExce } @Override - protected void checkBindingFile(final FileText xmlFileText) throws CheckstyleException { + protected void checkAddonFile(final FileText xmlFileText) throws CheckstyleException { // No labels in binding files. } diff --git a/custom-checks/checkstyle/src/main/java/org/openhab/tools/analysis/checkstyle/OhInfXmlUsageCheck.java b/custom-checks/checkstyle/src/main/java/org/openhab/tools/analysis/checkstyle/OhInfXmlUsageCheck.java index 29bbf149..6e73c14b 100644 --- a/custom-checks/checkstyle/src/main/java/org/openhab/tools/analysis/checkstyle/OhInfXmlUsageCheck.java +++ b/custom-checks/checkstyle/src/main/java/org/openhab/tools/analysis/checkstyle/OhInfXmlUsageCheck.java @@ -87,8 +87,8 @@ protected void checkConfigFile(final FileText xmlFileText) throws CheckstyleExce } @Override - protected void checkBindingFile(final FileText xmlFileText) throws CheckstyleException { - // The allowed values are described in the binding XSD + protected void checkAddonFile(final FileText xmlFileText) throws CheckstyleException { + // The allowed values are described in the addon XSD allConfigDescriptionRefs.putAll(evaluateExpressionOnFile(xmlFileText, CONFIG_DESCRIPTION_REF_EXPRESSION)); allConfigDescriptions.putAll(evaluateExpressionOnFile(xmlFileText, CONFIG_DESCRIPTION_EXPRESSION)); } diff --git a/custom-checks/checkstyle/src/main/java/org/openhab/tools/analysis/checkstyle/OhInfXmlValidationCheck.java b/custom-checks/checkstyle/src/main/java/org/openhab/tools/analysis/checkstyle/OhInfXmlValidationCheck.java index 48351a54..e082421e 100644 --- a/custom-checks/checkstyle/src/main/java/org/openhab/tools/analysis/checkstyle/OhInfXmlValidationCheck.java +++ b/custom-checks/checkstyle/src/main/java/org/openhab/tools/analysis/checkstyle/OhInfXmlValidationCheck.java @@ -54,11 +54,11 @@ public class OhInfXmlValidationCheck extends AbstractOhInfXmlCheck { private Map ohInfFiles = new HashMap<>(); private String thingSchema; - private String bindingSchema; + private String addonSchema; private String configSchema; private static Schema thingSchemaFile; - private static Schema bindingSchemaFile; + private static Schema addonSchemaFile; private static Schema configSchemaFile; /** @@ -73,10 +73,10 @@ public void setThingSchema(String thingSchema) { /** * Sets the configuration property for the binding schema file. * - * @param bindingSchema URL of the binding schema file + * @param addonSchema URL of the binding schema file */ - public void setBindingSchema(String bindingSchema) { - this.bindingSchema = bindingSchema; + public void setAddonSchema(String addonSchema) { + this.addonSchema = addonSchema; } /** @@ -111,7 +111,7 @@ public Schema transform(byte[] content) { CachingHttpClient cachingClient = new CachingHttpClient<>(callback); - bindingSchemaFile = getXSD(bindingSchema, cachingClient); + addonSchemaFile = getXSD(addonSchema, cachingClient); thingSchemaFile = getXSD(thingSchema, cachingClient); configSchemaFile = getXSD(configSchema, cachingClient); @@ -126,10 +126,10 @@ protected void checkConfigFile(FileText xmlFileText) throws CheckstyleException } @Override - protected void checkBindingFile(FileText xmlFileText) throws CheckstyleException { + protected void checkAddonFile(FileText xmlFileText) throws CheckstyleException { File xmlFile = xmlFileText.getFile(); addToOhFiles(xmlFile); - validateXmlAgainstSchema(xmlFile, bindingSchemaFile); + validateXmlAgainstSchema(xmlFile, addonSchemaFile); } @Override diff --git a/custom-checks/checkstyle/src/main/java/org/openhab/tools/analysis/checkstyle/api/AbstractOhInfXmlCheck.java b/custom-checks/checkstyle/src/main/java/org/openhab/tools/analysis/checkstyle/api/AbstractOhInfXmlCheck.java index 5a049db4..93e7f25d 100644 --- a/custom-checks/checkstyle/src/main/java/org/openhab/tools/analysis/checkstyle/api/AbstractOhInfXmlCheck.java +++ b/custom-checks/checkstyle/src/main/java/org/openhab/tools/analysis/checkstyle/api/AbstractOhInfXmlCheck.java @@ -38,7 +38,7 @@ */ public abstract class AbstractOhInfXmlCheck extends AbstractStaticCheck { public static final String THING_DIRECTORY = "thing"; - public static final String BINDING_DIRECTORY = "binding"; + public static final String ADDON_DIRECTORY = "addon"; public static final String CONFIGURATION_DIRECTORY = "config"; private static final String MESSAGE_EMPTY_FILE = "The file {0} should not be empty."; @@ -77,8 +77,8 @@ private void processXmlFile(final FileText xmlFileText) throws CheckstyleExcepti checkThingTypeFile(xmlFileText); break; } - case BINDING_DIRECTORY: { - checkBindingFile(xmlFileText); + case ADDON_DIRECTORY: { + checkAddonFile(xmlFileText); break; } case CONFIGURATION_DIRECTORY: { @@ -108,7 +108,7 @@ private void processXmlFile(final FileText xmlFileText) throws CheckstyleExcepti * @param xmlFileText Represents the text contents of the xml file * @throws CheckstyleException when exception occurred during XML processing */ - protected abstract void checkBindingFile(FileText xmlFileText) throws CheckstyleException; + protected abstract void checkAddonFile(FileText xmlFileText) throws CheckstyleException; /** * Validate a .xml file located in the OH-INF/thing directory diff --git a/custom-checks/checkstyle/src/test/java/org/openhab/tools/analysis/checkstyle/test/OhInfXmlValidationCheckTest.java b/custom-checks/checkstyle/src/test/java/org/openhab/tools/analysis/checkstyle/test/OhInfXmlValidationCheckTest.java index 3e064152..ad042a92 100644 --- a/custom-checks/checkstyle/src/test/java/org/openhab/tools/analysis/checkstyle/test/OhInfXmlValidationCheckTest.java +++ b/custom-checks/checkstyle/src/test/java/org/openhab/tools/analysis/checkstyle/test/OhInfXmlValidationCheckTest.java @@ -42,14 +42,14 @@ public class OhInfXmlValidationCheckTest extends AbstractStaticCheckTest { private static final String RELATIVE_PATH_TO_THING = File.separator + OH_INF_PATH + File.separator + OhInfXmlValidationCheck.THING_DIRECTORY + File.separator + "thing-types.xml"; - private static final String RELATIVE_PATH_TO_BINDING = File.separator + OH_INF_PATH + File.separator - + OhInfXmlValidationCheck.BINDING_DIRECTORY + File.separator + "bind.xml"; + private static final String RELATIVE_PATH_TO_ADDON = File.separator + OH_INF_PATH + File.separator + + OhInfXmlValidationCheck.ADDON_DIRECTORY + File.separator + "addon.xml"; private static final String RELATIVE_PATH_TO_CONFIG = File.separator + OH_INF_PATH + File.separator + OhInfXmlValidationCheck.CONFIGURATION_DIRECTORY + File.separator + "conf.xml"; private static final String SCHEMA_ROOT_URL = "https://openhab.org/schemas/"; private static final String THING_SCHEMA_URL = SCHEMA_ROOT_URL + "thing-description-1.0.0.xsd"; - private static final String BINDING_SCHEMA_URL = SCHEMA_ROOT_URL + "binding-1.0.0.xsd"; + private static final String ADDON_SCHEMA_URL = SCHEMA_ROOT_URL + "addon-1.0.0.xsd"; private static final String CONFIG_SCHEMA_URL = SCHEMA_ROOT_URL + "config-description-1.0.0.xsd"; private static final String MESSAGE_EMPTY_FILE = "The file {0} should not be empty."; @@ -59,7 +59,7 @@ public class OhInfXmlValidationCheckTest extends AbstractStaticCheckTest { @BeforeAll public static void createConfiguration() { CONFIGURATION.addProperty("thingSchema", THING_SCHEMA_URL); - CONFIGURATION.addProperty("bindingSchema", BINDING_SCHEMA_URL); + CONFIGURATION.addProperty("addonSchema", ADDON_SCHEMA_URL); CONFIGURATION.addProperty("configSchema", CONFIG_SCHEMA_URL); } @@ -157,13 +157,13 @@ public void testValidBridgeType() throws Exception { } @Test - public void testInvalidBinding() throws Exception { + public void testInvalidAddon() throws Exception { assumeTrue(isResourceAvailable); int lineNumber = 7; String[] expectedMessages = generateExpectedMessages(lineNumber, - "The content of element binding:binding is not complete. One of {name} is expected."); - verifyWithPath("invalidBinding", RELATIVE_PATH_TO_BINDING, expectedMessages); + "The content of element addon:addon is not complete. One of {type} is expected."); + verifyWithPath("invalidAddon", RELATIVE_PATH_TO_ADDON, expectedMessages); } @Test diff --git a/custom-checks/checkstyle/src/test/java/org/openhab/tools/analysis/checkstyle/test/OnlyTabIndentationCheckTest.java b/custom-checks/checkstyle/src/test/java/org/openhab/tools/analysis/checkstyle/test/OnlyTabIndentationCheckTest.java index a102dc3c..41988acc 100644 --- a/custom-checks/checkstyle/src/test/java/org/openhab/tools/analysis/checkstyle/test/OnlyTabIndentationCheckTest.java +++ b/custom-checks/checkstyle/src/test/java/org/openhab/tools/analysis/checkstyle/test/OnlyTabIndentationCheckTest.java @@ -97,7 +97,7 @@ public void testXmlWithMultipleLinesWithSpacesEmptyLinesAndComments() throws Exc @Test public void testXmlWithOnlyTabsForIndentation() throws Exception { - String fileName = "binding.xml"; + String fileName = "addon.xml"; verifyTabIdentation(fileName, noMessagesExpected(), false); } diff --git a/custom-checks/checkstyle/src/test/resources/checkstyle/ohInfXmlValidationCheckTest/invalidAddon/src/main/resources/OH-INF/addon/addon.xml b/custom-checks/checkstyle/src/test/resources/checkstyle/ohInfXmlValidationCheckTest/invalidAddon/src/main/resources/OH-INF/addon/addon.xml new file mode 100644 index 00000000..205b9b8a --- /dev/null +++ b/custom-checks/checkstyle/src/test/resources/checkstyle/ohInfXmlValidationCheckTest/invalidAddon/src/main/resources/OH-INF/addon/addon.xml @@ -0,0 +1,7 @@ + + + + + diff --git a/custom-checks/checkstyle/src/test/resources/checkstyle/ohInfXmlValidationCheckTest/invalidBinding/src/main/resources/OH-INF/binding/bind.xml b/custom-checks/checkstyle/src/test/resources/checkstyle/ohInfXmlValidationCheckTest/invalidBinding/src/main/resources/OH-INF/binding/bind.xml deleted file mode 100644 index 4158403e..00000000 --- a/custom-checks/checkstyle/src/test/resources/checkstyle/ohInfXmlValidationCheckTest/invalidBinding/src/main/resources/OH-INF/binding/bind.xml +++ /dev/null @@ -1,7 +0,0 @@ - - - - - diff --git a/custom-checks/checkstyle/src/test/resources/checkstyle/ohInfXmlValidationCheckTest/thingTypesConfiguration/src/main/resources/OH-INF/binding/bind.xml b/custom-checks/checkstyle/src/test/resources/checkstyle/ohInfXmlValidationCheckTest/thingTypesConfiguration/src/main/resources/OH-INF/binding/bind.xml index f701295e..8f07fcce 100644 --- a/custom-checks/checkstyle/src/test/resources/checkstyle/ohInfXmlValidationCheckTest/thingTypesConfiguration/src/main/resources/OH-INF/binding/bind.xml +++ b/custom-checks/checkstyle/src/test/resources/checkstyle/ohInfXmlValidationCheckTest/thingTypesConfiguration/src/main/resources/OH-INF/binding/bind.xml @@ -1,12 +1,13 @@ - + + binding String String String - + diff --git a/custom-checks/checkstyle/src/test/resources/checkstyle/onlyTabIndentationInXmlFilesCheck/addon.xml b/custom-checks/checkstyle/src/test/resources/checkstyle/onlyTabIndentationInXmlFilesCheck/addon.xml new file mode 100644 index 00000000..5aece04a --- /dev/null +++ b/custom-checks/checkstyle/src/test/resources/checkstyle/onlyTabIndentationInXmlFilesCheck/addon.xml @@ -0,0 +1,8 @@ + + + binding + OneWireGPIO Binding + Use GPIO in various devices like RaspberryPi to communicate the OneWire protocol + Anatol Ogorek + diff --git a/custom-checks/checkstyle/src/test/resources/checkstyle/onlyTabIndentationInXmlFilesCheck/binding.xml b/custom-checks/checkstyle/src/test/resources/checkstyle/onlyTabIndentationInXmlFilesCheck/binding.xml deleted file mode 100644 index 8b0639b6..00000000 --- a/custom-checks/checkstyle/src/test/resources/checkstyle/onlyTabIndentationInXmlFilesCheck/binding.xml +++ /dev/null @@ -1,7 +0,0 @@ - - - OneWireGPIO Binding - Use GPIO in various devices like RaspberryPi to communicate the OneWire protocol - Anatol Ogorek - diff --git a/docs/maven-plugin.md b/docs/maven-plugin.md index 935f727f..c581f12e 100644 --- a/docs/maven-plugin.md +++ b/docs/maven-plugin.md @@ -151,11 +151,11 @@ An example configuration may look like this; org.openhab.tools.sat sat-plugin - build-tools/checkstyle/binding.xml + build-tools/checkstyle/addon.xml build-tools/checkstyle/suppressions.xml - build-tools/pmd/binding.xml + build-tools/pmd/addon.xml build-tools/pmd/suppressions.properties - build-tools/spotbugs/binding.xml + build-tools/spotbugs/addon.xml build-tools/spotbugs/exclude.xml build-tools/spotbugs/visitors.xml