Skip to content

Commit 665c2ea

Browse files
authored
Merge pull request #8 from emilm/identifier-feature
Added identifier on newSession()
2 parents 8ab84a2 + 8b9f71a commit 665c2ea

File tree

10 files changed

+21
-16
lines changed

10 files changed

+21
-16
lines changed

ocpp-common/src/main/java/eu/chargetime/ocpp/ListenerEvents.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,5 +25,5 @@ of this software and associated documentation files (the "Software"), to deal
2525
*/
2626

2727
public interface ListenerEvents {
28-
void newSession(Session session);
28+
void newSession(Session session, String identifier);
2929
}

ocpp-common/src/main/java/eu/chargetime/ocpp/Server.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -62,7 +62,7 @@ public Server(Listener listener) {
6262
*/
6363
public void open(String hostname, int port, ServerEvents serverEvents) {
6464

65-
listener.open(hostname, port, session -> {
65+
listener.open(hostname, port, (session, identifier) -> {
6666
session.accept(new SessionEvents() {
6767
@Override
6868
public Feature findFeatureByAction(String action) {
@@ -104,7 +104,7 @@ public void handleConnectionOpened() {
104104
}
105105
});
106106
sessions.put(UUID.randomUUID(), session);
107-
serverEvents.newSession(sessions.inverse().get(session));
107+
serverEvents.newSession(sessions.inverse().get(session), identifier);
108108
});
109109
}
110110

ocpp-common/src/main/java/eu/chargetime/ocpp/ServerEvents.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ of this software and associated documentation files (the "Software"), to deal
2727
import java.util.UUID;
2828

2929
public interface ServerEvents {
30-
void newSession(UUID sessionIndex);
30+
void newSession(UUID sessionIndex, String identifier);
3131

3232
void lostSession(UUID sessionIndex);
3333
}

ocpp-common/src/test/java/eu/chargetime/ocpp/test/ClientTest.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -49,6 +49,7 @@ of this software and associated documentation files (the "Software"), to deal
4949
public class ClientTest extends TestUtilities {
5050
private Client client;
5151
private SessionEvents eventHandler;
52+
private static final String IDENTIFIER = "test";
5253

5354
@Mock
5455
private Session session = mock(Session.class);

ocpp-common/src/test/java/eu/chargetime/ocpp/test/ServerTest.java

Lines changed: 8 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -42,6 +42,7 @@ of this software and associated documentation files (the "Software"), to deal
4242
public class ServerTest extends TestUtilities {
4343

4444
private static final String LOCALHOST = "localhost";
45+
private static final String IDENTIFIER = "test";
4546
private static final int PORT = 42;
4647

4748
private Server server;
@@ -71,7 +72,7 @@ public void setup() {
7172
when(feature.getAction()).thenReturn(null);
7273
doAnswer(invocation -> listenerEvents = invocation.getArgumentAt(2, ListenerEvents.class)).when(listener).open(anyString(), anyInt(), any());
7374
doAnswer(invocation -> sessionEvents = invocation.getArgumentAt(0, SessionEvents.class)).when(session).accept(any());
74-
doAnswer(invocation -> sessionIndex = invocation.getArgumentAt(0, UUID.class)).when(serverEvents).newSession(any());
75+
doAnswer(invocation -> sessionIndex = invocation.getArgumentAt(0, UUID.class)).when(serverEvents).newSession(any(), anyString());
7576

7677
server = new Server(listener) {
7778
};
@@ -86,7 +87,7 @@ public void newSession_serverIsListening_sessionIsAccepted() {
8687
server.open(LOCALHOST, PORT, serverEvents);
8788

8889
// When
89-
listenerEvents.newSession(session);
90+
listenerEvents.newSession(session, IDENTIFIER);
9091

9192
// Then
9293
verify(session, times(1)).accept(any());
@@ -98,10 +99,10 @@ public void newSession_serverIsListening_callbackWithIndex0() {
9899
server.open(LOCALHOST, PORT, serverEvents);
99100

100101
// When
101-
listenerEvents.newSession(session);
102+
listenerEvents.newSession(session, IDENTIFIER);
102103

103104
// Then
104-
verify(serverEvents, times(1)).newSession(any(UUID.class));
105+
verify(serverEvents, times(1)).newSession(any(UUID.class), eq(IDENTIFIER));
105106
}
106107

107108
@Test
@@ -111,7 +112,7 @@ public void send_aMessage_isCommunicated() throws Exception {
111112

112113
when(session.sendRequest(any(), any())).thenReturn(someUniqueId);
113114
server.open(LOCALHOST, PORT, serverEvents);
114-
listenerEvents.newSession(session);
115+
listenerEvents.newSession(session, IDENTIFIER);
115116

116117
// When
117118
server.send(sessionIndex, request);
@@ -124,7 +125,7 @@ public void send_aMessage_isCommunicated() throws Exception {
124125
public void handleRequest_callsFeatureHandleRequest() {
125126
// Given
126127
server.open(LOCALHOST, PORT, serverEvents);
127-
listenerEvents.newSession(session);
128+
listenerEvents.newSession(session, IDENTIFIER);
128129

129130
// When
130131
sessionEvents.handleRequest(request);
@@ -137,7 +138,7 @@ public void handleRequest_callsFeatureHandleRequest() {
137138
public void send_aMessage_validatesMessage() throws Exception {
138139
// Given
139140
server.open(LOCALHOST, PORT, serverEvents);
140-
listenerEvents.newSession(session);
141+
listenerEvents.newSession(session, IDENTIFIER);
141142

142143
// When
143144
server.send(sessionIndex, request);

ocpp-v1_6-test/src/main/java/eu/chargetime/ocpp/test/FakeCentralSystem.java

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -49,6 +49,7 @@ public class FakeCentralSystem
4949

5050
private static FakeCentralSystem instance;
5151
private boolean isRigged;
52+
private String currentIdentifier;
5253

5354
public static FakeCentralSystem getInstance () {
5455
if (instance == null)
@@ -187,13 +188,15 @@ public StopTransactionConfirmation handleStopTransactionRequest(UUID sessionInde
187188

188189
server.open("localhost", port, new ServerEvents() {
189190
@Override
190-
public void newSession(UUID sessionIndex) {
191+
public void newSession(UUID sessionIndex, String identifier) {
191192
currentSessionIndex = sessionIndex;
193+
currentIdentifier = identifier;
192194
}
193195

194196
@Override
195197
public void lostSession(UUID identity) {
196198
currentSessionIndex = null;
199+
currentIdentifier = null;
197200
// clear
198201
receivedConfirmation = null;
199202
receivedRequest = null;

ocpp-v1_6-test/src/main/java/eu/chargetime/ocpp/test/FakeChargePoint.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -119,7 +119,7 @@ public UnlockConnectorConfirmation handleUnlockConnectorRequest(UnlockConnectorR
119119

120120
switch (type) {
121121
case JSON:
122-
client = new JSONClient(core);
122+
client = new JSONClient(core, "test");
123123
url = "ws://localhost:8887";
124124
break;
125125
case SOAP:

ocpp-v1_6/src/main/java/eu/chargetime/ocpp/JSONClient.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@ public class JSONClient extends Client {
3838
*
3939
* @param coreProfile implementation of the core feature profile.
4040
*/
41-
public JSONClient(ClientCoreProfile coreProfile) {
41+
public JSONClient(ClientCoreProfile coreProfile, String identity) {
4242
super(new Session(new JSONCommunicator(new WebSocketTransmitter()), new Queue()));
4343
addFeatureProfile(coreProfile);
4444
}

ocpp-v1_6/src/main/java/eu/chargetime/ocpp/WebServiceListener.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -78,7 +78,7 @@ public SOAPMessage incomingRequest(SOAPMessage message) {
7878
WebServiceReceiver webServiceReceiver = new WebServiceReceiver(toUrl);
7979
SOAPCommunicator communicator = new SOAPCommunicator(identity, fromUrl, webServiceReceiver);
8080
communicator.setToUrl(toUrl);
81-
events.newSession(new Session(communicator, new Queue()));
81+
events.newSession(new Session(communicator, new Queue()), identity);
8282
chargeBoxes.put(identity, webServiceReceiver);
8383
}
8484

ocpp-v1_6/src/main/java/eu/chargetime/ocpp/WebSocketListener.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -49,7 +49,7 @@ public void open(String hostname, int port, ListenerEvents handler) {
4949
public void onOpen(WebSocket webSocket, ClientHandshake clientHandshake) {
5050
WebSocketReceiver receiver = new WebSocketReceiver(message -> webSocket.send(message));
5151
sockets.put(webSocket, receiver);
52-
handler.newSession(new Session(new JSONCommunicator(receiver), new Queue()));
52+
handler.newSession(new Session(new JSONCommunicator(receiver), new Queue()), clientHandshake.getResourceDescriptor());
5353
}
5454

5555
@Override

0 commit comments

Comments
 (0)