UNPKG

ih-black-lion

Version:

State handler for Arus projects

39 lines (34 loc) 1.65 kB
import Connector from './Connector'; const URLS = { tryURL: __CHANGE_READ_STATUS_URL__, catchURL: process.env.CHANGE_READ_STATUS_URL, }; export default class ReadStatusConnector extends Connector { constructor(requestMethod, requestParams, id, status, numDaysPast, Model = undefined, extraParam = undefined) { super(requestMethod, requestParams, Model, URLS, extraParam); this.id = id; this.status = status; this.numDaysPast = numDaysPast; this.modifySend(); } checkTypes() { if (typeof this.params !== 'object') { return Promise.reject(new TypeError(`Type of params is ${typeof this.params}. Expected an object\n\tparams = ${this.params}`)); } return true; } modifySend() { if (!this.params.send) { if (typeof this.id !== 'number') { return Promise.reject(new TypeError(`Type of id is ${typeof this.id}. Expected an number\n\tid = ${this.id}`)); } else if (typeof this.status !== 'string') { return Promise.reject(new TypeError(`Type of status is ${typeof this.status}. Expected an string\n\tstatus = ${this.status}`)); } else if (typeof this.numDaysPast !== 'number') { return Promise.reject(new TypeError(`Type of numDaysPast is ${typeof this.numDaysPast}. Expected an number\n\tnumDaysPast = ${this.numDaysPast}`)); } this.params.send = `<SCC_NTF_UPDATE_EVENTS_REQ><NUM_PAST_DAYS>${this.numDaysPast}</NUM_PAST_DAYS><EVENTS><SCC_NTF_EVENT><SCC_NTFEVT_REQ_ID>${this.id}</SCC_NTFEVT_REQ_ID><SCC_NTFEVT_STATUS>${this.status}</SCC_NTFEVT_STATUS></SCC_NTF_EVENT></EVENTS></SCC_NTF_UPDATE_EVENTS_REQ>`; } return true; } }