diff --git a/OCPP-J/src/main/java/eu/chargetime/ocpp/WebSocketReceiver.java b/OCPP-J/src/main/java/eu/chargetime/ocpp/WebSocketReceiver.java index 73176e57c..f3eb2ca26 100644 --- a/OCPP-J/src/main/java/eu/chargetime/ocpp/WebSocketReceiver.java +++ b/OCPP-J/src/main/java/eu/chargetime/ocpp/WebSocketReceiver.java @@ -5,7 +5,7 @@ MIT License Copyright (C) 2016-2018 Thomas Volden - + Copyright (C) 2022 Emil Melar Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights @@ -37,7 +37,7 @@ public WebSocketReceiver(WebSocketReceiverEvents handler) { @Override public void disconnect() { receiverEvents.close(); - handler.disconnected(); + handler.disconnected(0, "disconnect() method called"); } void relay(String message) { diff --git a/OCPP-J/src/main/java/eu/chargetime/ocpp/WebSocketTransmitter.java b/OCPP-J/src/main/java/eu/chargetime/ocpp/WebSocketTransmitter.java index 4689ef115..cf6d36623 100644 --- a/OCPP-J/src/main/java/eu/chargetime/ocpp/WebSocketTransmitter.java +++ b/OCPP-J/src/main/java/eu/chargetime/ocpp/WebSocketTransmitter.java @@ -6,6 +6,7 @@ MIT License Copyright (C) 2016-2018 Thomas Volden + Copyright (C) 2022 Emil Melar Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal @@ -105,7 +106,7 @@ public void onClose(int code, String reason, boolean remote) { logger.debug( "On connection close (code: {}, reason: {}, remote: {})", code, reason, remote); - events.disconnected(); + events.disconnected(code, reason); } @Override diff --git a/ocpp-common/src/main/java/eu/chargetime/ocpp/Client.java b/ocpp-common/src/main/java/eu/chargetime/ocpp/Client.java index f9f4a0870..647500221 100644 --- a/ocpp-common/src/main/java/eu/chargetime/ocpp/Client.java +++ b/ocpp-common/src/main/java/eu/chargetime/ocpp/Client.java @@ -6,6 +6,7 @@ MIT License Copyright (C) 2016-2018 Thomas Volden +Copyright (C) 2022 Emil Melar Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal @@ -113,8 +114,8 @@ public void handleError( } @Override - public void handleConnectionClosed() { - if (events != null) events.connectionClosed(); + public void handleConnectionClosed(int code, String reason) { + if (events != null) events.connectionClosed(code, reason); } @Override diff --git a/ocpp-common/src/main/java/eu/chargetime/ocpp/ClientEvents.java b/ocpp-common/src/main/java/eu/chargetime/ocpp/ClientEvents.java index 4f3c15ccc..097f14424 100644 --- a/ocpp-common/src/main/java/eu/chargetime/ocpp/ClientEvents.java +++ b/ocpp-common/src/main/java/eu/chargetime/ocpp/ClientEvents.java @@ -6,7 +6,7 @@ MIT License -Copyright (C) 2017 Emil Christopher Solli Melar +Copyright (C) 2022 Emil Melar Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal @@ -30,5 +30,5 @@ of this software and associated documentation files (the "Software"), to deal public interface ClientEvents { void connectionOpened(); - void connectionClosed(); + void connectionClosed(int code, String reason); } diff --git a/ocpp-common/src/main/java/eu/chargetime/ocpp/Communicator.java b/ocpp-common/src/main/java/eu/chargetime/ocpp/Communicator.java index ed819fdc2..fd1f22c2f 100644 --- a/ocpp-common/src/main/java/eu/chargetime/ocpp/Communicator.java +++ b/ocpp-common/src/main/java/eu/chargetime/ocpp/Communicator.java @@ -6,6 +6,7 @@ MIT License Copyright (C) 2016-2018 Thomas Volden +Copyright (C) 2022 Emil Melar Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal @@ -292,8 +293,8 @@ public void receivedMessage(Object input) { } @Override - public void disconnected() { - events.onDisconnected(); + public void disconnected(int code, String reason) { + events.onDisconnected(code, reason); } } diff --git a/ocpp-common/src/main/java/eu/chargetime/ocpp/CommunicatorEvents.java b/ocpp-common/src/main/java/eu/chargetime/ocpp/CommunicatorEvents.java index 3c3572ad0..c712f0da6 100644 --- a/ocpp-common/src/main/java/eu/chargetime/ocpp/CommunicatorEvents.java +++ b/ocpp-common/src/main/java/eu/chargetime/ocpp/CommunicatorEvents.java @@ -7,6 +7,7 @@ MIT License Copyright (C) 2016-2018 Thomas Volden +Copyright (C) 2022 Emil Melar Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal @@ -66,8 +67,10 @@ public interface CommunicatorEvents { */ void onError(String id, String errorCode, String errorDescription, Object payload); - /** The connection was disconnected. */ - void onDisconnected(); + /** The connection was disconnected. + * @param code + * @param reason*/ + void onDisconnected(int code, String reason); /** A connection was established. */ void onConnected(); diff --git a/ocpp-common/src/main/java/eu/chargetime/ocpp/RadioEvents.java b/ocpp-common/src/main/java/eu/chargetime/ocpp/RadioEvents.java index 26f48fc53..0620568b3 100644 --- a/ocpp-common/src/main/java/eu/chargetime/ocpp/RadioEvents.java +++ b/ocpp-common/src/main/java/eu/chargetime/ocpp/RadioEvents.java @@ -7,6 +7,7 @@ MIT License Copyright (C) 2016-2018 Thomas Volden +Copyright (C) 2022 Emil Melar Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal @@ -39,6 +40,8 @@ public interface RadioEvents { */ void receivedMessage(Object message); - /** Disconnected from node. */ - void disconnected(); + /** Disconnected from node. + * @param code + * @param reason*/ + void disconnected(int code, String reason); } diff --git a/ocpp-common/src/main/java/eu/chargetime/ocpp/Server.java b/ocpp-common/src/main/java/eu/chargetime/ocpp/Server.java index 5478e9d8b..6e66c4eb6 100644 --- a/ocpp-common/src/main/java/eu/chargetime/ocpp/Server.java +++ b/ocpp-common/src/main/java/eu/chargetime/ocpp/Server.java @@ -5,6 +5,7 @@ MIT License Copyright (C) 2016-2018 Thomas Volden + Copyright (C) 2022 Emil Melar Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal @@ -143,7 +144,7 @@ public void handleError( } @Override - public void handleConnectionClosed() { + public void handleConnectionClosed(int code, String reason) { Optional sessionIdOptional = getSessionID(session); if (sessionIdOptional.isPresent()) { serverEvents.lostSession(sessionIdOptional.get()); diff --git a/ocpp-common/src/main/java/eu/chargetime/ocpp/Session.java b/ocpp-common/src/main/java/eu/chargetime/ocpp/Session.java index f08ee31f2..515bf8cfb 100644 --- a/ocpp-common/src/main/java/eu/chargetime/ocpp/Session.java +++ b/ocpp-common/src/main/java/eu/chargetime/ocpp/Session.java @@ -6,6 +6,7 @@ MIT License Copyright (C) 2016-2018 Thomas Volden +Copyright (C) 2022 Emil Melar Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal @@ -221,8 +222,8 @@ public void onError(String id, String errorCode, String errorDescription, Object } @Override - public void onDisconnected() { - events.handleConnectionClosed(); + public void onDisconnected(int code, String reason) { + events.handleConnectionClosed(code, reason); } @Override diff --git a/ocpp-common/src/main/java/eu/chargetime/ocpp/SessionEvents.java b/ocpp-common/src/main/java/eu/chargetime/ocpp/SessionEvents.java index a0b46480b..228b81506 100644 --- a/ocpp-common/src/main/java/eu/chargetime/ocpp/SessionEvents.java +++ b/ocpp-common/src/main/java/eu/chargetime/ocpp/SessionEvents.java @@ -10,6 +10,7 @@ MIT License Copyright (C) 2016-2018 Thomas Volden +Copyright (C) 2022 Emil Melar Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal @@ -59,8 +60,10 @@ public interface SessionEvents { */ void handleError(String uniqueId, String errorCode, String errorDescription, Object payload); - /** Handle a closed connection. */ - void handleConnectionClosed(); + /** Handle a closed connection. + * @param code + * @param reason*/ + void handleConnectionClosed(int code, String reason); /** Handle a opened connection. */ void handleConnectionOpened(); diff --git a/ocpp-common/src/test/java/eu/chargetime/ocpp/test/ClientTest.java b/ocpp-common/src/test/java/eu/chargetime/ocpp/test/ClientTest.java index 7ad11ae3b..ba08587bf 100644 --- a/ocpp-common/src/test/java/eu/chargetime/ocpp/test/ClientTest.java +++ b/ocpp-common/src/test/java/eu/chargetime/ocpp/test/ClientTest.java @@ -6,6 +6,7 @@ MIT License Copyright (C) 2016-2018 Thomas Volden +Copyright (C) 2022 Emil Melar Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal @@ -89,7 +90,7 @@ public void connect_connectionOpenedEvent() { // Then verify(events, times(1)).connectionOpened(); - verify(events, never()).connectionClosed(); + verify(events, never()).connectionClosed(0, null); } @Test @@ -98,10 +99,10 @@ public void connect_connectionClosedEvent() { client.connect(null, events); // When - this.eventHandler.handleConnectionClosed(); + this.eventHandler.handleConnectionClosed(0, null); // Then - verify(events, times(1)).connectionClosed(); + verify(events, times(1)).connectionClosed(0, null); verify(events, never()).connectionOpened(); } diff --git a/ocpp-v1_6-test/src/main/java/eu/chargetime/ocpp/test/FakeChargePoint.java b/ocpp-v1_6-test/src/main/java/eu/chargetime/ocpp/test/FakeChargePoint.java index 7030e9941..ee7622188 100644 --- a/ocpp-v1_6-test/src/main/java/eu/chargetime/ocpp/test/FakeChargePoint.java +++ b/ocpp-v1_6-test/src/main/java/eu/chargetime/ocpp/test/FakeChargePoint.java @@ -9,6 +9,7 @@ Copyright (C) 2016-2018 Thomas Volden Copyright (C) 2019 Kevin Raddatz Copyright (C) 2022 Mathias Oben +Copyright (C) 2022 Emil Melar Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal @@ -307,7 +308,7 @@ public void connect() { public void connectionOpened() {} @Override - public void connectionClosed() {} + public void connectionClosed(int code, String reason) {} }); } catch (Exception ex) { ex.printStackTrace(); diff --git a/ocpp-v1_6/src/main/java/eu/chargetime/ocpp/TimeoutSessionDecorator.java b/ocpp-v1_6/src/main/java/eu/chargetime/ocpp/TimeoutSessionDecorator.java index bf35de50e..402c731c1 100644 --- a/ocpp-v1_6/src/main/java/eu/chargetime/ocpp/TimeoutSessionDecorator.java +++ b/ocpp-v1_6/src/main/java/eu/chargetime/ocpp/TimeoutSessionDecorator.java @@ -5,6 +5,7 @@ MIT License Copyright (C) 2016-2018 Thomas Volden + Copyright (C) 2022 Emil Melar Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal @@ -123,8 +124,8 @@ public void handleError( } @Override - public void handleConnectionClosed() { - eventHandler.handleConnectionClosed(); + public void handleConnectionClosed(int code, String reason) { + eventHandler.handleConnectionClosed(code, reason); stopTimer(); } diff --git a/ocpp-v1_6/src/main/java/eu/chargetime/ocpp/WebServiceReceiver.java b/ocpp-v1_6/src/main/java/eu/chargetime/ocpp/WebServiceReceiver.java index 71f59ceb1..875119b4a 100644 --- a/ocpp-v1_6/src/main/java/eu/chargetime/ocpp/WebServiceReceiver.java +++ b/ocpp-v1_6/src/main/java/eu/chargetime/ocpp/WebServiceReceiver.java @@ -5,6 +5,7 @@ MIT License Copyright (C) 2016-2018 Thomas Volden + Copyright (C) 2022 Emil Melar Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal @@ -57,7 +58,7 @@ public void disconnect() { logger.info("disconnect() failed", e); } } - events.disconnected(); + events.disconnected(0, "disconnect() method called"); receiverEvents.disconnect(); } diff --git a/ocpp-v1_6/src/main/java/eu/chargetime/ocpp/WebServiceTransmitter.java b/ocpp-v1_6/src/main/java/eu/chargetime/ocpp/WebServiceTransmitter.java index a748c386f..90ba71e62 100644 --- a/ocpp-v1_6/src/main/java/eu/chargetime/ocpp/WebServiceTransmitter.java +++ b/ocpp-v1_6/src/main/java/eu/chargetime/ocpp/WebServiceTransmitter.java @@ -13,6 +13,7 @@ MIT License Copyright (C) 2016-2018 Thomas Volden + Copyright (C) 2022 Emil Melar Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal @@ -55,7 +56,7 @@ public void disconnect() { logger.info("disconnect() failed", e); } } - events.disconnected(); + events.disconnected(0, "disconnect() method called"); } @Override diff --git a/ocpp-v1_6/src/test/java/eu/chargetime/ocpp/test/TimeoutSessionTest.java b/ocpp-v1_6/src/test/java/eu/chargetime/ocpp/test/TimeoutSessionTest.java index 9f33fe77d..6180db28d 100644 --- a/ocpp-v1_6/src/test/java/eu/chargetime/ocpp/test/TimeoutSessionTest.java +++ b/ocpp-v1_6/src/test/java/eu/chargetime/ocpp/test/TimeoutSessionTest.java @@ -19,6 +19,7 @@ MIT License Copyright (C) 2016-2018 Thomas Volden + Copyright (C) 2022 Emil Melar Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal @@ -76,7 +77,7 @@ public void handleConnectionClosed_opened_endTimeout() throws Exception { session.open(null, sessionEvents); // When - sessionEvents.handleConnectionClosed(); + sessionEvents.handleConnectionClosed(0, null); // Then verify(timeoutTimer, times(1)).end(); @@ -100,7 +101,7 @@ public void handleConnectionClosed_accepted_endTimeout() throws Exception { session.accept(sessionEvents); // When - sessionEvents.handleConnectionClosed(); + sessionEvents.handleConnectionClosed(0, null); // Then verify(timeoutTimer, times(1)).end(); diff --git a/ocpp-v2_0-test/src/main/java/eu/chargetime/ocpp/test/FakeChargePoint.java b/ocpp-v2_0-test/src/main/java/eu/chargetime/ocpp/test/FakeChargePoint.java index 7aede7c8f..efd1f8c05 100644 --- a/ocpp-v2_0-test/src/main/java/eu/chargetime/ocpp/test/FakeChargePoint.java +++ b/ocpp-v2_0-test/src/main/java/eu/chargetime/ocpp/test/FakeChargePoint.java @@ -5,6 +5,7 @@ MIT License Copyright (C) 2018 Thomas Volden + Copyright (C) 2022 Emil Melar Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal @@ -49,7 +50,7 @@ public void connect() { public void connectionOpened() {} @Override - public void connectionClosed() {} + public void connectionClosed(int code, String reason) {} }); }