Name
sn_em_connector.PushConnectorUtil
Description
This is used to map common parameters required in all push connector. e.g. flattenpayload for additional info
Script
var PushConnectorUtil = Class.create();
PushConnectorUtil.prototype = {
initialize: function() {},
additionalInfo: function(alert, request, first_level) {
var additional_info = {};
var flatPayload = {};
var flattenPayload = new sn_em_connector.FlattenPayload();
if (first_level == true) {
flatPayload = flattenPayload.getFlattenPayloadWithFirstLevel(alert);
} else {
flatPayload = flattenPayload.getFlattenPayload(alert);
}
for (var key in flatPayload) {
additional_info[key] = flatPayload[key];
}
var endpointParamsUtil = new EndpointParamsUtil();
endpointParamsUtil.updateAdditionalInfoWithEndpointParams(request.queryParams, additional_info);
return additional_info;
},
createEventObject: function(source) {
var gr = new GlideRecord('em_event');
gr.initialize();
gr.source = source;
gr.event_class = source;
return gr;
},
buildResponseBody: function(responseBody, gr) {
responseBody.eventSysIds.push(gr.insert());
return responseBody;
},
/**
*
* @param {*} connectorSysId - Push Connector sys_id.
* @param {*} request - HttpRequest for incoming event
* @param {*} reqBody - Parsed Request body
* @param {*} eventGr - Event GlideRecord object where domain information is to be populated
*
* This method populates sys_domain and sys_domain_path fields in event object using domain metadata properties.
*/
populateDomain: function(connectorSysId, request, reqBody, eventGr) {
new sn_em_connector.PushConnectorCustomDomainUtil().populateDomain(connectorSysId, request, reqBody, eventGr);
},
type: 'PushConnectorUtil'
};
Sys ID
f6eb53f5dba638544e0d817913961925