Mini Kabibi Habibi

Current Path : C:/Program Files/McAfee/WebAdvisor/Analytics/Scripts/
Upload File :
Current File : C:/Program Files/McAfee/WebAdvisor/Analytics/Scripts/transport_mosaic_api_v2.js

/*! $FileVersion=1.2.229 */ var transport_mosaic_api_v2_fileVersion = "1.2.229"; 
function Mosaic_API_V2_Transport(){this._transport_api_endpoint_emitter=null;this._url="apis.mcafee.com/mosaic/2.0/{service}/{consumer}/v1/record";this._apikey=null;this._verb="PUT";this._partitionKey=null;this._service=null;this._consumer=null;this._environment=null;this._rtHeaders=null;this.logInfo("New Mosaic_API_V2_Transport Created")}Mosaic_API_V2_Transport.prototype=ModuleManager.create("transport_template");Mosaic_API_V2_Transport.prototype.constructor=Mosaic_API_V2_Transport;Mosaic_API_V2_Transport.prototype.logInfo=function(a){logInformation("Mosaic_API_V2_Transport: "+a)};Mosaic_API_V2_Transport.prototype.logError=function(a){logError("Mosaic_API_V2_Transport: "+a)};Mosaic_API_V2_Transport.prototype.logWarning=function(a){logWarning("Mosaic_API_V2_Transport: "+a)};Mosaic_API_V2_Transport.prototype._updateURL=function(a,b){this._url=updateStringWithReplacement(this._url,a,b)};Mosaic_API_V2_Transport.prototype.GetVersion=function(){try{return engine.getContentVersion()}catch(a){}};Mosaic_API_V2_Transport.prototype._setup=function(){try{this._apikey=this._config.apikey;if(!this._apikey){this.logError("_setup: Initialize failed, API key not provided");return false}this._partitionKey=engine.getContextId();if(!this._partitionKey||(this._partitionKey=="[na]")){this._partitionKey=generateAlphaNumericString(256)}this._service=this._config.service;if(!this._service){this.logError("_setup: Initialize failed, service not provided");return false}this._consumer=this._config.consumer;if(!this._consumer){this.logError("_setup: Initialize failed, consumer not provided");return false}this._updateURL("{service}",this._service);this._updateURL("{consumer}",this._consumer);this._environment=this._config.environment;if(this._environment!=null&&this._environment!=undefined&&this._environment.length>0){this._url=this._environment+"."+this._url}this._url="https://analytics."+this._url;this._verb="PUT";var b=this._config.verb;if(b!=null&&b!=undefined&&b.length>0){this._verb=b}this._addHeaders();var a={url:this._url,headers:this._headers,verb:this._verb};this._transport_api_endpoint_emitter=ModuleManager.create("transport_api_endpoint");if(!this._transport_api_endpoint_emitter){this.logError("_setup: transport_api_endpoint is not available");return false}var d=this._transport_api_endpoint_emitter.Initialize(this._name,JSON.stringify(this._dictionary),JSON.stringify(a));if(!d){this.logError("_setup: failed to initialize transport_api_endpoint_emitter");return false}this.logInfo("Initialized successfully");return true}catch(c){this.logError("_setup: Exception caught with message "+c.message);return false}};Mosaic_API_V2_Transport.prototype.Uninitialize=function(){this._transport_api_endpoint_emitter=null;this.logInfo("Uninitialized successfully")};Mosaic_API_V2_Transport.prototype._transportLog=function(d,a,b){try{var f="mosaic_api_v2";logTransports(d,f,b,a)}catch(c){this.logError("_transportLog: Exception caught with message: "+c.message)}};Mosaic_API_V2_Transport.prototype.Send=function(c){try{var a=sanitizeJSONData(c);var f=ModuleManager.getSingleton("mappings");var k=f._map(this._dictionary,a,false);var l=this._appendDottedKeys(k);var j=JSON.stringify({Data:l,PartitionKey:this._partitionKey});var d=this._config.nullSchema;if(d!=null&&d!=undefined&&d){j=JSON.stringify(l)}var b=this._transport_api_endpoint_emitter.Send(j);var i=(b=="200")||(b==200)?true:false;if(d!=null&&d!=undefined&&d){i=(b=="201")||(b==201)?true:false}var g=a.hit_event_id;this._transportLog(g,JSON.stringify(l),i);return i}catch(h){this.logError("Send: Failed to send data: "+h.message);return false}};Mosaic_API_V2_Transport.prototype._appendDottedKeys=function(c){var d=["csp_clientid","event_category","event_action","event_label","engagement_interactive","engagement_userinitiated","hit_type","hit_uniqueid","hit_severity","hit_label_1","hit_label_2","device_antimalware_provider_enabled","device_os_type","wss_istrial"];for(var b in d){var a=d[b];if(a in c){c[a.replace(/_/g,".")]=c[a]}}return c};Mosaic_API_V2_Transport.prototype._addHeaders=function(){try{this._headers={"x-api-key":this._apikey,"content-type":"application/json"};this._rtHeaders=this._config.headers;if(this._rtHeaders!=null&&this._rtHeaders!=undefined){for(var a in this._config.headers){this._headers[a]=this._rtHeaders[a]}}}catch(b){this.logError("_setup: Error while setting headers config with message "+b.message)}};ModuleManager.registerFactory("transport_mosaic_api_v2",Mosaic_API_V2_Transport);
//180B1993865A85468DAC46DB731668F611DF7771AB505897162AA8B1F42B100747CF21785BC03EFFF49300F647AEA7D3680C304170DBD16C32D85136414A01A1++