Skip to content

Commit 3ffc814

Browse files
goekayflorinmandache
authored andcommitted
simple refactor to reduce verbosity
1 parent c7163a6 commit 3ffc814

File tree

3 files changed

+41
-108
lines changed

3 files changed

+41
-108
lines changed

src/main/java/de/rwth/idsg/steve/ocpp/ws/ocpp12/Ocpp12WebSocketEndpoint.java

Lines changed: 13 additions & 34 deletions
Original file line numberDiff line numberDiff line change
@@ -66,40 +66,19 @@ public OcppVersion getVersion() {
6666

6767
@Override
6868
public ResponseType dispatch(RequestType params, String chargeBoxId) {
69-
ResponseType r;
70-
71-
if (params instanceof BootNotificationRequest) {
72-
r = server.bootNotificationWithTransport((BootNotificationRequest) params, chargeBoxId, OcppProtocol.V_12_JSON);
73-
74-
} else if (params instanceof FirmwareStatusNotificationRequest) {
75-
r = server.firmwareStatusNotification((FirmwareStatusNotificationRequest) params, chargeBoxId);
76-
77-
} else if (params instanceof StatusNotificationRequest) {
78-
r = server.statusNotification((StatusNotificationRequest) params, chargeBoxId);
79-
80-
} else if (params instanceof MeterValuesRequest) {
81-
r = server.meterValues((MeterValuesRequest) params, chargeBoxId);
82-
83-
} else if (params instanceof DiagnosticsStatusNotificationRequest) {
84-
r = server.diagnosticsStatusNotification((DiagnosticsStatusNotificationRequest) params, chargeBoxId);
85-
86-
} else if (params instanceof StartTransactionRequest) {
87-
r = server.startTransaction((StartTransactionRequest) params, chargeBoxId);
88-
89-
} else if (params instanceof StopTransactionRequest) {
90-
r = server.stopTransaction((StopTransactionRequest) params, chargeBoxId);
91-
92-
} else if (params instanceof HeartbeatRequest) {
93-
r = server.heartbeat((HeartbeatRequest) params, chargeBoxId);
94-
95-
} else if (params instanceof AuthorizeRequest) {
96-
r = server.authorize((AuthorizeRequest) params, chargeBoxId);
97-
98-
} else {
99-
throw new IllegalArgumentException("Unexpected RequestType, dispatch method not found");
100-
}
101-
102-
return r;
69+
return switch (params) {
70+
case BootNotificationRequest request -> server.bootNotificationWithTransport(request, chargeBoxId, OcppProtocol.V_12_JSON);
71+
case FirmwareStatusNotificationRequest request -> server.firmwareStatusNotification(request, chargeBoxId);
72+
case StatusNotificationRequest request -> server.statusNotification(request, chargeBoxId);
73+
case MeterValuesRequest request -> server.meterValues(request, chargeBoxId);
74+
case DiagnosticsStatusNotificationRequest request -> server.diagnosticsStatusNotification(request, chargeBoxId);
75+
case StartTransactionRequest request -> server.startTransaction(request, chargeBoxId);
76+
case StopTransactionRequest request -> server.stopTransaction(request, chargeBoxId);
77+
case HeartbeatRequest request -> server.heartbeat(request, chargeBoxId);
78+
case AuthorizeRequest request -> server.authorize(request, chargeBoxId);
79+
case null, default ->
80+
throw new IllegalArgumentException("Unexpected RequestType, dispatch method not found");
81+
};
10382
}
10483

10584
}

src/main/java/de/rwth/idsg/steve/ocpp/ws/ocpp15/Ocpp15WebSocketEndpoint.java

