UNPKG

mastercard-mastercom

Version:

Core functionality for MasterCard API

201 lines (181 loc) 7.99 kB
/* * Copyright (c) 2013 - 2016, MasterCard International Incorporated * All rights reserved. * * Redistribution and use in source and binary forms, with or without modification, are * permitted provided that the following conditions are met: * * Redistributions of source code must retain the above copyright notice, this list of * conditions and the following disclaimer. * Redistributions in binary form must reproduce the above copyright notice, this list of * conditions and the following disclaimer in the documentation and/or other materials * provided with the distribution. * Neither the name of the MasterCard International Incorporated nor the names of its * contributors may be used to endorse or promote products derived from this software * without specific prior written permission. * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT * SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED * TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER * IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * */ var MasterCardAPI = require('mastercard-api-core'); var ResourceConfig = require('./resourceconfig'); var CaseFiling = {}; var operationConfigs = {}; /** * Initialize CaseFiling * @private */ var _init = function() { operationConfigs["fa063e1e-231b-4db0-a8e1-7201389b2b50"] = new MasterCardAPI.OperationConfig("/mastercom/v6/cases", "create", [""], [""]); operationConfigs["4e7da55a-6310-4847-a925-6c9ba9e7c017"] = new MasterCardAPI.OperationConfig("/mastercom/v6/cases/{case-id}/documents", "query", ["format","memo"], [""]); operationConfigs["2101cec5-fafe-4d7e-8dd7-6a7d6d7c5591"] = new MasterCardAPI.OperationConfig("/mastercom/v6/cases/imagestatus", "update", [""], [""]); operationConfigs["01ec857e-f137-486b-ad17-c80a2a5cf793"] = new MasterCardAPI.OperationConfig("/mastercom/v6/cases/status", "update", [""], [""]); operationConfigs["23bf4b08-cbc4-4a73-af0e-9c1e6ea017ab"] = new MasterCardAPI.OperationConfig("/mastercom/v6/cases/retrieve/claims", "update", [""], [""]); operationConfigs["c86e0f49-8f53-4b73-a59c-735efd027bd1"] = new MasterCardAPI.OperationConfig("/mastercom/v6/cases/{case-id}", "update", [""], [""]); }; _init(); /** * Private function to get operation config * @returns Object operation config * @private */ var _getOperationConfig = function(operationUUID) { var operationConfig = operationConfigs[operationUUID]; if(!MasterCardAPI.isSet(operationConfig)) { throw new MasterCardAPI.MasterCardError.SDKError("Invalid operationUUID supplied: " + operationUUID); } return operationConfig; }; var _getOperationMetaData = function() { return new MasterCardAPI.OperationMetaData(ResourceConfig.getVersion(), ResourceConfig.getHost(), ResourceConfig.getContext(), ResourceConfig.getJsonNative(), ResourceConfig.getContentTypeOverride()); }; /** * Function to create a CaseFiling object. * * @method create * @param {Object} params - A map of parameters in which to create the CaseFiling from. * @param {Function} callback - A function to handle success/error responses from the API.<br/> * The function takes 2 parameters, the first is an error object. This is null if no error occurs. The second parameter is the response data. This is null if an error occurs. */ CaseFiling.create = function(params, callback) { try { MasterCardAPI.execute({ operationConfig: _getOperationConfig("fa063e1e-231b-4db0-a8e1-7201389b2b50"), operationMetaData: _getOperationMetaData(), params: params }, callback); } catch (e) { callback(e, null); } }; /** * Function to query a CaseFiling object from the API. * * @method find * @param {Object} query - A map of parameters in which to create the CaseFiling from. * @param {Function} callback - A function to handle success/error responses from the API.<br/> * The function takes 2 parameters, the first is an error object. This is null if no error occurs. The second parameter is the response data. This is null if an error occurs. */ CaseFiling.retrieveDocumentation = function(query, callback) { var params = MasterCardAPI.isSet(query) ? query : {}; try { MasterCardAPI.execute({ operationConfig: _getOperationConfig("4e7da55a-6310-4847-a925-6c9ba9e7c017"), operationMetaData: _getOperationMetaData(), params: params }, callback); } catch (e) { callback(e, null); } }; /** * Function to update a CaseFiling object. * * @method update * @param {Object} params - A map of parameters on which to update the CaseFiling object. * @param {Function} callback - A function to handle success/error responses from the API.<br/> * The function takes 2 parameters, the first is an error object. This is null if no error occurs. The second parameter is the response data. This is null if an error occurs. */ CaseFiling.caseFilingImageStatus = function(params, callback) { try { MasterCardAPI.execute({ operationConfig: _getOperationConfig("2101cec5-fafe-4d7e-8dd7-6a7d6d7c5591"), operationMetaData: _getOperationMetaData(), params: params }, callback); } catch (e) { callback(e, null); } }; /** * Function to update a CaseFiling object. * * @method update * @param {Object} params - A map of parameters on which to update the CaseFiling object. * @param {Function} callback - A function to handle success/error responses from the API.<br/> * The function takes 2 parameters, the first is an error object. This is null if no error occurs. The second parameter is the response data. This is null if an error occurs. */ CaseFiling.caseFilingStatus = function(params, callback) { try { MasterCardAPI.execute({ operationConfig: _getOperationConfig("01ec857e-f137-486b-ad17-c80a2a5cf793"), operationMetaData: _getOperationMetaData(), params: params }, callback); } catch (e) { callback(e, null); } }; /** * Function to update a CaseFiling object. * * @method update * @param {Object} params - A map of parameters on which to update the CaseFiling object. * @param {Function} callback - A function to handle success/error responses from the API.<br/> * The function takes 2 parameters, the first is an error object. This is null if no error occurs. The second parameter is the response data. This is null if an error occurs. */ CaseFiling.retrieve = function(params, callback) { try { MasterCardAPI.execute({ operationConfig: _getOperationConfig("23bf4b08-cbc4-4a73-af0e-9c1e6ea017ab"), operationMetaData: _getOperationMetaData(), params: params }, callback); } catch (e) { callback(e, null); } }; /** * Function to update a CaseFiling object. * * @method update * @param {Object} params - A map of parameters on which to update the CaseFiling object. * @param {Function} callback - A function to handle success/error responses from the API.<br/> * The function takes 2 parameters, the first is an error object. This is null if no error occurs. The second parameter is the response data. This is null if an error occurs. */ CaseFiling.update = function(params, callback) { try { MasterCardAPI.execute({ operationConfig: _getOperationConfig("c86e0f49-8f53-4b73-a59c-735efd027bd1"), operationMetaData: _getOperationMetaData(), params: params }, callback); } catch (e) { callback(e, null); } }; module.exports = CaseFiling;