@zohocrm/nodejs-sdk-2.0
Version:
Node JS SDK for Zoho CRM
183 lines (152 loc) • 4.84 kB
JavaScript
const Constants = require("../../../../../../utils/util/constants").MasterModel;
const SDKException = require("../exception/sdk_exception").MasterModel;
class Module{
layout;
displayLabel;
apiName;
module;
id;
moduleName;
keyModified = new Map();
/**
* The method to get the layout
* @returns {Layout} An instance of Layout
*/
getLayout() {
return this.layout;
}
/**
* The method to set the value to layout
* @param {Layout} layout An instance of Layout
*/
setLayout(layout) {
const Layout = require("../layouts/layout").MasterModel;
if((layout != null) && (!(layout instanceof Layout))) {
throw new SDKException(Constants.DATA_TYPE_ERROR, "KEY: layout EXPECTED TYPE: Layout", null, null);
}
this.layout = layout;
this.keyModified.set("layout", 1);
}
/**
* The method to get the displayLabel
* @returns {String} A String representing the displayLabel
*/
getDisplayLabel() {
return this.displayLabel;
}
/**
* The method to set the value to displayLabel
* @param {String} displayLabel A String representing the displayLabel
*/
setDisplayLabel(displayLabel) {
if((displayLabel != null) && (!(Object.prototype.toString.call(displayLabel) == "[object String]"))) {
throw new SDKException(Constants.DATA_TYPE_ERROR, "KEY: displayLabel EXPECTED TYPE: String", null, null);
}
this.displayLabel = displayLabel;
this.keyModified.set("display_label", 1);
}
/**
* The method to get the apiName
* @returns {String} A String representing the apiName
*/
getAPIName() {
return this.apiName;
}
/**
* The method to set the value to apiName
* @param {String} apiName A String representing the apiName
*/
setAPIName(apiName) {
if((apiName != null) && (!(Object.prototype.toString.call(apiName) == "[object String]"))) {
throw new SDKException(Constants.DATA_TYPE_ERROR, "KEY: apiName EXPECTED TYPE: String", null, null);
}
this.apiName = apiName;
this.keyModified.set("api_name", 1);
}
/**
* The method to get the module
* @returns {String} A String representing the module
*/
getModule() {
return this.module;
}
/**
* The method to set the value to module
* @param {String} module A String representing the module
*/
setModule(module) {
if((module != null) && (!(Object.prototype.toString.call(module) == "[object String]"))) {
throw new SDKException(Constants.DATA_TYPE_ERROR, "KEY: module EXPECTED TYPE: String", null, null);
}
this.module = module;
this.keyModified.set("module", 1);
}
/**
* The method to get the id
* @returns {BigInt} A BigInt representing the id
*/
getId() {
return this.id;
}
/**
* The method to set the value to id
* @param {BigInt} id A BigInt representing the id
*/
setId(id) {
if((id != null) && (!(Object.prototype.toString.call(id) == "[object BigInt]"))) {
throw new SDKException(Constants.DATA_TYPE_ERROR, "KEY: id EXPECTED TYPE: BigInt", null, null);
}
this.id = id;
this.keyModified.set("id", 1);
}
/**
* The method to get the moduleName
* @returns {String} A String representing the moduleName
*/
getModuleName() {
return this.moduleName;
}
/**
* The method to set the value to moduleName
* @param {String} moduleName A String representing the moduleName
*/
setModuleName(moduleName) {
if((moduleName != null) && (!(Object.prototype.toString.call(moduleName) == "[object String]"))) {
throw new SDKException(Constants.DATA_TYPE_ERROR, "KEY: moduleName EXPECTED TYPE: String", null, null);
}
this.moduleName = moduleName;
this.keyModified.set("module_name", 1);
}
/**
* The method to check if the user has modified the given key
* @param {String} key A String representing the key
* @returns {number} A number representing the modification
*/
isKeyModified(key) {
if((key != null) && (!(Object.prototype.toString.call(key) == "[object String]"))) {
throw new SDKException(Constants.DATA_TYPE_ERROR, "KEY: key EXPECTED TYPE: String", null, null);
}
if(this.keyModified.has(key)) {
return this.keyModified.get(key);
}
return null;
}
/**
* The method to mark the given key as modified
* @param {String} key A String representing the key
* @param {number} modification A number representing the modification
*/
setKeyModified(key, modification) {
if((key != null) && (!(Object.prototype.toString.call(key) == "[object String]"))) {
throw new SDKException(Constants.DATA_TYPE_ERROR, "KEY: key EXPECTED TYPE: String", null, null);
}
if((modification != null) && (!(Object.prototype.toString.call(modification) == "[object Number]"))) {
throw new SDKException(Constants.DATA_TYPE_ERROR, "KEY: modification EXPECTED TYPE: number", null, null);
}
this.keyModified.set(key, modification);
}
}
module.exports = {
MasterModel : Module,
Module : Module
}