diff --git a/.classpath b/.classpath
index 1fca90e..6dfaf81 100644
--- a/.classpath
+++ b/.classpath
@@ -21,11 +21,14 @@
+
+
+
diff --git a/.github/workflows/maven-publish.yml b/.github/workflows/maven-publish.yml
new file mode 100644
index 0000000..4b1f8a9
--- /dev/null
+++ b/.github/workflows/maven-publish.yml
@@ -0,0 +1,76 @@
+# This workflow will build a package using Maven and then publish it to GitHub packages when a release is created
+# For more information see: https://github.com/actions/setup-java#apache-maven-with-a-settings-path
+
+name: Maven Package
+
+on:
+ push:
+ # Sequence of patterns matched against refs/tags
+ tags:
+ - 'v*' # Push events to matching v*, i.e. v1.0, v20.15.10
+
+jobs:
+ build:
+
+ runs-on: ubuntu-latest
+
+ steps:
+ - uses: actions/checkout@v2
+
+ - name: Use Cache for Maven packages
+ uses: actions/cache@v2
+ with:
+ path: ~/.m2
+ key: ${{ runner.os }}-m2-${{ hashFiles('**/pom.xml') }}
+ restore-keys: ${{ runner.os }}-m2
+
+ - name: Import GPG keys
+ run: 'echo -e "$GPG_FILE" | gpg2 --import --no-tty --batch --yes'
+ shell: bash
+ env:
+ GPG_FILE: ${{secrets.GPG_FILE}}
+
+ - name: Set up Java for Apache Maven Central
+ uses: actions/setup-java@v1
+ with:
+ java-version: 11
+ server-id: ossrh # Value of the distributionManagement/repository/id field of the pom.xml
+ server-username: OSSRH_USERNAME # env variable for username in deploy
+ server-password: OSSRH_PASSWORD # env variable for token in deploy
+ gpg-passphrase: GPG_PASSPHRASE # env variable for GPG private key passphrase
+
+ - name: Build and Verify with Maven
+ run: mvn --batch-mode --update-snapshots clean compile verify
+
+ - name: Publish to Apache Maven Central
+ # run: mvn deploy --batch-mode --update-snapshots -P sign,!build-extras -Dmaven.test.skip=true
+ run: mvn deploy --batch-mode --update-snapshots -P sign,!build-extras,deploy-ossrh -Dmaven.test.skip=true
+ env:
+ OSSRH_USERNAME: ${{ secrets.OSSRH_JIRA_USERNAME }}
+ OSSRH_PASSWORD: ${{ secrets.OSSRH_JIRA_PASSWORD }}
+ GPG_PASSPHRASE: ${{ secrets.GPG_PASSPHRASE }}
+
+ - name: Set up Java for publishing to GitHub Packages
+ uses: actions/setup-java@v1
+ with:
+ java-version: 11
+
+ - name: Publish to GitHub Packages
+ # -DaltDeploymentRepository=github::default::https://maven.pkg.github.com/csowada/ebus
+ run: mvn deploy --batch-mode --update-snapshots -P !sign,!build-extras,!deploy-ossrh,deploy-github -Dmaven.test.skip=true
+ env:
+ GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
+
+ - name: Create GitGub Release
+ id: create_release
+ uses: actions/create-release@v1
+ env:
+ GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} # This token is provided by Actions, you do not need to create your own token
+ with:
+ tag_name: ${{ github.ref }}
+ release_name: Release ${{ github.ref }}
+ body: |
+ Changes in this Release
+
+ draft: true
+ prerelease: false
\ No newline at end of file
diff --git a/.github/workflows/maven.yml b/.github/workflows/maven.yml
new file mode 100644
index 0000000..e7d65c0
--- /dev/null
+++ b/.github/workflows/maven.yml
@@ -0,0 +1,54 @@
+# This workflow will build a Java project with Maven
+# For more information see: https://help.github.com/actions/language-and-framework-guides/building-and-testing-java-with-maven
+
+name: Java CI with Maven
+
+on:
+ push:
+ branches: [ master, develop ]
+ pull_request:
+ types: [opened, synchronize, reopened]
+
+jobs:
+
+ build:
+
+ runs-on: ubuntu-latest
+
+ steps:
+ - uses: actions/checkout@v2
+ with:
+ fetch-depth: 0 # Shallow clones should be disabled for a better relevancy of analysis
+
+ - name: Cache Maven packages
+ uses: actions/cache@v2
+ with:
+ path: ~/.m2
+ key: ${{ runner.os }}-m2-${{ hashFiles('**/pom.xml') }}
+ restore-keys: ${{ runner.os }}-m2
+
+ - name: Cache SonarCloud packages
+ uses: actions/cache@v2
+ with:
+ path: ~/.sonar/cache
+ key: ${{ runner.os }}-sonar
+ restore-keys: ${{ runner.os }}-sonar
+
+ - name: Set up Java
+ uses: actions/setup-java@v1
+ with:
+ java-version: 11
+
+ - name: Build and analyze
+ env:
+ GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} # Needed to get PR information, if any
+ SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }}
+ run: mvn -B verify org.sonarsource.scanner.maven:sonar-maven-plugin:sonar
+
+ - run: mkdir staging && cp target/*.jar staging
+
+ - name: Upload Maven build artifact
+ uses: actions/upload-artifact@v1
+ with:
+ name: artifact
+ path: staging
\ No newline at end of file
diff --git a/.travis.settings.xml b/.travis.settings.xml
deleted file mode 100644
index f33a952..0000000
--- a/.travis.settings.xml
+++ /dev/null
@@ -1,48 +0,0 @@
-
-
-
-
-
- bintray-csowada-mvn
- csowada
- ${env.BINTRAY_TOKEN}
-
-
-
-
-
- bintray
-
-
- ${env.PASSPHRASE}
-
-
-
-
-
- false
-
- bintray-csowada-mvn
- bintray
- https://dl.bintray.com/csowada/mvn
-
-
-
-
-
-
- false
-
- bintray-csowada-mvn
- bintray-plugins
- https://dl.bintray.com/csowada/mvn
-
-
-
-
-
-
- bintray
-
-
\ No newline at end of file
diff --git a/.travis.yml b/.travis.yml
deleted file mode 100644
index a6b35dc..0000000
--- a/.travis.yml
+++ /dev/null
@@ -1,34 +0,0 @@
-language: java
-env:
- global:
- - secure: "CN/hDQ5CIsJ0+mx99PHYqDjMsdA/w0C+EnyYq2boa3om950hx7VJAyJWm/LJcwty1JL9xcd3QjgoPuswmYZIswRYx9DTwlAnwa5SKlbhiIJN/0/8ZdCYDiAg/FNo86GNb2tkcKfrJLUnbUP8zb6Qb2bR04A4DuLWpv0kqXSN9ATmydeyRwgnBOk6u6Vm6az7beWi96t3dCBKvjSvEUZe7pQTYAjnG4o3kBdKUSL6DtyCNb59O4dD30NoXJvRjsYjjUQTmQW94Vm5SyLDY98L9P5+N1yqInN5PJXWoTB8rId5qdYrEghABx1iA/jCaUQGIBDFu3auokjNAXiG0IEIA3QC5l3NeDo3cWm7/Mtz2H2MCiVNymXcHRVqMinSG5P0++m+NzrPYMW81FK8nTOTFfXYchGlyYufXuBbfxNm2ll8WysdeBq6i1iVPUPTVtJ11rqYPtsBCBqPsaao+5LHq0nJUvDrJ/Z32cVDn6v/TgqE2Tou8YwYe5tKLDGqzrFuj9jqw6LEMYaG0DDuVytT58yXWBQTaHUUXaOdZhwkVs/6VCP+yRSKLngu5jKJK4bvYBUbNq2VVvXBrXDOVpsXEX71gltkEdD+abgofl2SjtrPht5IlNnDPHsiyaDn5SXqQFMFoR0hl92dNlA61Q8SAafDU1uZPSmMMnjhTkOXHRQ="
- - # ^^ OSSRH_JIRA_USERNAME
- - secure: "a8G9vKgaArdpTPTyOmyRPBJAFeGj1yiEdIXg83EcNZjuzPwZ9wnpWeuqraFVktpnb6cIv2JKvazwRXFc1KWBlwNOTDZwNTWlry+jeOHvu6M/goWrLPPnYOeXnHgZvZ4apHUWwsoBoPCrqggqKqP9fqsycS/eGZR/VJXxE8d4VMhXJ0eSIlBryujnGwllisu2b+HrKJr5J/Gk6ezYbnRfetemMjukfPFPg1jwHCEIJ1KnGNYy+hcdeJSclNoeQHNUAtJNuOUB2j/ZyycQUcSi3xO+M44DyQn23pzbjQPuJBn+0hEeg1q4nPp2CL8CLB5ZjcRhfyUhMi1TdzvL3cg+rgBbGkWbsuOV1Znh+Fa5iSWHSmxdnAksr/VCFdooI8k+3blb05DHA+ipXE+gmPMovKLDrP7rbXbchIAIa6XjM4wqC7KsLiiPZcQKsS4lOa6dw35Np0teAb8W6qUqaTKkZfKYCjU0cJQOrnFZce9FUgAiiYqF2SPq7YIk2xJ/7PP5Vbz/0cIzYSIfvoiVUUOn3L5IlSBVQf+o0Hi7UtYXDMm2ZCY2jrnLAsoNbTFHXpYQT5JAVTySa/Ir1fJg7cV3vAv3gMnKu4mhLJ5+oxNccEjW3Fq/+DTkpRvJlo36SNZMA8wVq90pWYOtVHffrsrP2njzAJptMGX+EQhcLInaems="
- - # ^^ OSSRH_JIRA_PASSWORD
- - secure: "jGlsSjgIGb2oQsjFz4CNdAnGY8v5ERzaP79iU4G0Yyy+ypBI5KObuhSA7KMOvgQLXpBFe1Kye7kftKtpH5Ishf3iKlPPu6+TkKuxZW2cGZ5AUZRpvblps0oqDpG9VNJe6cwP0z4zpqjJe2yV9HRaaWw6X+m0W7UxHPH2cltzjmQ2mJ5xwjRUPKIDIwHJeqobYTNLY/iBc9/O+5X90QEiQqbeCwGrKDPzrOIHiVx3LyhAislaIrvnbl0XnRGCrJWmD4aM8kOEIeWyglH4EOFn7Rbs2fUKcu9Zgdquof8soABLKcFoGjwR1rzA4zuudKx5qlAnMxBTQppG6zoB0I6llk7W7rueHWMG3Uu0ubUrO4yQCxqYuCPSMdK8gAHz9CQ6T3eZ+7kYQ/bRTLYFpEpUtum3s93Dyuh/AoKI69V0lDo4lTebVtshHMqPAQlr1XAAvmxDGT8Bd5jU2QMgGpGzPwR7Xz6/2pViDvHlk1uEQnTSk3iS37e8fZAJYKtS4UlLyfyNb2b+bcVnO6z70qxfuKaUXXq1SH1S5vD6YFPIb/L/bqnyDlbgpXuPIbZdVBTIEsD8UZCT5KclPFHrmxXRNDCHWxIybyqT09fr8kPf9BXHGK4hL6+3fSlUYB1QGNSFZGqjuM2zbXEn40YD6kG83n7lg61/zE/Nza7vea5MERQ="
- - # ^^ GPG_PASSPHRASE
- - secure: "KwkDsVZoDMxwCoW1yzMNOoPM0dI/Ow2vEugp/uKNZpEWyTxXr+ZawmiQZSpL0uRy087QJWUPxrKYEmtxaoC0Sksj9sYURjqVGuElOl40JceL2bQrjk2Xa1pnGtGAuMFhuOEU/gRozYk+Wvpt74sCgSSp00y7m2k8CRgfMOdB9/rxbPZm5EfhgGn3/k2dEhkjfo/yEcSX3qBQ1FM9XziKNbX76hNZ3sLT29S9y8zZGOkNHVFIrwbdAUaxf1cPoUfk/sL7jhu+/XVmG2KZs2Uo25M0uZkP5D8QNnG/j4e2Fr3gQt1EJ9Xt0XMQYwXTPXpk+Rb8Y3hFEg7a+UyXuY0AzvGv1nZtUtngg7949gSKK5KLRDP/0MXYBlsQ4DwgLksXFrP7yYyvnwi8Gj4CNdrqOAV45v3elHRmZKiNVnkAZFjZqnNghenQn42uJmOQbQyPq+ceR6JUlQnxTYpb9MyDEP+yD05oxJ8FUeqMY50zcHoVIgv3fDgGGD5jSeHuO21fwNh2xikfjfmoQTSATE/AZhZBDGRTo7fvY1xWmhogMOBu8JU8YlX+NJ0zMs2SrXC1FvefaFc7uIwYZAX5lkBBMsjT4wW4gyUH67rIotCcVh7u7sD/wetZSOnt7wbgLx3Y043tplBQeqG5sCoWNgljkHu73bA58rn/4uUsi6sOd6I="
- - # ^^ GPG_KEY_NAME
-
-before_script:
- - chmod +x ./cd/before-deploy.sh
- - chmod +x ./cd/deploy.sh
-
-install: mvn install -P !build-extras -DskipTests=true -Dmaven.javadoc.skip=true -B -V
-
-script: mvn test -P !build-extras -B
-
-cache:
- directories:
- - ~/.m2/repository
-
-after_success:
- - ./cd/before-deploy.sh
- - ./cd/deploy.sh
-
-notifications:
- email:
- recipients:
- - opensource@cs-dev.de
- on_success: change
- on_failure: always
diff --git a/annotations/java/util/Collections.eea b/annotations/java/util/Collections.eea
new file mode 100644
index 0000000..44e1364
--- /dev/null
+++ b/annotations/java/util/Collections.eea
@@ -0,0 +1,4 @@
+class java/util/Collections
+emptyList
+ ()Ljava/util/List;
+ ()L1java/util/List;
diff --git a/annotations/org/slf4j/LoggerFactory.eea b/annotations/org/slf4j/LoggerFactory.eea
new file mode 100644
index 0000000..5676819
--- /dev/null
+++ b/annotations/org/slf4j/LoggerFactory.eea
@@ -0,0 +1,4 @@
+class org/slf4j/LoggerFactory
+getLogger
+ (Ljava/lang/Class<*>;)Lorg/slf4j/Logger;
+ (Ljava/lang/Class<*>;)L1org/slf4j/Logger;
diff --git a/cd/before-deploy.sh b/cd/before-deploy.sh
deleted file mode 100644
index d858b1e..0000000
--- a/cd/before-deploy.sh
+++ /dev/null
@@ -1,7 +0,0 @@
-#!/usr/bin/env bash
-set -ev
-
-if [ "$TRAVIS_PULL_REQUEST" == 'false' ]; then
- openssl aes-256-cbc -K $encrypted_12c8071d2874_key -iv $encrypted_12c8071d2874_iv -in cd/codesigning.asc.enc -out cd/codesigning.asc -d
- gpg --fast-import cd/codesigning.asc
-fi
\ No newline at end of file
diff --git a/cd/codesigning.asc.enc b/cd/codesigning.asc.enc
deleted file mode 100644
index 5420563..0000000
Binary files a/cd/codesigning.asc.enc and /dev/null differ
diff --git a/cd/deploy.sh b/cd/deploy.sh
deleted file mode 100644
index 4fe75ae..0000000
--- a/cd/deploy.sh
+++ /dev/null
@@ -1,6 +0,0 @@
-#!/usr/bin/env bash
-set -ev
-
-if [ "$TRAVIS_PULL_REQUEST" == 'false' ]; then
- mvn deploy -P sign,build-extras --settings cd/mvnsettings.xml
-fi
\ No newline at end of file
diff --git a/cd/mvnsettings.xml b/cd/mvnsettings.xml
deleted file mode 100644
index f1a17c7..0000000
--- a/cd/mvnsettings.xml
+++ /dev/null
@@ -1,28 +0,0 @@
-
-
-
-
-
- ossrh
- ${env.OSSRH_JIRA_USERNAME}
- ${env.OSSRH_JIRA_PASSWORD}
-
-
-
-
-
- ossrh
-
- true
-
-
- gpg
- ${env.GPG_KEY_NAME}
- ${env.GPG_PASSPHRASE}
-
-
-
-
-
\ No newline at end of file
diff --git a/pom.xml b/pom.xml
index 34a7058..9627f15 100644
--- a/pom.xml
+++ b/pom.xml
@@ -7,19 +7,22 @@
eBUS library configuration
de.cs-dev.ebus
ebus-configuration
- 1.0.9
+ 1.1.2
https://github.com/csowada/ebus-configuration
bundle
-
- yyyyMMddHHmm
- UTF-8
- 1.8
- 1.8
- 8
- 2020
- 1.0.9.${maven.build.timestamp}
-
+
+ yyyyMMddHHmm
+ UTF-8
+ 1.8
+ 1.8
+ 8
+ 2020
+
+ csowada_ebus-configuration
+ csowada
+ https://sonarcloud.io
+
Christian Sowada
@@ -55,29 +58,45 @@
-
- org.codehaus.mojo
- buildnumber-maven-plugin
- 1.4
-
-
-
- create
-
-
-
-
-
- true
-
- false
-
- false
-
- 7
-
-
-
+
+ com.amashchenko.maven.plugin
+ gitflow-maven-plugin
+ 1.15.0
+
+
+ master
+ develop
+ v
+ origin
+
+ false
+ false
+
+
+
+
+ org.codehaus.mojo
+ buildnumber-maven-plugin
+ 1.4
+
+
+
+ create
+
+
+
+
+
+ true
+
+ false
+
+ false
+
+ 7
+
+
+
org.apache.felix
maven-bundle-plugin
@@ -88,12 +107,11 @@
${project.groupId}.${project.artifactId}
${project.name}
${bundle.version}
- de.csdev.ebus.configuration.*
-
+ de.csdev.ebus.configuration.*
${maven.build.timestamp}
- ${buildNumber}
- ${scmBranch}
- ${env.BUILD_NUMBER}
+ ${buildNumber}
+ ${scmBranch}
+ ${env.BUILD_NUMBER}
@@ -216,23 +234,92 @@
-
+
+ deploy-ossrh
+
+ true
+
-
+
+
+
+ org.sonatype.plugins
+ nexus-staging-maven-plugin
+ 1.6.8
+ true
+
+ ossrh
+ https://oss.sonatype.org/
+ false
+
+
+
+
-
- org.apache.felix
- org.osgi.core
- 1.4.0
- provided
-
+
+
+ ossrh
+ https://oss.sonatype.org/content/repositories/snapshots
+
+
+ ossrh
+ https://oss.sonatype.org/service/local/staging/deploy/maven2/
+
+
+
+
+ deploy-github
+
+ false
+
+
+
+
+ github
+ GitHub Packages
+ https://maven.pkg.github.com/csowada/ebus-configuration
+
+
+
+
+
+
+
junit
junit
4.12
test
+
+
+ com.google.code.gson
+ gson
+ 2.5
+ test
+
+
+
+ commons-lang
+ commons-lang
+ 2.6
+ test
+
+
+
+ de.cs-dev.ebus
+ ebus-core
+ 1.1.2
+ compile
+
+
+
+ org.apache.felix
+ org.osgi.core
+ 1.4.0
+ provided
+
ch.qos.logback
@@ -245,28 +332,18 @@
org.slf4j
slf4j-api
1.7.25
+ provided
- de.cs-dev.ebus
- ebus-core
- 1.0.9
- compile
+ org.eclipse.jdt
+ org.eclipse.jdt.annotation
+ 2.2.100
+ provided
-
+
-
-
-
- ossrh
- https://oss.sonatype.org/content/repositories/snapshots
-
-
-
- ossrh
- https://oss.sonatype.org/service/local/staging/deploy/maven2/
-
-
-
+
+
\ No newline at end of file
diff --git a/src/main/java/de/csdev/ebus/configuration/EBusConfigurationReaderExt.java b/src/main/java/de/csdev/ebus/configuration/EBusConfigurationReaderExt.java
index 4041dc9..612072f 100644
--- a/src/main/java/de/csdev/ebus/configuration/EBusConfigurationReaderExt.java
+++ b/src/main/java/de/csdev/ebus/configuration/EBusConfigurationReaderExt.java
@@ -8,27 +8,34 @@
*/
package de.csdev.ebus.configuration;
+import java.net.URL;
+import java.util.Collections;
import java.util.List;
+import org.eclipse.jdt.annotation.NonNull;
+import org.eclipse.jdt.annotation.NonNullByDefault;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import de.csdev.ebus.cfg.std.EBusConfigurationReader;
import de.csdev.ebus.command.IEBusCommandCollection;
+@NonNullByDefault
public class EBusConfigurationReaderExt extends EBusConfigurationReader {
private static final Logger logger = LoggerFactory.getLogger(EBusConfigurationReaderExt.class);
@Override
- public List loadBuildInConfigurationCollections() {
+ public @NonNull List<@NonNull IEBusCommandCollection> loadBuildInConfigurationCollections() {
try {
- return loadConfigurationCollectionBundle(
- EBusConfigurationReaderExt.class.getResource("/index-configuration.json"));
+ URL url = EBusConfigurationReaderExt.class.getResource("/index-configuration.json");
+ if (url != null) {
+ return loadConfigurationCollectionBundle(url);
+ }
} catch (Exception e) {
logger.error("error!", e);
}
- return null;
+ return Collections.emptyList();
}
}
diff --git a/src/test/java/de/csdev/ebus/TestUtils.java b/src/test/java/de/csdev/ebus/TestUtils.java
index 3c9b29d..a9a9e57 100644
--- a/src/test/java/de/csdev/ebus/TestUtils.java
+++ b/src/test/java/de/csdev/ebus/TestUtils.java
@@ -11,6 +11,7 @@
import java.util.List;
import java.util.Map;
import java.util.Map.Entry;
+import java.util.Objects;
import org.junit.Assert;
import org.slf4j.Logger;
@@ -28,6 +29,8 @@ public class TestUtils {
public static boolean canResolve(EBusCommandRegistry commandRegistry, byte[] data) {
+ Objects.requireNonNull(data, "data");
+
List list = commandRegistry.find(data);
if (list.isEmpty()) {
diff --git a/src/test/java/de/csdev/ebus/cfg/EBusCommonTelegramTest.java b/src/test/java/de/csdev/ebus/cfg/EBusCommonTelegramTest.java
index 464f757..188749a 100644
--- a/src/test/java/de/csdev/ebus/cfg/EBusCommonTelegramTest.java
+++ b/src/test/java/de/csdev/ebus/cfg/EBusCommonTelegramTest.java
@@ -19,6 +19,7 @@
import org.slf4j.LoggerFactory;
import de.csdev.ebus.TestUtils;
+import de.csdev.ebus.command.EBusCommandException;
import de.csdev.ebus.command.EBusCommandRegistry;
import de.csdev.ebus.command.EBusCommandUtils;
import de.csdev.ebus.command.IEBusCommandMethod;
@@ -57,6 +58,8 @@ public void testIdentification() {
} catch (EBusTypeException e) {
logger.error("error!", e);
+ } catch (EBusCommandException e) {
+ logger.error("error!", e);
}
}
@@ -74,6 +77,8 @@ public void testAutoStroker() {
} catch (EBusTypeException e) {
logger.error("error!", e);
+ } catch (EBusCommandException e) {
+ logger.error("error!", e);
}
}
diff --git a/src/test/java/de/csdev/ebus/cfg/EBusVaillantTelegramTest.java b/src/test/java/de/csdev/ebus/cfg/EBusVaillantTelegramTest.java
index c0f3812..c12f5f6 100644
--- a/src/test/java/de/csdev/ebus/cfg/EBusVaillantTelegramTest.java
+++ b/src/test/java/de/csdev/ebus/cfg/EBusVaillantTelegramTest.java
@@ -23,6 +23,7 @@
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
+import de.csdev.ebus.command.EBusCommandException;
import de.csdev.ebus.command.EBusCommandRegistry;
import de.csdev.ebus.command.EBusCommandUtils;
import de.csdev.ebus.command.IEBusCommandMethod;
@@ -58,13 +59,19 @@ private void checkResolveTelegram(String data) {
List find = commandRegistry.find(byteArray);
assertFalse(find.isEmpty());
- logger.debug("Successful resolved: {}", EBusCommandUtils.getFullId(find.get(0)));
+
+ IEBusCommandMethod method = find.get(0);
+
+ assertNotNull(method);
+
+ logger.debug("Successful resolved: {}", EBusCommandUtils.getFullId(method));
}
@Test
public void testSetVaillantMasterSlave() {
IEBusCommandMethod method = commandRegistry.getCommandMethodById("vrc700_general", "gen.operation_mode",
Method.SET);
+ assertNotNull(method);
assertEquals(IEBusCommandMethod.Type.MASTER_SLAVE, method.getType());
}
@@ -112,6 +119,9 @@ public void testVaillantSetOperationMode() {
} catch (EBusTypeException e) {
e.printStackTrace();
assumeNoException(e);
+ } catch (EBusCommandException e) {
+ e.printStackTrace();
+ assumeNoException(e);
}
}
}
diff --git a/src/test/java/de/csdev/ebus/cfg/EBusVaillantVRC430TelegramTest.java b/src/test/java/de/csdev/ebus/cfg/EBusVaillantVRC430TelegramTest.java
index 40be243..ac1d59f 100644
--- a/src/test/java/de/csdev/ebus/cfg/EBusVaillantVRC430TelegramTest.java
+++ b/src/test/java/de/csdev/ebus/cfg/EBusVaillantVRC430TelegramTest.java
@@ -50,6 +50,8 @@ public void testDateTimeBroadcast() {
for (IEBusCommandMethod method : find) {
+ assertNotNull(method);
+
try {
Map map = EBusCommandUtils.decodeTelegram(method, byteArray);
Object object = map.get("datetime");
@@ -89,6 +91,8 @@ public void testDateTimeBroadcastWithNoDate() {
for (IEBusCommandMethod method : find) {
+ assertNotNull(method);
+
try {
Map map = EBusCommandUtils.decodeTelegram(method, byteArray);
Object object = map.get("datetime");
diff --git a/src/test/java/de/csdev/ebus/cfg/EBusWolfBM2Test.java b/src/test/java/de/csdev/ebus/cfg/EBusWolfBM2Test.java
index cbb53e8..2cb1fb7 100644
--- a/src/test/java/de/csdev/ebus/cfg/EBusWolfBM2Test.java
+++ b/src/test/java/de/csdev/ebus/cfg/EBusWolfBM2Test.java
@@ -20,6 +20,7 @@
import org.junit.BeforeClass;
import org.junit.Test;
+import de.csdev.ebus.command.EBusCommandException;
import de.csdev.ebus.command.EBusCommandRegistry;
import de.csdev.ebus.command.EBusCommandUtils;
import de.csdev.ebus.command.IEBusCommand;
@@ -46,6 +47,9 @@ public static void before() throws IOException, EBusConfigurationReaderException
public void testSetWolfMasterMaster() {
IEBusCommandMethod method = commandRegistry.getCommandMethodById("bm2", "heating.program_heating_circuit",
Method.SET);
+
+ assertNotNull(method);
+
assertEquals(IEBusCommandMethod.Type.MASTER_MASTER, method.getType());
}
@@ -57,6 +61,8 @@ public void testGetDHWProgram() {
IEBusCommandMethod commandMethod = command.getCommandMethod(Method.GET);
+ assertNotNull(commandMethod);
+
HashMap params = new HashMap<>();
params.put("program", 1);
@@ -67,6 +73,9 @@ public void testGetDHWProgram() {
} catch (EBusTypeException e) {
e.printStackTrace();
fail();
+ } catch (EBusCommandException e) {
+ e.printStackTrace();
+ fail();
}
}
@@ -78,6 +87,8 @@ public void testSetDHWProgram() {
IEBusCommandMethod commandMethod = command.getCommandMethod(Method.SET);
+ assertNotNull(commandMethod);
+
HashMap params = new HashMap<>();
params.put("program", 1);
@@ -88,6 +99,9 @@ public void testSetDHWProgram() {
} catch (EBusTypeException e) {
e.printStackTrace();
fail();
+ } catch (EBusCommandException e) {
+ e.printStackTrace();
+ fail();
}
}
@@ -101,6 +115,9 @@ public void testDecodeDHWProgram() {
for (IEBusCommandMethod method : find) {
try {
+
+ assertNotNull(method);
+
Map map = EBusCommandUtils.decodeTelegram(method, byteArray);
assertNotNull(map.get("program"));
@@ -121,6 +138,8 @@ public void testSetDHWProgramWithInvalidTargetAddr() {
IEBusCommandMethod commandMethod = command.getCommandMethod(Method.SET);
+ assertNotNull(commandMethod);
+
HashMap params = new HashMap<>();
params.put("program", 0);
@@ -135,6 +154,9 @@ public void testSetDHWProgramWithInvalidTargetAddr() {
} catch (EBusTypeException e) {
e.printStackTrace();
fail();
+ } catch (EBusCommandException e) {
+ e.printStackTrace();
+ fail();
}
}
diff --git a/src/test/java/de/csdev/ebus/cfg/EBusWolfCWLTest.java b/src/test/java/de/csdev/ebus/cfg/EBusWolfCWLTest.java
index 83f39cf..2fd1760 100644
--- a/src/test/java/de/csdev/ebus/cfg/EBusWolfCWLTest.java
+++ b/src/test/java/de/csdev/ebus/cfg/EBusWolfCWLTest.java
@@ -64,6 +64,9 @@ public Map check(String byteString) {
List find = commandRegistry.find(byteArray);
for (IEBusCommandMethod method : find) {
+
+ assertNotNull(method);
+
try {
Map map = EBusCommandUtils.decodeTelegram(method, byteArray);
return map;
diff --git a/src/test/java/de/csdev/ebus/cfg/KW_CRC_Test.java b/src/test/java/de/csdev/ebus/cfg/KW_CRC_Test.java
index 5ff0738..ac6c30f 100644
--- a/src/test/java/de/csdev/ebus/cfg/KW_CRC_Test.java
+++ b/src/test/java/de/csdev/ebus/cfg/KW_CRC_Test.java
@@ -16,6 +16,7 @@
import org.junit.Before;
import org.junit.Test;
+import de.csdev.ebus.command.EBusCommandException;
import de.csdev.ebus.command.EBusCommandRegistry;
import de.csdev.ebus.command.EBusCommandUtils;
import de.csdev.ebus.command.IEBusCommandMethod;
@@ -36,7 +37,7 @@ public void before() throws IOException, EBusConfigurationReaderException {
}
@Test
- public void testKWCrc() throws EBusTypeException {
+ public void testKWCrc() throws EBusTypeException, EBusCommandException {
IEBusCommandMethod commandMethod = commandRegistry.getCommandMethodById("cgb2", "boiler.pressure",
IEBusCommandMethod.Method.GET);
diff --git a/src/test/java/de/csdev/ebus/wip/EBusCommonTelegramTest2.java b/src/test/java/de/csdev/ebus/wip/EBusCommonTelegramTest2.java
index 6e6b5f3..2ab8302 100644
--- a/src/test/java/de/csdev/ebus/wip/EBusCommonTelegramTest2.java
+++ b/src/test/java/de/csdev/ebus/wip/EBusCommonTelegramTest2.java
@@ -8,6 +8,8 @@
*/
package de.csdev.ebus.wip;
+import static org.junit.Assert.assertNotNull;
+
import java.io.IOException;
import java.nio.ByteBuffer;
import java.util.List;
@@ -67,7 +69,13 @@ public void testResolveCommonTelegrams() {
data = EBusUtils.toByteArray("03 FE 05 03 08 01 00 40 FF 2D 17 30 0E C8 AA");
IEBusCommand command = commandRegistry.getCommandById("std", "auto_stroker.op_data_bc2tc_b1");
- ByteBuffer masterTelegramMask = EBusCommandUtils.getMasterTelegramMask(command.getCommandMethod(Method.GET));
+ assertNotNull(command);
+
+ IEBusCommandMethod commandMethod = command.getCommandMethod(Method.GET);
+
+ assertNotNull(commandMethod);
+
+ ByteBuffer masterTelegramMask = EBusCommandUtils.getMasterTelegramMask(commandMethod);
// ByteBuffer masterTelegramMask2 =
// EBusCommandUtils.getMasterTelegramMask(command.getCommandMethod(Method.SET));
@@ -79,6 +87,7 @@ public void testResolveCommonTelegrams() {
// logger.debug("TELE {}", EBusUtils.toHexDumpString(data));
// logger.debug("MASK {}", EBusUtils.toHexDumpString(masterTelegramMask));
+ @SuppressWarnings("unused")
List find = commandRegistry.find(data);
TestUtils.canResolve(commandRegistry, data);
diff --git a/src/test/java/de/csdev/ebus/wip/EBusdControllerTest.java b/src/test/java/de/csdev/ebus/wip/EBusdControllerTest.java
index 0fdcbb5..858131b 100644
--- a/src/test/java/de/csdev/ebus/wip/EBusdControllerTest.java
+++ b/src/test/java/de/csdev/ebus/wip/EBusdControllerTest.java
@@ -8,7 +8,7 @@
*/
package de.csdev.ebus.wip;
-import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.*;
import java.io.IOException;
@@ -34,15 +34,16 @@ public class EBusdControllerTest {
// @Before
public void before() throws IOException, EBusConfigurationReaderException {
-
commandRegistry = new EBusCommandRegistry(EBusConfigurationReaderExt.class, true);
}
// @Test
public void testIdentification() throws InterruptedException {
- EBusClient client = new EBusClient(commandRegistry);
EBusEbusdController controller = new EBusEbusdController("openhab", 8888);
+ assertNotNull(commandRegistry);
+
+ EBusClient client = new EBusClient(commandRegistry);
client.connect(controller, (byte) 0x00);