import JourneyClientInterface from './JourneyClientInterface'; import BaseEntityClient from '../../common/clients/BaseEntityClient'; import HTTPRequest from '../../Request/entity/HTTPRequest'; import RequestPromise from '../../common/DTO/RequestPromise'; export default class JourneyClient extends BaseEntityClient implements JourneyClientInterface { private RESET_PATH = `vehicles/:id/reset-trip-state`; private NOTIFY_PATH = `/journeys/:id/notify`; private UPDATE_VEHICLES = `/journeys/vehicles`; getBasepath() { return '/journeys'; } getResetPath(id: string): string { return this.RESET_PATH.replace(':id', id); } reset(httpRequest: HTTPRequest): RequestPromise { httpRequest.url = this.getResetPath(httpRequest.data.id); return super.post(httpRequest); } getSendNotificationURL(id) { return this.NOTIFY_PATH.replace(':id', id); } sendNotification(httpRequest: HTTPRequest): RequestPromise { httpRequest.url = this.getSendNotificationURL(httpRequest.data.journey_id); return super.post(httpRequest); } updateVehicles(httpRequest: HTTPRequest): RequestPromise { httpRequest.url = this.UPDATE_VEHICLES; return super.patch(httpRequest); } }