@@ -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}
0 commit comments