UNPKG

@omegabigdata/honoplay-api-helper-node

Version:
149 lines (134 loc) 3.67 kB
"use strict"; const { axiosClient } = require("./Helpers"); const getSessionByClassroomId = ( classroomId, successCallback, errorCallback ) => { if (classroomId == null || classroomId == undefined) { if (errorCallback) { errorCallback("Missing Parameters"); return; } throw new Error("Missing Parameters"); } if (classroomId <= 0) { throw new Error("Value must be greater than zero"); } let uri = `classroom/${classroomId}/session`; axiosClient .get(uri) .then(success => { successCallback(success); }) .catch(error => { errorCallback(error); }); }; /** * @param {object} sessionModel - Session Model for Post * @param {!number} sessionModel.gameId - Session Model game id * @param {!number} sessionModel.classroomId - Session Model classroom id * @param {!string} sessionModel.name - Session Model name * @param {function} successCallback * @param {function} errorCallback */ const postSession = (sessionModel, successCallback, errorCallback) => { if (!sessionModel) { if (errorCallback) { errorCallback("Missing Parameters"); return; } throw new Error("Missing Parameters"); } const uri = `Session`; axiosClient .post(uri, sessionModel) .then(success => successCallback(success)) .catch(error => errorCallback(error)); }; /** * @param {object} sessionModel - Session Model for Update * @param {!number} sessionModel.id - Session Model id * @param {!number} sessionModel.gameId - Session Model game id * @param {!number} sessionModel.classroomId - Session Model classroom id * @param {!string} sessionModel.name - Session Model name * @param {function} successCallback * @param {function} errorCallback */ const putSession = (sessionModel, successCallback, errorCallback) => { if (!sessionModel) { if (errorCallback) { errorCallback("Missing Parameters"); return; } throw new Error("Missing Parameters"); } const uri = `Session`; axiosClient .put(uri, sessionModel) .then(success => successCallback(success)) .catch(error => errorCallback(error)); }; /** * @param {!number} skip * @param {!number} take * @param {function} successCallback * @param {function} errorCallback */ const getSessionList = (skip, take, successCallback, errorCallback) => { if (skip < 0 || take < 0) { throw new Error("Values must be positive"); } let uri = `Session`; if (skip) { uri += `?Skip=${skip}`; } if (skip && take) { uri += `&Take=${take}`; } if (!skip && take) { uri += `?Take=${take}`; } axiosClient .get(uri) .then(success => { successCallback(success); }) .catch(error => { errorCallback(error); }); }; /** * @param {!number} sessionId - Session Id * @param {function} successCallback * @param {function} errorCallback */ const getSession = (sessionId, successCallback, errorCallback) => { if (sessionId == null || sessionId == undefined) { if (errorCallback) { errorCallback("Missing Parameters"); return; } throw new Error("Missing Parameters"); } if (sessionId <= 0) { throw new Error("Value must be greater than zero"); } let uri = `Session/${sessionId}`; axiosClient .get(uri) .then(success => { successCallback(success); }) .catch(error => { errorCallback(error); }); }; module.exports = { getSessionList, putSession, postSession, getSession, getSessionByClassroomId };