Commit Graph
100 Commits
Author SHA1 Message Date
Wouter BornandGitHub 0281c10036 [infrastructure] add external null-annotations (#1775)
Add EEAs and fix null analysis errors.

Related to:

* #888
* openhab/openhab-addons#8848

Signed-off-by: Wouter Born <github@maindrain.net>
2020-11-03 21:33:48 +01:00
Wouter BornandGitHub 2cfdf1934e Add .gitattributes (#1767)
Without this configuration there are Spotless issues with line endings on Windows.

See: openhab/openhab-addons#8712

Signed-off-by: Wouter Born <github@maindrain.net>
2020-10-26 22:24:59 +01:00
Wouter BornandGitHub 584c85a07f [automation] Improve rule debugging (#1742)
* Add rule UID to error message
* Add exception with stacktrace when debug level is enabled

Related to #1734

Signed-off-by: Wouter Born <github@maindrain.net>
2020-10-20 15:50:25 +02:00
Wouter BornandGitHub 0ac14b9f8f Fix IAE when enabling debug logging on PersistenceManagerImpl (#1737)
Signed-off-by: Wouter Born <github@maindrain.net>
2020-10-19 22:47:28 +02:00
Wouter BornandGitHub b2c045d0fe Fix build by wrapping lines (#1729)
Caused by #1713

Signed-off-by: Wouter Born <github@maindrain.net>
2020-10-19 11:42:26 +02:00
Wouter BornandGitHub 4c31c0b3ff Fix issues with configuration PIDs (#1727)
* Fixes warnings about "using different service PIDs"
* Fixes missing default values

Signed-off-by: Wouter Born <github@maindrain.net>
2020-10-18 18:02:13 +02:00
Wouter BornandGitHub 3d88e91952 Open ProviderTracker asynchronously when activating AbstractRegistry (#1719)
* Open ProviderTracker asynchronously when activating AbstractRegistry

Fixes #890

Signed-off-by: Wouter Born <github@maindrain.net>
2020-10-18 00:31:13 +02:00
Wouter BornandGitHub 605c1c238c Add Automation extension type (#1722)
Signed-off-by: Wouter Born <github@maindrain.net>
2020-10-17 15:08:53 +02:00
Wouter BornandGitHub a70dd39a6b Fix JSR223 JavaScript files not loading (#1725)
This adds a missing feature required for being able to load JSR223 JavaScript rules out of the box.

Signed-off-by: Wouter Born <github@maindrain.net>
2020-10-17 15:03:36 +02:00
Wouter BornandGitHub 0d1a15ef34 Update ActionService and ThingActions classes in Xtext cache (#1714)
Xtext uses a cache for looking up classes when rules are run.
It also adds a null class value to this cache when a class is not found.

Once a value has entered the cache it will not be updated.
This causes the cache to return the wrong class (or the null value) when
calling static methods on ActionService and ThingActions classes that
were added/updated.

With the changes in this PR Xtext will be configured to use a custom cache
that updates the ActionService and ThingActions class references.

The PR also has a fix for the AnnotatedThingActionModuleTypeProvider not
properly sending ModuleType removed events when all ThingActions
registrations have been removed.

Fixes #1265
Fixes #1694

Signed-off-by: Wouter Born <github@maindrain.net>
2020-10-13 23:17:57 +02:00
Wouter BornandGitHub 7d8126e89f Fix ScriptEngine parameter option removal (#1716)
When one of the engines is unset the ScriptModuleTypeProvider clears all parameter options instead of only those that apply to that engine.
This fixes the Nashorn engine missing from the parameter options on the first openHAB startup.

Signed-off-by: Wouter Born <github@maindrain.net>
2020-10-13 23:13:30 +02:00
Wouter BornandGitHub ab1fa65aa1 Improve JwtHelper exception handling (#1712)
Catch specific exceptions and don't log errors but instead add an appropriate message and preserve the stacktrace.

Signed-off-by: Wouter Born <github@maindrain.net>
2020-10-11 10:03:39 +02:00
Wouter BornandGitHub 23e8f18e7f Use openhab-addons-deps Maven repository for all Xtext Orbit bundle dependencies (#1711)
Fixes #960

Signed-off-by: Wouter Born <github@maindrain.net>
2020-10-11 09:58:51 +02:00
Wouter BornandGitHub 76f51026aa Simplify core features to prevent unnecessary bundle refreshes (#1709)
It seems that when multiple features install the same bundle it may cause Karaf to refresh bundles when (un)installing features.
When the (redundant) openhab-core-automation feature is removed and the serial dependencies are merged into the openhab-transport-serial feature these restarts due these bundle refreshes no longer occur.

Fixes #1322, #1354

Signed-off-by: Wouter Born <github@maindrain.net>
2020-10-10 18:24:13 +02:00
Wouter BornandGitHub 159aefffa5 Remove unused DBus Transport (#1708)
Related to #960

Signed-off-by: Wouter Born <github@maindrain.net>
2020-10-10 08:08:22 +02:00
Wouter BornandGitHub 1edf25b4f9 Prevent IllegalStateException when closing SSE sink (#1698)
* Prevent IllegalStateException when closing SSE sink
* Simplify code and log exceptions on debug

There seem to be no issues anymore with the exception handling when SSE clients disconnect so simplify the exception handling.
Suppressing exceptions based on error message is also likely to break when new exceptions are added or messages change.
There are also still exceptions that get logged with "failure" but from which the code seems to recover without any issues.

Fixes #1499

Signed-off-by: Wouter Born <github@maindrain.net>
2020-10-07 20:20:52 +02:00
Wouter BornandGitHub 44b1823e97 Fix two typos (#1691)
Signed-off-by: Wouter Born <github@maindrain.net>
2020-10-05 09:03:27 +02:00
Wouter BornandGitHub 6a55834c63 Remove Jackson 1.x compile dependency (#1689)
It doesn't seem to be used by anything and it is also not part of the target platform.

Signed-off-by: Wouter Born <github@maindrain.net>
2020-10-04 21:19:38 +02:00
Wouter BornandGitHub d1629e50f3 Upgrade to XStream 1.4.13 (#1688)
* Fixes bugs (vulnerabilities/performance issues)
* Supports OSGi better
* Prevents illegal reflective access warnings on newer Java versions
* Supports java.time converters

For XStream release notes see: https://x-stream.github.io/changes.html

The XmlDocumentReader which uses XStream has also been modified to configure XStream security to prevent "Security framework of XStream not initialized, XStream is probably vulnerable" warnings.

Signed-off-by: Wouter Born <github@maindrain.net>
2020-10-04 19:56:44 +02:00
Wouter BornandGitHub abd2630777 Upgrade Xtext/Xtend to 2.23.0 and LSP 0.9.0 (#1685)
Upgrades to:

* Xtext 2.23.0
* Xtend 2.23.0
* LSP 0.9.0

For Xtext release notes see: https://www.eclipse.org/Xtext/releasenotes.html#/releasenotes/2020/09/01/version-2-23-0

The Xtext dependencies are now managed using their BOM which makes it easier to keep them in sync.

Because Xtext depends on a newer ASM version some runtime dependencies were also upgraded:

* ASM 8.0.1
* Pax Web 7.2.15
* XBean 4.17.0

Signed-off-by: Wouter Born <github@maindrain.net>
2020-10-04 12:27:58 +02:00
Wouter BornandGitHub af266b5d9f Upgrade to Jollyday 0.5.10 (#1684)
With some excludes and the upgraded JAXB I got the most recent Jollyday version working.
The integration tests also succeed again on Java 11.

Signed-off-by: Wouter Born <github@maindrain.net>
2020-10-03 11:04:25 +02:00
Wouter BornandGitHub 3bf2f4934d Upgrade Maven compiler and fix/upgrade some TP dependencies (#1683)
Upgrades the compiler and its dependencies so the compiler results of Maven builds are more similar to those generated in recent Eclipse versions.

To fix compilation issues in Eclipse for add-ons using classes from javax.xml.stream several dependencies were upgraded/excluded.

Signed-off-by: Wouter Born <github@maindrain.net>
2020-10-02 23:36:37 +02:00
Wouter BornandGitHub 3b16f2ce7c Filter empty i18n config parameter options (#1680)
* Filter empty i18n config parameter options

There are many locales that do not have a country resulting in these empty parameter options.

Related to #1662

Signed-off-by: Wouter Born <github@maindrain.net>
2020-10-02 14:25:52 +02:00
Wouter BornandGitHub b62d494bf0 Sort Ephemeris config parameter options (#1681)
Fixes #1663

Signed-off-by: Wouter Born <github@maindrain.net>
2020-10-02 08:19:02 +02:00
Wouter BornandGitHub 9739271b52 Fix sitemap subscription cleanup (#1679)
* Add listener to SseBroadcaster so sseEventSinkRemoved events are handled
* Use Instant instead of long for tracking subscription creation times
* Run cleanup every 2 minutes instead of every 5 minutes

Fixes #1674

Signed-off-by: Wouter Born <github@maindrain.net>
2020-10-02 08:11:31 +02:00
Wouter BornandGitHub 369e678a63 Remove remaining deprecated MQTT transport code (#1671)
This removes the remaining deprecated MQTT transport code which was not part of #1668.

Related to #1408

Signed-off-by: Wouter Born <github@maindrain.net>
2020-09-24 19:36:11 +02:00
Wouter BornandGitHub 245a692705 Remove deprecated MQTT transport code (#1668)
Related to #1408

Signed-off-by: Wouter Born <github@maindrain.net>
2020-09-24 14:57:01 +02:00
Wouter BornandGitHub 6b97328189 Fix ConfigurableService deprecations (#1666)
Signed-off-by: Wouter Born <github@maindrain.net>
2020-09-24 14:55:50 +02:00
Wouter BornandGitHub c5541a0391 Remove deprecated handleUpdate from ThingHandler (#1669)
The handleUpdate method was deprecated when profiles were introduced (see eclipse-archived/smarthome#4108).
Instead the "follow profile" can be used which forwards item updates as commands to handlers.
This profile works with any binding instead of only those that implement the handleUpdate method.

Related to #1408

Signed-off-by: Wouter Born <github@maindrain.net>
2020-09-24 14:53:33 +02:00
Wouter BornandGitHub de5654d5d5 Exclude transitive JAXB 2.3 dependencies (#1670)
The add-ons still depend on JAXB 2.2 so it for instance caused the avmfritz itest to fail.

Signed-off-by: Wouter Born <github@maindrain.net>
2020-09-24 14:50:49 +02:00
Wouter BornandGitHub 2dd1a03abd Fix item channel links not properly initialized (#1634)
* Fix item channel links not properly initialized
* Add ChannelLinkNotifierOSGiTest
* Send at most one channelLinked event per linked thing channel when activating ChannelLinkNotifier
* Send channelUnlinked event only if all items are unlinked
* Use Registry stream instead of getAll

Fixes #1596

Signed-off-by: Wouter Born <github@maindrain.net>
2020-09-24 08:41:05 +02:00
Wouter BornandGitHub d33598ae54 Remove deprecated default methods (#1667)
Removes:

* ConfigOptionProvider.getParameterOptions(URI, String, Locale) (see also #1541)
* DiscoveryListener.removeOlderResults(DiscoveryService, long, Collection<ThingTypeUID>)

Related to #1408

Signed-off-by: Wouter Born <github@maindrain.net>
2020-09-23 19:06:29 +02:00
Wouter BornandGitHub f845772ab0 Remove deprecated BaseThingHandler.initialize() (#1665)
Signed-off-by: Wouter Born <github@maindrain.net>
2020-09-23 13:33:05 +02:00
Wouter BornandGitHub fb83864eb9 Fix transformation file path with locale specific files (#1661)
The path is incorrect because a bug was introduced in #1650.
This results in the MapTransformationServiceTest failing so it was disabled in openhab/openhab-addons#8519.

Signed-off-by: Wouter Born <github@maindrain.net>
2020-09-22 08:20:11 +02:00
Wouter BornandGitHub fabf6808ec Remove deprecated ConfigConstants (#1659)
Related to #1408

Signed-off-by: Wouter Born <github@maindrain.net>
2020-09-21 22:57:23 +02:00
Wouter BornandGitHub 289ad31afd Remove Eclipse project files from binding archetype (#1660)
Related to openhab/openhab-addons#8451

Signed-off-by: Wouter Born <github@maindrain.net>
2020-09-21 22:49:13 +02:00
Wouter BornandGitHub 979e80ee9e Fix callback not added to new PageChangeListener (#1658)
Fixes #1655

Signed-off-by: Wouter Born <github@maindrain.net>
2020-09-20 14:28:06 +02:00
Wouter BornandGitHub d12c30dfcf Upgrade Aries JAX-RS Whiteboard to 1.0.9 (#1656)
This version uses CXF 3.2.13 which has some SSE fixes.

Signed-off-by: Wouter Born <github@maindrain.net>
2020-09-19 15:59:48 +02:00
Wouter BornandGitHub 5919f923d5 Increase StartlevelEvent delay to 15 seconds (#1649)
The rules are often not instantiated within 5 seconds.
On a Raspberry Pi 3B it can take 12 seconds before rules are instantiated.
The code has also been improved with proper null annotations.

Related to #1637

Signed-off-by: Wouter Born <github@maindrain.net>
2020-09-18 23:27:56 +02:00
Wouter BornandGitHub f201b83c09 Fix "Unable to watch transformation directory" warnings (#1650)
Fixes #1636

Signed-off-by: Wouter Born <github@maindrain.net>
2020-09-18 08:54:23 +02:00
Wouter BornandGitHub 81e82e7d44 Use consistent capitalization with Conditions, Triggers, Actions (#1647)
Fixes #1639

Signed-off-by: Wouter Born <github@maindrain.net>
2020-09-15 19:52:35 +02:00
Wouter BornandGitHub f5f1e32b9f Add null annotations to ConfigDescriptionRegistry and ConfigUtil (#1641)
Also added "org.eclipse.jdt.annotation" to the test BOM so we can use "org.eclipse.jdt.annotation.Checks" in itests.
That class has many useful methods that help with writing more readable test code when using the Eclipse JDT null analysis annotations.

After running the resolver on the itests  a lot of bundles were removed from the itest.bndrun files.

Signed-off-by: Wouter Born <github@maindrain.net>
2020-09-15 17:00:15 +02:00
Wouter BornandGitHub b8a68e7c27 Remove non-existing $HOME/.bnd/cache/ dir from .travis.yml (#1632)
There is no $HOME/.bnd/cache dir after a Travis build.

There is a $HOME/.bnd/urlcache dir, but it contains info about artifacts in '/target' dirs so it's also useless to cache.

Signed-off-by: Wouter Born <github@maindrain.net>
2020-09-10 11:08:46 +02:00
Wouter BornandGitHub 5ade1b1239 Upgrade Travis CI to use Ubuntu 20.04 and fix warnings (#1630)
Upgrades the Travis CI build environment to Ubuntu 20.04 (Focal Fossa).

Also fixes the following Travis configuration validation warnings:

* deprecated key sudo (The key `sudo` has no effect anymore.)
* missing os, using the default linux

Signed-off-by: Wouter Born <github@maindrain.net>
2020-09-09 20:51:15 +02:00
Wouter BornandGitHub b3880ebe88 Remove deprecated methods from Configuration, UID and ThingHelper (#1629)
Removes the following deprecated methods:

* org.openhab.core.config.core.Configuration.get​(Object)
* org.openhab.core.config.core.Configuration.remove​(Object)
* org.openhab.core.thing.UID.getSegments()
* org.openhab.core.thing.util.ThingHelper.ensureUnique​(Collection<Channel>)

Signed-off-by: Wouter Born <github@maindrain.net>
2020-09-09 09:22:27 +02:00
Wouter BornandGitHub ab8aa9ed3a FeatureInstaller improvements (#1628)
* Use Streams for filtering, mapping and checking predicates
* Add exception to warnings/errors when debug logging is enabled
* Use final featuresService field so method arguments can be removed

Fixes #1486

Signed-off-by: Wouter Born <github@maindrain.net>
2020-09-07 19:45:33 +02:00
Wouter BornandGitHub 2273f8976f Fix potential NPE in ProfileCallbackImpl (#1627)
Also annotates ItemChannelLink.

Signed-off-by: Wouter Born <github@maindrain.net>
2020-09-07 15:13:06 +02:00
Wouter BornandGitHub 02404b2fa7 Fix null analysis errors/warnings (#1626)
The changes in #1614 caused null analysis errors in CommunicationManager.createCallback and caused unnecessary null check warnings in ProfileCallbackImpl.

Signed-off-by: Wouter Born <github@maindrain.net>
2020-09-07 12:12:31 +02:00
Wouter BornandGitHub 6018348d04 Remove deprecated NetUtil methods (#1622)
Signed-off-by: Wouter Born <github@maindrain.net>
2020-09-06 22:55:05 +02:00
Wouter BornandGitHub aee47e6381 Remove deprecated FilterCriteria methods (#1623)
Also removes "Zoned" from the getters so they follow the naming of the setters.

Signed-off-by: Wouter Born <github@maindrain.net>
2020-09-06 22:44:40 +02:00
Wouter BornandGitHub 12a5d08691 Allow property value to be updated to null (#1611)
With the changes in #1598 the BaseThingHandler could no longer update property values to null.

Signed-off-by: Wouter Born <github@maindrain.net>
2020-08-26 12:06:53 +02:00
Wouter BornandGitHub f095b9a017 Update spotless to 2.0.3 (#1609)
Signed-off-by: Wouter Born <github@maindrain.net>
2020-08-24 15:56:45 +02:00
Wouter BornandGitHub 057604cc2d Use new Collection API methods (#1598)
Using the new methods there will be less and more readable code.

Signed-off-by: Wouter Born <github@maindrain.net>
2020-08-22 23:04:11 +02:00
Wouter BornandGitHub d5529f0c1b Fix various deprecations (#1595)
Signed-off-by: Wouter Born <github@maindrain.net>
2020-08-15 10:54:41 +02:00
Wouter BornandGitHub 7300734585 Use "openhab" event topic prefix (#1587)
Signed-off-by: Wouter Born <github@maindrain.net>
2020-08-11 21:16:49 +02:00
Wouter BornandGitHub 86b02c26be Use "openhab" console scope (#1586)
Fixes #1566

Signed-off-by: Wouter Born <github@maindrain.net>
2020-08-11 20:38:24 +02:00
Wouter BornandGitHub 42a02ecb53 Exclude transitive activation-api dependency from swagger (#1582)
This newer version would make bnd resolve the lower bound to 1.2 instead of 1.1 for add-ons.

Signed-off-by: Wouter Born <github@maindrain.net>
2020-08-10 09:04:36 +02:00
Wouter BornandGitHub d3ea6063c0 Migrate to JUnit 5 (#1580)
* Migrates all tests to the JUnit 5 Jupiter API
* Updates bnd to 5.1.2
* Updates maven-surefire-plugin to 3.0.0-M5
* Updates Mockito to 3.4.6
* Updates Hamcrest to 2.2
* Removes org.openhab.core.boot POM dependencies

Signed-off-by: Wouter Born <github@maindrain.net>
2020-08-09 14:36:46 +02:00
Wouter BornandGitHub 29dfb967c4 Migrate to OpenAPI 3 annotations (#1576)
* Upgrade to Swagger 2.1.0
* Add missing root and events resources
* Fix wrong and add missing response implementations

Signed-off-by: Wouter Born <github@maindrain.net>
2020-08-02 13:21:57 +02:00
Wouter BornandGitHub df780f8467 Fix QuantityType.format timezone bug (#1575)
* Fix QuantityType.format timezone bug

Signed-off-by: Wouter Born <github@maindrain.net>
2020-08-01 13:03:01 +02:00
Wouter BornandGitHub 6c17091368 Update links to travis-ci.com
Signed-off-by: Wouter Born <github@maindrain.net>
2020-06-23 23:18:22 +02:00
Wouter BornandGitHub 84bf78d651 Remove Quartz leftovers (#1521)
Signed-off-by: Wouter Born <github@maindrain.net>
2020-06-14 12:48:22 +02:00
Wouter BornandGitHub 5b325aa3d2 Update nrjavaserial in TP to 5.2.1 (#1503)
With this version it will no longer completely exit the JVM in certain scenarios when ports are closed/reopened.

Related to:

* openhab/org.openhab.binding.zigbee#577
* openhab/org.openhab.binding.zwave#1332

Signed-off-by: Wouter Born <github@maindrain.net>
2020-05-27 21:28:52 +02:00
Wouter BornandGitHub 1f4e374ece Remove openhab.tp-mapdb (#1497)
Related to #1488, #1493

Signed-off-by: Wouter Born <github@maindrain.net>
2020-05-24 12:37:02 +02:00
Wouter BornandGitHub 02b13f5263 Update maven-javadoc-plugin to 3.2.0 (#1494)
Signed-off-by: Wouter Born <github@maindrain.net>
2020-05-23 17:35:13 +02:00
Wouter BornandGitHub cdfbcc830f Use ConfigurableService as ComponentPropertyType (#1491)
It is easier to use the ConfigurableService properties when it's possible to annotate classes using a ComponentPropertyType.

Signed-off-by: Wouter Born <github@maindrain.net>
2020-05-23 17:31:24 +02:00
Wouter BornandGitHub 2b5be0ba53 Update BOMs: remove mapdb, add dagger (#1493)
Related to #1488
Fixes #1238

Signed-off-by: Wouter Born <github@maindrain.net>
2020-05-22 21:12:09 +02:00
Wouter BornandGitHub 240c245b16 Annotate icon and tile classes with null annotations (#1490)
Signed-off-by: Wouter Born <github@maindrain.net>
2020-05-21 21:14:21 +02:00
Wouter BornandGitHub f3508e4775 Use constructor injection and update null annotations (#1487)
* Use constructor injection and update null annotations

Signed-off-by: Wouter Born <github@maindrain.net>
2020-05-20 17:29:18 +02:00
Wouter BornandGitHub 84d9438737 Add null annotations to REST resources (#1475)
Signed-off-by: Wouter Born <github@maindrain.net>
2020-05-17 19:32:35 +02:00
Wouter BornandGitHub 859da2e1c7 Migrate to JAX-RS Whiteboard (#1443)
* Migrate to JAX-RS Whiteboard
* Upgrade Jackson and Swagger TP feature dependencies

The upstream JAX-RS Whiteboard feature is not used because the version ranges currently do not work with Karaf on Windows.
See: https://issues.apache.org/jira/browse/KARAF-6536

* Update Felix logback to 1.0.2

This version adds the jul-to-slf4j bridge (FELIX-6027).
JUL is used by CXF and using the bridge we can use logback to reduce the verbosity of the info logging whenever org.apache.cxf.endpoint.ServerImpl creates endpoints.

* Update Aries Whiteboard to 1.0.8
* Removes the hated default web application (ARIES-1931)
* Improves performance
* Uses CXF 3.2.12
* Don't reuse SSE event builders

SSE event builders are not thread-safe.
It also causes the wrong default values being used.

Also-by: Markus Rathgeb <maggu2810@gmail.com>
Signed-off-by: Wouter Born <github@maindrain.net>
2020-05-14 22:32:35 +02:00
Wouter BornandGitHub 583ea02429 Improve SerialPortManager.getIdentifiers() JavaDoc (#1471)
* Improve SerialPortManager.getIdentifiers() JavaDoc

The current JavaDocs do not clearly state that it does not always return all identifiers.
E.g. it will not return any RFC2217 identifiers or undiscovered RXTX port identifiers.
So it should not be used to search for an identifier when the serial port name is known.
This method is useful for listing available port options in UIs and logging.

Signed-off-by: Wouter Born <github@maindrain.net>
2020-05-13 09:36:27 +02:00
Wouter BornandGitHub ac1f4080e3 Update nrjavaserial in TP to 5.0.2 and define import version range (#1464)
The first version of nrjavaserial with OSGi manifest entries is 3.12.0.
The interface has not changed and is still the same with nrjavaserial 5.x.
So using 3.12.0 as compile time dependency and defining a [3.12,6) version range using bnd.bnd files allows for maximum flexibility.

Signed-off-by: Wouter Born <github@maindrain.net>
2020-05-08 11:48:06 +02:00
Wouter BornandGitHub 54082a6fc8 Add commons-fileupload back to runtime BOM (#1458)
Fixes resolving bundles in the Demo App.
It's a dependency of org.apache.felix.webconsole

Caused by: #1436

Signed-off-by: Wouter Born <github@maindrain.net>
2020-05-04 11:31:48 +02:00
Wouter BornandGitHub 61e17ce39e Upgrade SAT and Spotless, apply Spotless and enable check (#1446)
* Update SAT and Spotless dependencies
* Apply Spotless and enable check

Signed-off-by: Wouter Born <github@maindrain.net>
2020-04-26 11:15:24 +02:00
Wouter BornandGitHub ed4b5ff94b Reconfigure and apply Spotless (#1442)
Adds a configuration for feature.xml files which will be necessary for https://github.com/openhab/static-code-analysis/pull/375

Also applies the results of running Spotless

Signed-off-by: Wouter Born <github@maindrain.net>
2020-04-23 17:17:12 +02:00
Wouter BornandGitHub 92027ca922 Use .equals() on constants and literals to prevent NPEs (#1420)
* Use .equals() on constants and literals to prevent NPEs

Signed-off-by: Wouter Born <github@maindrain.net>
2020-04-16 07:40:49 +02:00
Wouter BornandGitHub 66da3a7912 Update nrjavaserial to 3.20.0 (#1426)
Updates nrjavaserial to the official 3.20.0 release (compatible with Java 8/11).
With the upgraded version the library will no longer crash the Java 11 VM on Windows.
The native libraries now use the built in RXTX lockfiles instead of the previously used (OS dependent) liblockdev whereas the OH build didn't use any lockfiles at all.
It also has a fix for errors being printed when scanning for serial ports whenever a serial port is locked (NeuronRobotics/nrjavaserial#166).
With the new version RXTX threads also have proper names and there is a fix for an IllegalMonitorStateException that might occur when closing ports.

Fixes #1384

Signed-off-by: Wouter Born <github@maindrain.net>
2020-04-15 11:10:55 +02:00
Wouter BornandGitHub b734c2cc04 Remove deprecated TrustManagerProvider (#1425)
* Remove deprecated `TrustManagerProvider`

It was deprecated since the introduction of the `ExtensibleTrustManager` (https://github.com/eclipse/smarthome/pull/6281).

Related to #1408

Signed-off-by: Wouter Born <github@maindrain.net>
2020-04-15 10:34:45 +02:00
Wouter BornandGitHub 778c72eabb Remove deprecated DiscoveryServiceCallback, ExtendedDiscoveryService (#1424)
- Remove deprecated DiscoveryServiceCallback, ExtendedDiscoveryService

Related to #1408

Signed-off-by: Wouter Born <github@maindrain.net>
2020-04-15 08:23:57 +02:00
Wouter BornandGitHub 6c85b1bccd Add and fix more null annotations (#1421)
Signed-off-by: Wouter Born <github@maindrain.net>
2020-04-15 01:44:37 +02:00
Wouter BornandGitHub fb7a7ac421 Add null annotations to providers and ThingManager (#1412)
* Add null annotations to providers and ThingManager

Signed-off-by: Wouter Born <github@maindrain.net>
2020-04-11 08:29:12 +02:00
Wouter BornandGitHub 017532e2d4 Remove deprecated InboxFilterCriteria (#1417)
- Remove deprecated InboxFilterCriteria

Related to #1408

Signed-off-by: Wouter Born <github@maindrain.net>
2020-04-09 21:31:23 +02:00
Wouter BornandGitHub 3e1357f84b Remove deprecated discovery participant interfaces (#1418)
Removes:
* org.openhab.core.io.transport.mdns.discovery.MDNSDiscoveryParticipant
* org.openhab.core.config.discovery.UpnpDiscoveryParticipant

Signed-off-by: Wouter Born <github@maindrain.net>
2020-04-09 21:27:34 +02:00
Wouter BornandGitHub 945afcdb1a Add and fix more null annotations (#1407)
* Add and fix more null annotations
* Add more @NonNullByDefault and @Nullable annotations
* Remove unnecessary @NonNull annotations
* Fix a few other trivial SAT issues
* Add constructor injection for MDNSDiscoveryService

Signed-off-by: Wouter Born <github@maindrain.net>
2020-04-06 10:45:39 +02:00
Wouter BornandGitHub 1f825fc529 Fix null analysis errors in Eclipse (#1403)
Without helping the compiler a bit, it will show null analysis errors in Eclipse.

Signed-off-by: Wouter Born <github@maindrain.net>
2020-04-04 18:09:44 +02:00
Wouter BornandGitHub 2681b5d90b Remove MagicHttpResource (#1390)
For ESH it made sense to use this but nowadays these UIs are no longer part of openhab-core and the demo app used for development is in openhab-distro.
Furthermore it provides links to UIs that are no longer part of OH3, uses ESH logos and the new Default UI is also using / so it throws exceptions.

See: https://github.com/openhab/openhab-distro/pull/1084#issuecomment-596226652

Signed-off-by: Wouter Born <github@maindrain.net>
2020-03-14 23:19:42 +01:00
Wouter BornandKai Kreuzer 18d0a52d02 Switch to Java 11 and drop Java 8 support (#1305)
Signed-off-by: Wouter Born <github@maindrain.net>
2020-01-12 22:32:28 +01:00
Wouter BornandChristoph Weitkamp 9d0cb4d9af Fix FolderObserver configuration PID (#1315)
Signed-off-by: Wouter Born <github@maindrain.net>
2020-01-03 08:06:28 +01:00
Wouter BornandKai Kreuzer 3811cb9560 Update copyright headers to 2020 (#1309)
* Update copyright headers to 2020

Signed-off-by: Wouter Born <github@maindrain.net>
2020-01-01 18:06:34 +01:00
Wouter BornandKai Kreuzer 406f9b262f Correct Xtext version in bnd.bnd files (#1304)
Related to: https://github.com/openhab/openhab-core/pull/1171

Signed-off-by: Wouter Born <github@maindrain.net>
2019-12-29 17:23:52 +01:00
Wouter BornandChristoph Weitkamp 92d54ad7c2 Update SAT currentVersionRegex for 3.0.0 (#1280)
Signed-off-by: Wouter Born <github@maindrain.net>
2019-12-15 22:45:23 +01:00
Wouter BornandKai Kreuzer c50766d7c3 Use default SslContextFactory excludes for weak ciphers and protocols (#1241)
To prevent weak cipher/protocol warnings it's better to not customize the default excluded ciphers and protocols.
The MD5 ciphers have already been excluded by default since Jetty 9.3.11.v20160721.

Fixes #1064

Signed-off-by: Wouter Born <github@maindrain.net>
2019-11-25 23:22:32 +01:00
Wouter BornandKai Kreuzer 403b55c8fc Parameterized logging fixes (#1213)
Make sure Throwables are not be substituted into log messages so they can be formatted according to the logging configuration.

Signed-off-by: Wouter Born <github@maindrain.net>
2019-11-14 20:08:06 +01:00
Wouter BornandKai Kreuzer b1e949c50a Upgrade bnd to 4.3.0 (#1198)
For bnd 4.3.0 release notes, see:

https://github.com/bndtools/bnd/wiki/Changes-in-4.3.0

Also note:

    The Bnd Maven plugins are now marked thread safe and can be used with -T.

It seems to work well so far as long as the features are build after the bundles so I've added the bundles BOM as dependency to the features POM.
We still need to make SAT thread safe (openhab/static-code-analysis#200).

When disabling SAT you can build using one thread per processor core by executing:

    mvn clean install -DskipChecks -T 1C

This significantly speeds up Maven builds and puts all your processor cores to good use. :-)

Signed-off-by: Wouter Born <github@maindrain.net>
2019-11-11 20:00:38 +01:00
Wouter BornandKai Kreuzer fd3732eabe Upgrade Karaf tooling and openHAB TP to 4.2.7 (#1197)
For Karaf 4.2.7 release notes, see:

https://issues.apache.org/jira/secure/ReleaseNote.jspa?projectId=12311140&version=12345539

Also updates the following openHAB TP dependencies:

* Jetty 9.4.20.v20190813
* JNA 5.4.0 (used by most add-ons)

Signed-off-by: Wouter Born <github@maindrain.net>
2019-11-10 17:02:40 +01:00
Wouter BornandKai Kreuzer d627a6b7e6 Downgrade Jollyday again to fix Java 11 build issues (#1195)
Jollyday requires JAXB 2.3 on Java 11 whereas only 2.2 is available during compilation for Java 8 compatibility.

See also:
* https://github.com/openhab/openhab2-addons/issues/6334
* https://github.com/openhab/openhab-core/pull/1170
* https://github.com/openhab/openhab-core/pull/1169

Signed-off-by: Wouter Born <github@maindrain.net>
2019-11-08 15:18:58 +01:00
Wouter BornandKai Kreuzer cd3f33738f Fix unstable MqttBrokerConnectionTests (#1191)
Using waitForAssert instead of sleeping 10ms makes the tests stable when the system has some load.

Fixes #1139

Signed-off-by: Wouter Born <github@maindrain.net>
2019-11-08 10:53:13 +01:00
Wouter BornandKai Kreuzer e943ec8970 Upgrade to Xtext 2.19, LSP4J 0.8.0 and fix LSP server (#1171)
Every connection to the LSP server failed because it always threw a org.eclipse.smarthome.model.ide.SitemapIdeSetup NoClassDefFoundError.
Which is caused by the SitemapIdeSetup residing in a package that is split between both the org.openhab.core.model.item.ide and the org.openhab.core.model.sitemap.ide bundles.
The SitemapIdeSetup class is also using classes from the org.eclipse.smarthome.model package which is also a package split between the org.openhab.core.model.items and org.openhab.core.model.sitemap bundles.
After renaming the packages used for the sitemap classes the NoClassDefFoundError is resolved and LSP works properly again.
Many imports were updated for the sitemap model package changes.

Fixes #1030

Signed-off-by: Wouter Born <github@maindrain.net>
2019-11-07 16:26:59 +01:00
Wouter BornandChristoph Weitkamp f45aebca50 Update to SAT 0.8.0 (#1184)
Signed-off-by: Wouter Born <github@maindrain.net>
2019-11-03 22:35:48 +01:00