repositories
/
e-mobility-charging-stations-simulator.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
docs: add FIXME
[e-mobility-charging-stations-simulator.git]
/
src
/
charging-station
/
ocpp
/
2.0
/
OCPP20RequestService.ts
diff --git
a/src/charging-station/ocpp/2.0/OCPP20RequestService.ts
b/src/charging-station/ocpp/2.0/OCPP20RequestService.ts
index f9d0b75855349654c2010c7ad6653af87fe2bf83..6e857089d96a567c99e0599de561dd56eaccb990 100644
(file)
--- a/
src/charging-station/ocpp/2.0/OCPP20RequestService.ts
+++ b/
src/charging-station/ocpp/2.0/OCPP20RequestService.ts
@@
-2,6
+2,8
@@
import type { JSONSchemaType } from 'ajv';
import type { JSONSchemaType } from 'ajv';
+import { OCPP20Constants } from './OCPP20Constants';
+import { OCPP20ServiceUtils } from './OCPP20ServiceUtils';
import type { ChargingStation } from '../../../charging-station';
import { OCPPError } from '../../../exception';
import {
import type { ChargingStation } from '../../../charging-station';
import { OCPPError } from '../../../exception';
import {
@@
-16,12
+18,8
@@
import {
type RequestParams,
} from '../../../types';
import { Utils } from '../../../utils';
type RequestParams,
} from '../../../types';
import { Utils } from '../../../utils';
-import {
- OCPP20ServiceUtils,
- OCPPConstants,
- OCPPRequestService,
- type OCPPResponseService,
-} from '../internal';
+import { OCPPRequestService } from '../OCPPRequestService';
+import type { OCPPResponseService } from '../OCPPResponseService';
const moduleName = 'OCPP20RequestService';
const moduleName = 'OCPP20RequestService';
@@
-37,7
+35,7
@@
export class OCPP20RequestService extends OCPPRequestService {
[
OCPP20RequestCommand.BOOT_NOTIFICATION,
OCPP20ServiceUtils.parseJsonSchemaFile<OCPP20BootNotificationRequest>(
[
OCPP20RequestCommand.BOOT_NOTIFICATION,
OCPP20ServiceUtils.parseJsonSchemaFile<OCPP20BootNotificationRequest>(
- '
../../../
assets/json-schemas/ocpp/2.0/BootNotificationRequest.json',
+ 'assets/json-schemas/ocpp/2.0/BootNotificationRequest.json',
moduleName,
'constructor'
),
moduleName,
'constructor'
),
@@
-45,7
+43,7
@@
export class OCPP20RequestService extends OCPPRequestService {
[
OCPP20RequestCommand.HEARTBEAT,
OCPP20ServiceUtils.parseJsonSchemaFile<OCPP20HeartbeatRequest>(
[
OCPP20RequestCommand.HEARTBEAT,
OCPP20ServiceUtils.parseJsonSchemaFile<OCPP20HeartbeatRequest>(
- '
../../../
assets/json-schemas/ocpp/2.0/HeartbeatRequest.json',
+ 'assets/json-schemas/ocpp/2.0/HeartbeatRequest.json',
moduleName,
'constructor'
),
moduleName,
'constructor'
),
@@
-53,13
+51,17
@@
export class OCPP20RequestService extends OCPPRequestService {
[
OCPP20RequestCommand.STATUS_NOTIFICATION,
OCPP20ServiceUtils.parseJsonSchemaFile<OCPP20StatusNotificationRequest>(
[
OCPP20RequestCommand.STATUS_NOTIFICATION,
OCPP20ServiceUtils.parseJsonSchemaFile<OCPP20StatusNotificationRequest>(
- '
../../../
assets/json-schemas/ocpp/2.0/StatusNotificationRequest.json',
+ 'assets/json-schemas/ocpp/2.0/StatusNotificationRequest.json',
moduleName,
'constructor'
),
],
]);
moduleName,
'constructor'
),
],
]);
- this.buildRequestPayload.bind(this);
+ this.buildRequestPayload = this.buildRequestPayload.bind(this) as <Request extends JsonType>(
+ chargingStation: ChargingStation,
+ commandName: OCPP20RequestCommand,
+ commandParams?: JsonType
+ ) => Request;
}
public async requestHandler<RequestType extends JsonType, ResponseType extends JsonType>(
}
public async requestHandler<RequestType extends JsonType, ResponseType extends JsonType>(
@@
-68,6
+70,7
@@
export class OCPP20RequestService extends OCPPRequestService {
commandParams?: JsonType,
params?: RequestParams
): Promise<ResponseType> {
commandParams?: JsonType,
params?: RequestParams
): Promise<ResponseType> {
+ // FIXME?: add sanity checks on charging station availability, connector availability, connector status, etc.
if (OCPP20ServiceUtils.isRequestCommandSupported(chargingStation, commandName) === true) {
return (await this.sendMessage(
chargingStation,
if (OCPP20ServiceUtils.isRequestCommandSupported(chargingStation, commandName) === true) {
return (await this.sendMessage(
chargingStation,
@@
-96,7
+99,7
@@
export class OCPP20RequestService extends OCPPRequestService {
case OCPP20RequestCommand.BOOT_NOTIFICATION:
return commandParams as unknown as Request;
case OCPP20RequestCommand.HEARTBEAT:
case OCPP20RequestCommand.BOOT_NOTIFICATION:
return commandParams as unknown as Request;
case OCPP20RequestCommand.HEARTBEAT:
- return OCPPConstants.OCPP_RESPONSE_EMPTY as unknown as Request;
+ return OCPP
20
Constants.OCPP_RESPONSE_EMPTY as unknown as Request;
case OCPP20RequestCommand.STATUS_NOTIFICATION:
return {
timestamp: new Date(),
case OCPP20RequestCommand.STATUS_NOTIFICATION:
return {
timestamp: new Date(),