Commit Graph

263 Commits

Author SHA1 Message Date
Christoph Weitkamp
764b5845a6 [thing] Call removeItem() with item name instead of ThingUID (#1230)
* Added unit test to cover #1226
* Call 'removeItem()' with item name instead of ThingUID
* Added nullness annotations
* Use constructor injection

Signed-off-by: Christoph Weitkamp <github@christophweitkamp.de>
2019-11-19 17:34:05 +01:00
Christoph Weitkamp
931b2007c5 Removed access to 'BundleContext' from 'BaseThingHandler' (#1214)
Signed-off-by: Christoph Weitkamp <github@christophweitkamp.de>
2019-11-17 21:44:08 +01:00
Wouter Born
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
Christoph Weitkamp
ce404e0a84 Added German translations for profiles (#1182)
Signed-off-by: Christoph Weitkamp <github@christophweitkamp.de>
2019-11-06 10:45:22 +01:00
Wouter Born
f002a21da5 Fix SAT errors/warnings in resources and tests (#1178)
Fixes SAT errors/warnings in resources and tests reported by SAT 0.8.0-SNAPSHOT.

Related to openhab/static-code-analysis#363

Signed-off-by: Wouter Born <github@maindrain.net>
2019-11-03 11:04:19 +01:00
Christoph Weitkamp
1f9a6f685d Consider more than one value when applying the default value(s) for Things and Channels (#1067)
Signed-off-by: Christoph Weitkamp <github@christophweitkamp.de>
2019-11-01 22:23:52 +01:00
Christoph Weitkamp
45602fa184 [xml] Feature thing xml constructor injection (#1167)
* Added contructor injection to thing xml
* Removed Nullable from getChannels and getChannelGroups

Signed-off-by: Christoph Weitkamp <github@christophweitkamp.de>
2019-10-27 19:24:12 +01:00
Christoph Weitkamp
12d91f7da9 [i18n] Refactoring and annotations (#1161)
* Added nullness annotations to 'RuleTemplateI18nUtil'
* Added nullness annotations to 'ConfigDescriptionGroupI18nUtil'
* Moved 'ConfigDescriptionI18nUtil' into internal package
* Moved 'ConfigDescriptionGroupI18nUtil' into internal package
* Moved 'ThingTypeI18nUtil' into internal package
* Use 'ConfigI18nLocalizationService' instead of 'ConfigDescriptionI18nUtil'
* Use default labels / descriptions if application of localization is not successful
* Resolved itest.bndrun files

Signed-off-by: Christoph Weitkamp <github@christophweitkamp.de>
2019-10-27 11:17:52 +01:00
Wouter Born
2430256b6a Add null annotations to registries (#1134)
Adds null annotations to all registries, the interfaces they implement and a few other classes.

Also-by: Christoph Weitkamp <github@christophweitkamp.de>
Signed-off-by: Wouter Born <github@maindrain.net>
2019-10-23 07:36:56 +02:00
Wouter Born
be69d2254e Use !isEmpty() instead of "size() > 0" or "size() != 0" (#1155)
* Use !isEmpty() instead of "size() > 0" or "size() != 0"

!isEmpty() expresses the intent more clearly and is therefore preferred.
Counting the number of elements can also be an expensive operation e.g. when using linked lists.

Co-Authored-By: Christoph Weitkamp <github@christophweitkamp.de>
Signed-off-by: Wouter Born <github@maindrain.net>
2019-10-21 09:00:52 +02:00
Christoph Weitkamp
22ba5d92c1 Minor profile improvements (#1132)
* Minor code improvements in profile factory
* Added integration test to check if factory creates all available profiles

Signed-off-by: Christoph Weitkamp <github@christophweitkamp.de>
2019-10-19 15:14:57 +02:00
Christoph Weitkamp
0fdd691c22 Removed superflous resources (#1137)
Signed-off-by: Christoph Weitkamp <github@christophweitkamp.de>
2019-10-18 22:28:37 +02:00
Mark Hilbush
8396a17d2d Add system profile for a 'rawbutton-on-off-switch' (#1131)
* Add `rawbutton-on-off-switch` profile and tests

Signed-off-by: Mark Hilbush <mark@hilbush.com>
2019-10-14 22:22:18 +02:00
Christoph Weitkamp
91617d8af8 Fixed POM XML Shema Definition path (#1119)
Signed-off-by: Christoph Weitkamp <github@christophweitkamp.de>
2019-10-12 08:52:16 +02:00
Wouter Born
12e8edc039 Use diamond operator (#1114)
Signed-off-by: Wouter Born <github@maindrain.net>
2019-10-11 02:29:47 -07:00
Wouter Born
3d52c72a91 Fix SAT AuthorContributionDescriptionCheck findings (#1110)
Signed-off-by: Wouter Born <github@maindrain.net>
2019-10-10 11:36:05 +02:00
Wouter Born
90005e4a56 Fix NoEmptyLineSeparatorCheck and NewlineAtEndOfFileCheck SAT findings (#1108)
Signed-off-by: Wouter Born <github@maindrain.net>
2019-10-08 22:19:54 -07:00
Wouter Born
08a1f9a86d Fix SAT constant/variable name findings (#1106)
Fixes wrong names identified by the following rules:

* ConstantNameCheck
* LocalFinalVariableNameCheck
* LocalVariableNameCheck
* StaticVariableNameCheck

Most mismatches identified by the MemberNameCheck have also been fixed except for those where the variables are used in events/DTOs etc which would cause issues.

Signed-off-by: Wouter Born <github@maindrain.net>
2019-10-08 22:19:00 -07:00
Wouter Born
12b3c1030f Fix SAT "Initial contribution" warnings (#1100)
Fixes the SAT warning: First javadoc author should have "Initial contribution" contribution description.

Signed-off-by: Wouter Born <github@maindrain.net>
2019-10-07 21:25:40 -07:00
Christoph Weitkamp
c31a5aa7ef [storage] Added nullness annotations (#1099)
* Added nullness annotations

Signed-off-by: Christoph Weitkamp <github@christophweitkamp.de>
2019-10-07 20:50:39 +02:00
Christoph Weitkamp
6a3c9b03ac Replaced orphaned 'registerHandlerLock' by 'thingLocks' (#1060)
Signed-off-by: Christoph Weitkamp <github@christophweitkamp.de>
2019-10-06 11:17:51 +02:00
Wouter Born
f53beab04c Move thing unit tests (#1074)
* Move thing unit tests

Moves the thing unit tests from the itests project to the bundle project.

Signed-off-by: Wouter Born <github@maindrain.net>
2019-10-03 19:52:40 +02:00
Christoph Weitkamp
d2af7a350b [core] Removed access to 'ThingRegistry' from 'BaseThingHandler' (#1041)
* Removed access to ThingRegistry from BaseThingHandler

Signed-off-by: Christoph Weitkamp <github@christophweitkamp.de>
2019-09-29 12:26:46 +02:00
Christoph Weitkamp
cd57f1d79c Refactoring of builders (#908)
Signed-off-by: Christoph Weitkamp <github@christophweitkamp.de>
2019-09-16 21:10:39 +02:00
Christoph Weitkamp
f86d011884 Use constructor injection to simplify lifecycle (#987)
Signed-off-by: Christoph Weitkamp <github@christophweitkamp.de>
2019-08-24 23:49:24 +02:00
Christoph Weitkamp
3e38733b09 Fixed spelling in JavaDoc (#975)
Signed-off-by: Christoph Weitkamp <github@christophweitkamp.de>
2019-08-13 21:21:13 +02:00
Wouter Born
9d2f09936d Fix null annotations order and cleanup (#958)
* Move null annotations between modifiers and variable type
* Remove redundant public modifiers from interfaces where applicable
* Remove redundant `@NonNull` annotations

Signed-off-by: Wouter Born <github@maindrain.net>
2019-08-08 09:42:30 +02:00
Markus Rathgeb
ef05b4d878 start with an upper case on "initial contribution" (#931)
Related to: https://github.com/openhab/openhab-core/pull/916/#discussion_r305082016

Signed-off-by: Markus Rathgeb <maggu2810@gmail.com>
2019-07-21 12:24:58 +02:00
Markus Rathgeb
fe9b060391 firmware: transfer latest FW don't require a info about previous FW (#884)
Signed-off-by: Markus Rathgeb <maggu2810@gmail.com>
2019-06-20 21:25:22 +02:00
Markus Rathgeb
a23cd23a37 map entries of member variables could change between lines (#883)
Signed-off-by: Markus Rathgeb <maggu2810@gmail.com>
2019-06-20 21:24:55 +02:00
Markus Rathgeb
a75fbe1e42 Class::getCanonicalName may return null (#882)
Signed-off-by: Markus Rathgeb <maggu2810@gmail.com>
2019-06-20 21:24:20 +02:00
Christoph Weitkamp
7f0d61d6a6 thing: Use constructor injection to simplify lifecycle (#849)
Signed-off-by: Christoph Weitkamp <github@christophweitkamp.de>
2019-06-03 13:14:41 +02:00
Christoph Weitkamp
eef779e91a Added nullness annotations (#837)
Signed-off-by: Christoph Weitkamp <github@christophweitkamp.de>
2019-05-28 17:56:48 +02:00
Christoph Weitkamp
0d736a700e Use correct profile builder (#831)
Signed-off-by: Christoph Weitkamp <github@christophweitkamp.de>
2019-05-24 19:41:55 +02:00
Christoph Weitkamp
0f74348f51 Factored out 'LocalizedKey' into separate class (#808)
Signed-off-by: Christoph Weitkamp <github@christophweitkamp.de>
2019-05-09 11:57:40 +02:00
Christoph Weitkamp
2a9485bc3b Improvements for 'DefaultSystemChannelTypeProvider' (#807)
* Use constructor dependency injection
* Added nullness annotations

Signed-off-by: Christoph Weitkamp <github@christophweitkamp.de>
2019-05-09 07:51:56 +02:00
Christoph Weitkamp
b5f33d341d Added i18n feature for profiles (#785)
Signed-off-by: Christoph Weitkamp <github@christophweitkamp.de>
2019-05-09 07:50:55 +02:00
Christoph Weitkamp
81423aa22e Separate i18n infrastructure for 'ChannelGroup' (#804)
Signed-off-by: Christoph Weitkamp <github@christophweitkamp.de>
2019-05-07 19:32:11 +02:00
Markus Rathgeb
eaaf01a5fd use mandatory storage services (#787)
Signed-off-by: Markus Rathgeb <maggu2810@gmail.com>
2019-05-02 21:11:00 +02:00
Christoph Weitkamp
8d5d789371 Changed ordering of annotation and quialifier
Signed-off-by: Christoph Weitkamp <github@christophweitkamp.de>
2019-04-30 13:22:26 +02:00
Christoph Weitkamp
5888c8b5d6 Added RawButtonToggleRollershutterProfile, RawRockerStopMoveProfile and RawRockerUpDownProfile
Signed-off-by: Christoph Weitkamp <github@christophweitkamp.de>
2019-04-30 13:22:26 +02:00
Christoph Weitkamp
b8de327e15 Added i18n feature for dynamic command descriptions (#771)
Signed-off-by: Christoph Weitkamp <github@christophweitkamp.de>
2019-04-29 19:16:47 +02:00
Christoph Weitkamp
31760bf3a7 Updated xml schema locations to openhab (#769)
Signed-off-by: Christoph Weitkamp <github@christophweitkamp.de>
2019-04-29 19:15:24 +02:00
Christoph Weitkamp
76387f2b79 Changed visibility of lists to allow subclasses to acces them (#770)
Signed-off-by: Christoph Weitkamp <github@christophweitkamp.de>
2019-04-29 19:10:07 +02:00
Christoph Weitkamp
1bbf250d1f Removed deprecated methods (#721)
Signed-off-by: Christoph Weitkamp <github@christophweitkamp.de>
2019-04-28 18:52:16 +02:00
Christoph Weitkamp
bc91446ae1 Added i18n feature for dynamic state descriptions (#655)
Signed-off-by: Christoph Weitkamp <github@christophweitkamp.de>
2019-04-26 12:54:40 +02:00
Christoph Weitkamp
d0800c902e Added RawButtonTogglePlayerProfile, RawRockerNextPreviousProfile and RawRockerRewindFastforwardProfile (#747)
Signed-off-by: Christoph Weitkamp <github@christophweitkamp.de>
2019-04-26 12:53:16 +02:00
Gaël L'hopital
20ee4b8fe0 Added change and update timestamp profiles (#732)
* Added change and update timestamp profiles

Signed-off-by: Gaël L'hopital <gael@lhopital.org>
2019-04-18 12:59:15 +02:00
Christoph Weitkamp
309a1af45f Deprecated method - could be removed because of superflous code (#720)
Signed-off-by: Christoph Weitkamp <github@christophweitkamp.de>
2019-04-15 14:35:48 +02:00
Christoph Weitkamp
0aa7661764 Revert ThingImpl and BridgeImpl changes as the storage uses those implementations (#719)
Signed-off-by: Christoph Weitkamp <github@christophweitkamp.de>
2019-04-14 23:09:09 +02:00
Christoph Weitkamp
48a97c1ac2 Improved thing / bridge performance (#693)
Signed-off-by: Christoph Weitkamp <github@christophweitkamp.de>
2019-04-10 08:50:04 +02:00
Wouter Born
cbb96945f0 Ignore and remove Eclipse project specific settings (#677)
Signed-off-by: Wouter Born <github@maindrain.net>
2019-03-26 13:04:09 +01:00
Markus Rathgeb
fdb23778dc improve nullness of events (#657)
Signed-off-by: Markus Rathgeb <maggu2810@gmail.com>
2019-03-15 09:10:52 +01:00
Wouter Born
48d873a32b Use openHAB license headers (#632)
Signed-off-by: Wouter Born <github@maindrain.net>
2019-03-06 16:10:00 +01:00
Hilbrand Bouwkamp
09e2292a58 Replaces 'Eclipse SmartHome' with 'openHAB' in text (#581)
Adapted CONTRIBUTING.md file.

Signed-off-by: Hilbrand Bouwkamp <hilbrand@h72.nl>
2019-02-15 10:46:37 +01:00
Hilbrand Bouwkamp
d342afbc4e Updated NOTICE files to openHAB (#578)
Signed-off-by: Hilbrand Bouwkamp <hilbrand@h72.nl>
2019-02-15 10:46:18 +01:00
Henning Treu
3c8e3efa93 Extend ChannelType by command options (#540)
This addresses https://github.com/eclipse/smarthome/issues/5099 by adding a command description with command options along with the state description.
Command options will give a hint to UIs about the specific commands a channel provides. Command options could be rendered as a drop down and also represent the current state or rendered as push buttons to simply send a command to the ThingHandler.
The infrstructure basically copies the StateDescription infrastructure with CommandDescriptionProviders and an `DynamicCommandDescriptionProvider` interface for bindings to hook in and provide dynamic command options.

Signed-off-by: Henning Treu <henning.treu@googlemail.com>
2019-02-12 13:41:01 +00:00
Markus Rathgeb
fd95b86b36 centralize the bundle identifier construction
The ready marker logic is created to hide the real usage. The ready
marker uses an "identifier" that is not specific or limited to bundles.

Currently the bundle symbolic name is used as bundle identifier.
That "convention" needs to be known at several different places.

There should be one method that created an identifier for a bundle and
"no one" needs to care about the implementation details.

Another point is that the bundle symbolic name that has been used is
optional. It may be null e.g. for bundles that has been installed by the
synthetic bundle installer mechanism etc.

The runtime assigns a bundle ID to an installed bundle that remains the
same for the bundle (see JavaDoc). The bundle ID is present all the
time.

The implementation of the "get identifier for bundle" has been choosen
to use the BSN -- if available -- (as before) but fallback to a custom
one using also the bundle ID (to be unique).
So we can provide always a non null identifier for a bundle.
It should be easily to change the identifier creation now if there is
every any need for.

Signed-off-by: Markus Rathgeb <maggu2810@gmail.com>
2019-02-06 15:56:00 +01:00
Markus Rathgeb
7a1982e785 harden against missing bundle symbolic name (#510)
Fixes: https://github.com/openhab/openhab-core/issues/508

Signed-off-by: Markus Rathgeb <maggu2810@gmail.com>
2019-02-01 14:53:38 +01:00
Markus Rathgeb
68c8db8227 add missing no-arg constructors (#509)
* FirmwareUpdateProgressInfo
* FirmwareStatusInfo
* FirmwareUpdateResultInfo

Fixes: https://github.com/openhab/openhab-core/issues/507

Signed-off-by: Markus Rathgeb <maggu2810@gmail.com>
2019-02-01 14:24:25 +01:00
Kai Kreuzer
3b6dfbeddb Keep persisted disabled status when thing is removed (#493)
Also-By: Florian Stolte <fstolte@itemis.de>
Signed-off-by: Kai Kreuzer <kai@openhab.org>
2019-01-30 11:37:51 +01:00
Markus Rathgeb
fbca7e806f remove project specific JDT settings (#481)
Done per request by @wborn.
Related to: https://github.com/openhab/openhab-core/pull/476#discussion_r251566034

Signed-off-by: Markus Rathgeb <maggu2810@gmail.com>
2019-01-29 10:24:39 +01:00
Markus Rathgeb
a37cceab67 mavenize openHAB and integrate mavenized ESH repository (#467)
* mavenize openHAB and integrate mavenized ESH repository

Signed-off-by: Markus Rathgeb <maggu2810@gmail.com>
2019-01-28 13:07:31 +01:00