2024-06-12 22:43:45.507 [WARN ] [mmon.WrappedScheduledExecutorService] - Scheduled runnable ended with an exception: java.lang.NullPointerException: Cannot invoke "java.util.List.equals(Object)" because "this.errorCodes" is null at org.openhab.binding.verisure.internal.dto.VerisureAlarmsDTO$ArmState.equals(VerisureAlarmsDTO.java:169) ~[?:?] at org.openhab.binding.verisure.internal.dto.VerisureBaseThingDTO$Installation.equals(VerisureBaseThingDTO.java:360) ~[?:?] at org.openhab.binding.verisure.internal.dto.VerisureBaseThingDTO$Data.equals(VerisureBaseThingDTO.java:232) ~[?:?] at org.openhab.binding.verisure.internal.dto.VerisureBaseThingDTO.equals(VerisureBaseThingDTO.java:150) ~[?:?] at org.openhab.binding.verisure.internal.dto.VerisureAlarmsDTO.equals(VerisureAlarmsDTO.java:49) ~[?:?] at org.openhab.binding.verisure.internal.VerisureSession.notifyListenersIfChanged(VerisureSession.java:572) ~[?:?] at org.openhab.binding.verisure.internal.VerisureSession.updateAlarmStatus(VerisureSession.java:635) ~[?:?] at org.openhab.binding.verisure.internal.VerisureSession.updateStatus(VerisureSession.java:588) ~[?:?] at org.openhab.binding.verisure.internal.VerisureSession.refresh(VerisureSession.java:130) ~[?:?] at org.openhab.binding.verisure.internal.handler.VerisureBridgeHandler.refreshAndUpdateStatus(VerisureBridgeHandler.java:168) ~[?:?] at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) ~[?:?] at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:305) ~[?:?] at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:305) ~[?:?] at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) [?:?] at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) [?:?] at java.lang.Thread.run(Thread.java:840) [?:?]
NPE in VerisureAlarmsDTO$ArmState:
2024-06-12 22:43:45.507 [WARN ] [mmon.WrappedScheduledExecutorService] - Scheduled runnable ended with an exception: java.lang.NullPointerException: Cannot invoke "java.util.List.equals(Object)" because "this.errorCodes" is null at org.openhab.binding.verisure.internal.dto.VerisureAlarmsDTO$ArmState.equals(VerisureAlarmsDTO.java:169) ~[?:?] at org.openhab.binding.verisure.internal.dto.VerisureBaseThingDTO$Installation.equals(VerisureBaseThingDTO.java:360) ~[?:?] at org.openhab.binding.verisure.internal.dto.VerisureBaseThingDTO$Data.equals(VerisureBaseThingDTO.java:232) ~[?:?] at org.openhab.binding.verisure.internal.dto.VerisureBaseThingDTO.equals(VerisureBaseThingDTO.java:150) ~[?:?] at org.openhab.binding.verisure.internal.dto.VerisureAlarmsDTO.equals(VerisureAlarmsDTO.java:49) ~[?:?] at org.openhab.binding.verisure.internal.VerisureSession.notifyListenersIfChanged(VerisureSession.java:572) ~[?:?] at org.openhab.binding.verisure.internal.VerisureSession.updateAlarmStatus(VerisureSession.java:635) ~[?:?] at org.openhab.binding.verisure.internal.VerisureSession.updateStatus(VerisureSession.java:588) ~[?:?] at org.openhab.binding.verisure.internal.VerisureSession.refresh(VerisureSession.java:130) ~[?:?] at org.openhab.binding.verisure.internal.handler.VerisureBridgeHandler.refreshAndUpdateStatus(VerisureBridgeHandler.java:168) ~[?:?] at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) ~[?:?] at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:305) ~[?:?] at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:305) ~[?:?] at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) [?:?] at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) [?:?] at java.lang.Thread.run(Thread.java:840) [?:?]
Expected Behavior
Should handle a null value here.
Current Behavior
Binding does not update values correctly.
Possible Solution
Handle that this.errorCodes can be null.
Your Environment
Running on openHAB 4.1.1.