Lines changed: 14 additions & 37 deletions
Original file line numberDiff line numberDiff line change
@@ -67,42 +67,19 @@ public OcppVersion getVersion() {
6767

6868
@Override
6969
public ResponseType dispatch(RequestType params, String chargeBoxId) {
70-
ResponseType r;
71-
72-
if (params instanceof BootNotificationRequest) {
73-
r = server.bootNotificationWithTransport((BootNotificationRequest) params, chargeBoxId, OcppProtocol.V_15_JSON);
74-
75-
} else if (params instanceof FirmwareStatusNotificationRequest) {
76-
r = server.firmwareStatusNotification((FirmwareStatusNotificationRequest) params, chargeBoxId);
77-
78-
} else if (params instanceof StatusNotificationRequest) {
79-
r = server.statusNotification((StatusNotificationRequest) params, chargeBoxId);
80-
81-
} else if (params instanceof MeterValuesRequest) {
82-
r = server.meterValues((MeterValuesRequest) params, chargeBoxId);
83-
84-
} else if (params instanceof DiagnosticsStatusNotificationRequest) {
85-
r = server.diagnosticsStatusNotification((DiagnosticsStatusNotificationRequest) params, chargeBoxId);
86-
87-
} else if (params instanceof StartTransactionRequest) {
88-
r = server.startTransaction((StartTransactionRequest) params, chargeBoxId);
89-
90-
} else if (params instanceof StopTransactionRequest) {
91-
r = server.stopTransaction((StopTransactionRequest) params, chargeBoxId);
92-
93-
} else if (params instanceof HeartbeatRequest) {
94-
r = server.heartbeat((HeartbeatRequest) params, chargeBoxId);
95-
96-
} else if (params instanceof AuthorizeRequest) {
97-
r = server.authorize((AuthorizeRequest) params, chargeBoxId);
98-
99-
} else if (params instanceof DataTransferRequest) {
100-
r = server.dataTransfer((DataTransferRequest) params, chargeBoxId);
101-
102-
} else {
103-
throw new IllegalArgumentException("Unexpected RequestType, dispatch method not found");
104-
}
105-
106-
return r;
70+
return switch (params) {
71+
case BootNotificationRequest request -> server.bootNotificationWithTransport(request, chargeBoxId, OcppProtocol.V_15_JSON);
72+
case FirmwareStatusNotificationRequest request -> server.firmwareStatusNotification(request, chargeBoxId);
73+
case StatusNotificationRequest request -> server.statusNotification(request, chargeBoxId);
74+
case MeterValuesRequest request -> server.meterValues(request, chargeBoxId);
75+
case DiagnosticsStatusNotificationRequest request -> server.diagnosticsStatusNotification(request, chargeBoxId);
76+
case StartTransactionRequest request -> server.startTransaction(request, chargeBoxId);
77+
case StopTransactionRequest request -> server.stopTransaction(request, chargeBoxId);
78+
case HeartbeatRequest request -> server.heartbeat(request, chargeBoxId);
79+
case AuthorizeRequest request -> server.authorize(request, chargeBoxId);
80+
case DataTransferRequest request -> server.dataTransfer(request, chargeBoxId);
81+
case null, default ->
82+
throw new IllegalArgumentException("Unexpected RequestType, dispatch method not found");
83+
};
10784
}
10885
}

src/main/java/de/rwth/idsg/steve/ocpp/ws/ocpp16/Ocpp16WebSocketEndpoint.java

Lines changed: 14 additions & 37 deletions
Original file line numberDiff line numberDiff line change
@@ -67,42 +67,19 @@ public OcppVersion getVersion() {
6767

6868
@Override
6969
public ResponseType dispatch(RequestType params, String chargeBoxId) {
70-
ResponseType r;
71-
72-
if (params instanceof BootNotificationRequest) {
73-
r = server.bootNotificationWithTransport((BootNotificationRequest) params, chargeBoxId, OcppProtocol.V_16_JSON);
74-
75-
} else if (params instanceof FirmwareStatusNotificationRequest) {
76-
r = server.firmwareStatusNotification((FirmwareStatusNotificationRequest) params, chargeBoxId);
77-
78-
} else if (params instanceof StatusNotificationRequest) {
79-
r = server.statusNotification((StatusNotificationRequest) params, chargeBoxId);
80-
81-
} else if (params instanceof MeterValuesRequest) {
82-
r = server.meterValues((MeterValuesRequest) params, chargeBoxId);
83-
84-
} else if (params instanceof DiagnosticsStatusNotificationRequest) {
85-
r = server.diagnosticsStatusNotification((DiagnosticsStatusNotificationRequest) params, chargeBoxId);
86-
87-
} else if (params instanceof StartTransactionRequest) {
88-
r = server.startTransaction((StartTransactionRequest) params, chargeBoxId);
89-
90-
} else if (params instanceof StopTransactionRequest) {
91-
r = server.stopTransaction((StopTransactionRequest) params, chargeBoxId);
92-
93-
} else if (params instanceof HeartbeatRequest) {
94-
r = server.heartbeat((HeartbeatRequest) params, chargeBoxId);
95-
96-
} else if (params instanceof AuthorizeRequest) {
97-
r = server.authorize((AuthorizeRequest) params, chargeBoxId);
98-
99-
} else if (params instanceof DataTransferRequest) {
100-
r = server.dataTransfer((DataTransferRequest) params, chargeBoxId);
101-
102-
} else {
103-
throw new IllegalArgumentException("Unexpected RequestType, dispatch method not found");
104-
}
105-
106-
return r;
70+
return switch (params) {
71+
case BootNotificationRequest request -> server.bootNotificationWithTransport(request, chargeBoxId, OcppProtocol.V_16_JSON);
72+
case FirmwareStatusNotificationRequest request -> server.firmwareStatusNotification(request, chargeBoxId);
73+
case StatusNotificationRequest request -> server.statusNotification(request, chargeBoxId);
74+
case MeterValuesRequest request -> server.meterValues(request, chargeBoxId);
75+
case DiagnosticsStatusNotificationRequest request -> server.diagnosticsStatusNotification(request, chargeBoxId);
76+
case StartTransactionRequest request -> server.startTransaction(request, chargeBoxId);
77+
case StopTransactionRequest request -> server.stopTransaction(request, chargeBoxId);
78+
case HeartbeatRequest request -> server.heartbeat(request, chargeBoxId);
79+
case AuthorizeRequest request -> server.authorize(request, chargeBoxId);
80+
case DataTransferRequest request -> server.dataTransfer(request, chargeBoxId);
81+
case null, default ->
82+
throw new IllegalArgumentException("Unexpected RequestType, dispatch method not found");
83+
};
10784
}
10885
}

0 commit comments

Comments
 (0)