-
-
Notifications
You must be signed in to change notification settings - Fork 3.6k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[ISM8] New binding for Wolf heating systems using an ISM8 interface #6336
Conversation
Travis tests were successfulHey @Hans-Reiner, |
Travis tests were successfulHey @Hans-Reiner, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Before I get too far in the review I just want you to look at openhab's coding guidelines and make sure that you adhere to those guidelines as much as possible.
There are several places that you are going against the guidelines for logging levels and the naming guidelines.
You should avoid catching Exceptions and instead should catch specific exceptions.
Also if you can please format the code such that you minimize nested indentations.
Once you have addressed as much as you can please ping me for a review again.
} catch (Exception e) { | ||
} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
What are you expecting to catch here?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Basically nothing, but Eclipse initially requested this in order to build it successfully. I could solve this by reviewing the Exception handling as previously were a lot of methods decorated by the ‘throws Exception’ statement. I removed them at all possible methods and only a few had to stay.
private int __Id; | ||
private String __KnxDataType = new String(); | ||
private String __Description = new String(); | ||
private T __Value; | ||
private String __Unit = new String(); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Please make sure that all field and variable names are camelcase.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Also, instead of new String()
just use an empty string ""
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Done
logger.debug("Ism8: Channel Link {}", channelUID.getId()); | ||
} | ||
|
||
@SuppressWarnings("null") |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Please remove all warning suppressions from your code
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I removed the suppressions, but received afterwards a few warnings in Eclipse. There were null-checks in an IF statement, but I could only solve it by copying the object reference in a local variable. Please let me know if this is the right way (e.g. Ism8Handler.java line 61, 69, 78).
Travis tests were successfulHey @Hans-Reiner, |
1 similar comment
Travis tests were successfulHey @Hans-Reiner, |
Can you fix the conflict and CODEOWNERS today (19 September 2020)? So it can be shipped with 2.5.9. 2.5.9 is planned for 20 September. |
ISM8 Binding added Signed-off-by: Hans-Reiner <57272516+Hans-Reiner@users.noreply.github.com> Signed-off-by: Hans-Reiner Hoffmann <hans-reiner.hoffmann@gmx.de>
Signed-off-by: Hans-Reiner Hoffmann <hans-reiner.hoffmann@gmx.de>
Signed-off-by: Hans-Reiner Hoffmann <hans-reiner.hoffmann@gmx.de>
Signed-off-by: Hans-Reiner Hoffmann <hans-reiner.hoffmann@gmx.de>
Signed-off-by: Hans-Reiner Hoffmann <hans-reiner.hoffmann@gmx.de>
Signed-off-by: Hans-Reiner Hoffmann <hans-reiner.hoffmann@gmx.de>
Signed-off-by: Hans-Reiner Hoffmann <hans-reiner.hoffmann@gmx.de>
Signed-off-by: Hans-Reiner Hoffmann <hans-reiner.hoffmann@gmx.de>
Signed-off-by: Hans-Reiner Hoffmann <hans-reiner.hoffmann@gmx.de>
Signed-off-by: Hans-Reiner Hoffmann <hans-reiner.hoffmann@gmx.de>
Signed-off-by: Hans-Reiner Hoffmann <hans-reiner.hoffmann@gmx.de>
Signed-off-by: Hans-Reiner Hoffmann <hans-reiner.hoffmann@gmx.de>
Signed-off-by: Hans-Reiner Hoffmann <hans-reiner.hoffmann@gmx.de>
Signed-off-by: Hans-Reiner Hoffmann <hans-reiner.hoffmann@gmx.de>
Signed-off-by: Hans-Reiner Hoffmann <hans-reiner.hoffmann@gmx.de>
…changes Signed-off-by: Hans-Reiner Hoffmann <hans-reiner.hoffmann@gmx.de>
… the UI. Removed write-blocking for read-only parameter. Signed-off-by: Hans-Reiner Hoffmann <hans-reiner.hoffmann@gmx.de>
Signed-off-by: Hans-Reiner Hoffmann <hans-reiner.hoffmann@gmx.de>
I hope the merge was executed correctly. After the |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM. rebase went well. There was a indentation in the bundle pom, but I applied the fix so that should work. The build should work now.
Signed-off-by: Hans-Reiner Hoffmann <hans-reiner.hoffmann@gmx.de>
Hilbrand, Fabian, many thanks for your great support, hints and to be so patient. This was my first code in Java and in contributing in an open source project. Very much appreciated. |
Good job! As two maintainers approved your code, it's ready to merge in general. When Travis and Jenkins have built the code sucessfully, your PR will be merged into the |
Travis and Jenkins are both happy! 👍 |
…penhab#6336) Signed-off-by: Hans-Reiner Hoffmann <hans-reiner.hoffmann@gmx.de>
[ISM8] Initial contribution
I was looking into the available options to integrate my heating system into OpenHab. As I didn't want to place own hardware modifications or 3rd party interfaces into my heating system, I decided to create a binding communicating with the original Wolf interface. The ISM8 interface sends a set of parameters and values to a partner using standard TCP/IP protocols.
With this binding, you are able to integrate your Wolf heating system. This allows you to check the temperature values as well as changing set points.
As this is my first new binding as well as I'm usually not working with Java, I'd like to ask you to contribute as well in the development of this binding if this is in any interest..