Name
sn_em_connector.PushConnectorInstanceUtils
Description
Apply Push connector Instance specific changes
Script
var PushConnectorInstanceUtils = Class.create();
PushConnectorInstanceUtils.prototype = {
initialize: function() {},
updateAdditionalInfoWithConnectorTags: function(additionalInfo, connectorTags) {
connectorTags = connectorTags ? "" + connectorTags : connectorTags;
var tagJson = null;
if (connectorTags && connectorTags.length > 0) {
tagJson = JSON.parse(connectorTags);
}
if (!tagJson)
return;
for (var tagName in tagJson) {
additionalInfo[tagName] = tagJson[tagName];
}
},
populateFieldInEvents: function(eventGr, fieldValueMap) {
if (!fieldValueMap || fieldValueMap.length == 0)
return;
if (eventGr && eventGr.isValidRecord()) {
try {
for (var fieldName in fieldValueMap) {
if (eventGr.isValidField(fieldName)) {
eventGr[fieldName] = fieldValueMap[fieldName];
}
}
} catch (e) {
gs.log("ERROR populateFieldInEvents: failed to populate fields in events " + e);
}
}
},
getConnectorTags: function(connectorInstanceId) {
// System property added to disable connector tags functionality.
var connectorTagsEnabled = gs.getProperty('evt_mgmt.connector_tags_enabled', 'true');
if (connectorTagsEnabled != 'true')
return null;
// Connector tags are stored in 'sn_itom_integ_app' plugin so, tag functionality is available when this plugin is installed.
// Before retrieving connector tags, first check if the 'sn_itom_integ_app' plugin is installed and call api to fetch tags only when its installed.
var pluginManager = new GlidePluginManager();
if (pluginManager.isActive('sn_itom_integ_app') && typeof sn_itom_integ_app.ConnectorTagsUtil !== 'undefined') {
return new sn_itom_integ_app.ConnectorTagsUtil().getConnectorTags(connectorInstanceId);
}
return null;
},
getMidServerWithAtleastOneEventListener: function() {
var responseObject = [];
var gr = new GlideRecord('ecc_agent');
gr.addQuery('status', 'Up');
gr.addQuery('validated', true);
var gr1 = gr.addJoinQuery('ecc_agent_ext_context_event', 'sys_id', 'executing_on');
gr1.addCondition('status', 'Started');
gr.query();
while (gr.next()) {
var data = {};
data.id = gr.getValue('sys_id');
data.name = gr.getValue('name');
responseObject.push(data);
}
return responseObject;
},
type: 'PushConnectorInstanceUtils'
};
Sys ID
cdd824e3530821109472ddeeff7b1205