Пример #1
0
	var stream = through2.obj(function(file, enc, callback) {
		var content, document, children, childNode, outputObj = {};

		if (file.isNull()) {
			this.push(file);
			return callback();
		}

		if (file.isStream()) {
			throw new PluginError(PLUGIN_NAME, "Streaming is not supported");
		}

		content =  file.contents.toString('utf8');
		document = new xmldoc.XmlDocument(content);

		children = document.childrenNamed('data');

		for(childNode in children) {
			outputObj[children[childNode].attr.name] = children[childNode].children[0].val;
		}

		file.path = rext(file.path, '.js');
		console.log('Resource file generated: ' + file.path);
		file.contents = new Buffer(JSON.stringify(outputObj));

		this.push(file);
		return callback();
	});
Пример #2
0
                .then(function(wsdl) {

                    var $wsdlObj   = new xmldoc.XmlDocument(wsdl);
                    var wsdlStruct = getNamespace($wsdlObj.name, true);

                    var $binding    = $wsdlObj.childNamed(wsdlStruct + 'binding');
                    var $portType   = $wsdlObj.childNamed(wsdlStruct + 'portType');
                    var $messages   = $wsdlObj.childrenNamed(wsdlStruct + 'message');

                    var $types      = getWsdlChild($wsdlObj, 'types', wsdlStruct);
                    var typesStruct = getNamespace($types.children[0].name, true);

                    var $schema       = $types.childNamed(typesStruct + 'schema');
                    var $complexTypes = $schema.childrenNamed(typesStruct + 'complexType');

                    // try to get method node
                    var $methodPortType = $portType.childWithAttribute('name', methodName);
                    if (!$methodPortType) {
                        throw new Error('method ("' + methodName + '") not exists in wsdl');
                    }

                    var $input  = $methodPortType.childNamed(wsdlStruct + 'input');
                    var $output = $methodPortType.childNamed(wsdlStruct + 'output');

                    var $inputMessage  = getMessageNode($messages, getNameWithoutNamespace($input.attr.message));
                    var $outputMessage = getMessageNode($messages, getNameWithoutNamespace($output.attr.message));

                    return {
                        request : getMessageAttrs($inputMessage, $wsdlObj),
                        response: getMessageAttrs($outputMessage, $wsdlObj)
                    };
                });
Пример #3
0
exports.GetTop = function GetTop(xml, max) {
    "use strict";

    var newsTitles = [], document, channel, items, length, i;

    if ((xml === null) || (xml.length === 0)) {
        return newsTitles;
    }

    try {
        document = new xmldoc.XmlDocument(xml);

        channel = document.childNamed('channel');

        items = channel.childrenNamed('item');

        for (i = 0, length = items.length; i < length; i = i + 1) {
            iterateItems(items[i], newsTitles);
            if (newsTitles.length >= max) {
                return newsTitles;
            }
        }
    } catch (e) {
        console.log(e);
    }

    return newsTitles;
};
Пример #4
0
 ,removeObjects: function(data, cb) {
     var me = this
         ,xmlDoc = new xmldoc(data.data)
         ,items = []
         ,ids = []
         ,nnn = 0
         ,results = {inserted: 0, updated: 0}
         ,model = Ext.create(data.cfg.dataModel, {src: me.src, config: me.config})
         
     if(data.cfg.rootNode) 
         items = xmlDoc.childNamed(data.cfg.rootNode).children
     else 
         items = xmlDoc.children
            
      var func = function() {
          if(nnn>=items.length) {
              model.remove(ids, function() {
                 cb({removed: ids.length})    
              })
              return;
          }
          me.getRemoveObject(data.cfg, items[nnn], model, function(_id) {
              if(_id) ids.push(_id);
              nnn++;
              func()
          })
      }
      func()    
 }
Пример #5
0
var calculateTimeDifference = function (xml) {
  console.log("Calculating time difference");
  var response = new xmldoc.XmlDocument(xml);
  var prdNode = response.childNamed('prd');

  if (prdNode === undefined) {
    return -1;
  } else {
    var prdtmNode = prdNode.childNamed('prdtm');
    var tmstmpNode = prdNode.childNamed('tmstmp');
    console.log("Prediction time: ", prdtmNode);
    console.log("Timestamp: ", tmstmpNode);

    var predictionDate = new moment(prdtmNode, 'YYYYMMDD HH:mm:ss');
    var currentDate = new moment(tmstmpNode, 'YYYYMMDD HH:mm:ss');

    console.log("Current Date: ", currentDate.unix());
    console.log("Prediction Date: ", predictionDate.unix());

    //TODO if the time difference is less than N amount of minutes try to get the next prediction
    var timeDifference = (predictionDate.unix() - currentDate.unix()) / 60;
    console.log(timeDifference);
    return timeDifference;
  }
};
Пример #6
0
    it('should work with complex groups', function() {
        var source = new xmldoc.XmlDocument('<svg><g transform="translate(200, 300) rotate(20)" title="gauche"><g transform="translate(-50, -100)"><style type="text/css">.st0{fill:#D6D5D5;}</style><g><path class="st0" d="M300,200 350,250"/></g><g><path class="st0" d="M400,200 450,250"/></g></g></g></svg>');
        var target = new xmldoc.XmlDocument('<svg><path transform="translate(200, 300) rotate(20)" title="gauche" d="M250 100L300 150M350 100L400 150"/></svg>');

        // test
        expect(flattenFn(source).toString()).to.be.equal(target.toString());
    });
Пример #7
0
    it('should flatten path groups', function() {
        var source = new xmldoc.XmlDocument('<svg><g><path d="M300,200 350,250"/><path d="M400,200 450,250"/></g></svg>');
        var target = new xmldoc.XmlDocument('<svg><path d="M300,200 350,250 M400,200 450,250"/></svg>');

        // test
        expect(flattenFn(source).toString()).to.be.equal(target.toString());
    });
Пример #8
0
 g_fs.readFile("C:\\ProgramData\\Thomson Reuters\\TRD_8.xml", function eikon3xVersionCallback(err, data){
     if(err)
     {
         //Windows XP not support Eikon 4
         g_fs.readFile("C:\\Documents and Settings\\All Users\\Application Data\\Thomson Reuters\\TRD_8.xml", function eikon3xXPVersionCallback(err, data){
             if(err)
             {
                 l_deferredReturn.resolve("");
                 return;
             }
             else
             {
                 var product = new g_xmldoc(data);
                 if (typeof product != 'object') {
                     l_deferredReturn.resolve("");
                     return;
                 }
                 l_deferredReturn.resolve(product.valueWithPath('MSIProductVersion'));
             }
         });
         return;
     }
     else
     {
         var product = new g_xmldoc(data);
         if (typeof product != 'object') {
             l_deferredReturn.resolve("");
             return;
         }
         l_deferredReturn.resolve(product.valueWithPath('MSIProductVersion'));
     }
 });
Пример #9
0
    ,upsertObjects: function(data, cb) {
        var me = this
            ,xmlDoc = new xmldoc(data.data)
            ,nnn1 = 0
            ,items = []
            ,results = {inserted: 0, updated: 0}
            ,model = Ext.create(data.cfg.dataModel, {src: me.src, config: me.config})
            
        if(data.cfg.rootNode) 
            items = xmlDoc.childNamed(data.cfg.rootNode).children
        else 
            items = xmlDoc.children
         var func11 = function() {
             if(nnn1>=items.length) {                 
                 //if(nnn == items.length) 
                 cb(results)
                 return;
             } else {
                 
                 var s = (100 * nnn1 / items.length) + '%';
                 me.src.db.collection('xmlreadlog').update({cod: '1'}, {log: s, cod: '1'}, {upsert: true}, function() {
                     me.upsertObject(data.cfg, items[nnn1], model, function(act) {
                        if(act && results[act] !== undefined) results[act]++;
                        nnn1++;
                        func11()
                     })
                 })

             }
         }
         func11()    
    }
                            me._sendRequest(oRequest, function (oResponse) {
                                if (oResponse.statusCode === util.HTTPSTAT.not_found) { //BSP container does not exist
                                    fnCallbackAsyncL3(null, oResponse);
                                    return;
                                }

                                if (oResponse.statusCode !== util.HTTPSTAT.ok) {
                                    fnCallbackAsyncL3(util.createResponseError(oResponse), oResponse);
                                    return;
                                }

                                var oXML = new XMLDocument(oResponse.body);
                                var oAtomEntry = oXML.childrenNamed('atom:entry');

                                oAtomEntry.forEach(function (oChild) {
                                    var sCurrId = oChild.valueWithPath('atom:id');
                                    var sCurrType = oChild.valueWithPath('atom:category@term');

                                    aArtifactsServer.push({type: sCurrType, id: sCurrId});

                                    if (sCurrType === util.OBJECT_TYPE.folder) {
                                        aFolders.push(sCurrId);
                                    }
                                });

                                fnCallbackAsyncL3(null, oResponse);
                            });
Пример #11
0
 }, function (error, response, body) {
     if (error) {
         logger.error('Error at find transfer request:' + error);
     }
     else {
         try {
             var xml = new xmldoc.XmlDocument(body);
             if (xml.childNamed("opensearch:totalResults").val != 0) {
                 var transferEntries = xml.childrenNamed("atom:entry");
                 for (var i = 0; i < transferEntries.length; i++) {
                     var transferEntry = transferEntries[i];
                     var transferRequestPayload = transferEntry.childNamed('transfer:requestPayload');
                     if (transferRequestPayload.childWithAttribute('scheme', 'http://www.vizrt.com/types/transfer-destination') != null) {
                         var transferType = transferRequestPayload.childWithAttribute('scheme', 'http://www.vizrt.com/types/transfer-destination').attr.term;
                         if (transferType == 'export') {
                             var transfer = {
                                 'transferID': transferEntry.childNamed("core:uniqueNumber").val,
                                 'author': transferEntry.childNamed("atom:author").childNamed("atom:name").val,
                                 'assetId': transferEntry.childNamed("core:ardomeIdentity").val,
                                 'assetLink': transferEntry.childWithAttribute('rel', 'item').attr.href,
                                 'name': (transferEntry.childNamed("atom:title").val).split(" ")[1]
                             }
                             processTransfer(transfer);
                         }
                     }
                 }
             }
         }
         catch (e) {
             logger.error('Error at find transfers response' + e);
         }
     }
 });
Пример #12
0
    fs.readFile(s.file, { encoding: "utf-8" }, function (err, data) {
        if (err) throw err;
        var xmlnode = new xmldoc.XmlDocument(data);;
        var rows = xmlnode.descendantWithPath("row");
        rows.eachChild(function(r) {
            var mets = base_mets;
            var dburi = '/docs/' + s.dir + '/' + r.attr._uuid + '.xml';
            mets = mets.replace('%DBURI%', dburi);
        
            var mainxml = r.toString();
            mainxml = mainxml.replace('<row ', '<row xmlns="http://data.cityofchicago.org/rows/" ');
            mainxml = mainxml.replace('</row>', '<doccategory>' + s.dir + '</doccategory></row>');

            request(
                { 
                    method: 'PUT',
                    uri: 'http://' + config.mlrest.host + ':' + config.mlrest.port + '/v1/documents?uri=' + dburi + '&transform=load',
                    auth: {
                        'user': config.ml.adminuser,
                        'pass': config.ml.adminpass,
                        'sendImmediately': false
                    },
                    //json: true,
                    body: mainxml
                }, function (error, response, body) {
                    if (error) {
                        return console.error('upload failed:', error);
                    }
                    console.log('Upload successful!  ' + dburi);
                }
            );
            
        });
    });
Пример #13
0
        }, function (error, response, body) {
            if (error) {
                logger.error('Error at find tasks request: ' + error);
            }
            else {
                logger.silly('Finding tasks: ' + body);
                try {
                    var xml = new xmldoc.XmlDocument(body);
                    if (xml.childNamed("opensearch:totalResults").val != '0') {
                        var taskEntries = xml.childrenNamed("atom:entry");

                        for (var i = 0; i < taskEntries.length; i++) {
                            var taskEntry = taskEntries[i];
                            var taskState = taskEntry.childNamed("task:state").attr.id;
                            if (taskState === "incoming") {
                                var task = {
                                    'taskId': taskEntry.childNamed("task:taskid").val,
                                    'type': taskEntry.childNamed("task:definition").val,
                                    'assetId': taskEntry.childNamed("core:ardomeIdentity").val,
                                    'assetLink': "http://" + vme + "/api/asset/item/" + taskEntry.childNamed("core:ardomeIdentity").val,
                                    'createdBy': taskEntry.childNamed("core:createdBy").val
                                }
                                processTask(task);
                            }
                        }
                    }
                }
                catch (e) {
                    logger.error('Error at find tasks response ' + e + "\n" + body);
                }
            }
        });
Пример #14
0
	handleDirItem: function (fileItem, format, stat) {
		if (fileItem != null) {
			var date = null;
			switch (format) {
				case 'xml':
					var xmlRes = new xmldoc(fileItem);
					date = xmlRes.valueWithPath("updatedAt");
					if (date != null) {
						stat.mtime = new Date(date * 1000);
					}
					stat.size = fileItem.length;
					break;
				case 'ical':
					stat.size = fileItem.length;
					var eventUpdatedDateRegex = /(?:^|\n)DTSTAMP:([^\s]+)/i;
					var date = fileItem.match(eventUpdatedDateRegex).slice(1);
					date = this.parseICalDate(date);
					if (date != null) {
						stat.mtime = date;
					}
					break;
				default:
					stat.size = fileItem.length;
					date = fileItem['updatedAt'];
					if (date != null) {
						stat.mtime = new Date(date * 1000);
					}
					break;
			}
		}
	},
Пример #15
0
		function (data, status, req) {
			var xmlData = new XmlDocument(data);
			var resultText = xmlData.valueWithPath('soap:Body.soap:Reason.soap:Text');
			return res.status(status).json({
				message: 'Ошибка!',
				error: resultText
			});
		},
Пример #16
0
 .then(function (fst) {
     var opmlContent = opml.export(fst);
     var xml = new xmldoc.XmlDocument(opmlContent);
     expect(xml.name).toBe('opml');
     expect(xml.childNamed('head').children.length).toBe(1);
     expect(xml.childNamed('body').children.length).toBe(0);
     done = true;
 });
Пример #17
0
		function (data, status, req) {
			var xmlData = new XmlDocument(data);
			var resultText = xmlData.valueWithPath('soap:Body.m:StatusOrderResponse.m:return');
			return res.status(200).json({
				message: 'Success',
				obj: resultText
			});
		}
Пример #18
0
 it('should create empty OPML from empty storage', function () {
     var fst = feedsStorage.make();
     var opmlContent = opml.export(fst);
     var xml = new xmldoc.XmlDocument(opmlContent);
     expect(xml.name).toBe('opml');
     expect(xml.childNamed('head').children.length).toBe(1);
     expect(xml.childNamed('body').children.length).toBe(0);
 });
Пример #19
0
                .then(function(wsdl) {

                    var $wsdlObj   = new xmldoc.XmlDocument(wsdl);
                    var wsdlStruct = getNamespace($wsdlObj.name, true);

                    var $binding    = $wsdlObj.childNamed(wsdlStruct + 'binding');
                    var $operations = $binding.childrenNamed(wsdlStruct + 'operation')

                    return _.map($operations, (operationItem) => operationItem.attr.name)
                        .sort();
                });
 function extractBinaryInfo(xml) {
   var doc  = new xmldoc.XmlDocument(xml);
   var node = doc.childNamed('sdk:platform-tool')
                 .childNamed('sdk:archives')
                 .childWithAttribute('os', platform);
   return {
     'checksum' : node.valueWithPath('sdk:checksum'),
     'size'     : node.valueWithPath('sdk:size'),
     'url'      : node.valueWithPath('sdk:url')
   }
 }
Пример #21
0
exports.parseDataReturnDetails = function(data) {	
	try {
		
		var xmldocument = new XmlDocument(data);
		var location = xmldocument.descendantWithPath("channel.yweather:location");
		var condition = xmldocument.descendantWithPath("channel.item.yweather:condition");

		return [location.attr.city, location.attr.region, parseInt(condition.attr.temp)];
	} catch (ex) {
		return [];
	}	
}
Пример #22
0
    }, function(err, response, body) {

      if (!err && response.statusCode == 200) {

        var doc = new xmldoc.XmlDocument(body);
        that.loginToken = doc.valueWithPath("LoginToken");
        that.refreshLoginCookie();
      }
      else {
        that.log("Error '"+err+"' getting login token: " + body);
      }
    });
Пример #23
0
fs.readFile('pathway_files/sample_fit.xml','utf8',function(e,data){
	var xml = new xmldoc(data);

	var pat=xml.childNamed('patient');
	var names = pat.childNamed('name');
	names.eachChild( function(n){
		console.log( n.val );
	
	});

	
});
Пример #24
0
    parser.parseString(nbe, function (err, result) {
      var xmlDoc = new XmlDocument(nbe);
      var report = xmlDoc.childNamed("Report");
      var hosts = report.childrenNamed('ReportHost');

      for (var j = 0; j<hosts.length; j++) {
        var items = hosts[j].childrenNamed('ReportItem');
        for (var i = 0; i<items.length; i++) {
          returnArray.push(parseNessusResult(items[i], hosts[j].attr.name));
        }
      }
    });
Пример #25
0
    /**
     * Check the unit test results for failures
     */
    function checkForTestFailures(pathToResult) {
        var resultXml = grunt.file.read(pathToResult),
            xmlDocument = new XmlDocument(resultXml),
            testSuites = xmlDocument.childrenNamed("testsuite"),
            failures = 0;

        testSuites.forEach(function (testSuite) {
            failures += Number(testSuite.attr.failures);
        });

        return failures;
    }
Пример #26
0
fs.readFile(filename, 'utf8', function (err, data) {
    if(err) throw err; 

    var doc = new xmldoc.XmlDocument(data);
    var captionRoot = doc.descendantWithPath('body.div'); 
  
    out.push('WEBVTT\n');

    captionRoot.eachChild(convertNode);

    console.log(out.join('\n'));
  
});
Пример #27
0
		handler = function (result, err) {
			if (err) {
				This.logErrorMsg(JSON.stringify(err));
				return callback(JSON.stringify(err), null);
			}
			else {
				var res = null;
				switch (extension) {
					case 'xml':
						var xmlRes = new xmldoc(result);
						var error = xmlRes.childNamed("result").childNamed("error");
						if (error != null) {
							This.logErrorMsg(error.toString());
							return callback(error.toString(), null);
						} else {
							var regexToRemove = /<executionTime>([\s\S]*?)<\/executionTime>/g;
							var tempStr = xmlRes.toString();
							var res = tempStr.replace(regexToRemove, '');
							var document = new xmldoc(res);
							res = document.toString();
							res = res.replace(/^\s\s*/, '').replace(/\s\s*$/, ''); //remove starting and trailing spaces
						}
						break;
					case 'ical':
						var eventsRegex = /BEGIN:VERROR([\s\S]*?)END:VERROR/g;
						var eventError = result.match(eventsRegex);
						if (eventError != null) {
							This.logErrorMsg(eventError);
							return callback(eventError, null);
						} else {
							var regexToRemove = /X-KALTURA-EXECUTION-TIME:.*/g;
							var resICal = result.replace(regexToRemove, '');
							res = resICal;
							res = res.replace(/^\s\s*/, '').replace(/\s\s*$/, ''); //remove starting and trailing spaces
						}
						break;
					default:
						res = JSON.stringify(result);
						break;
				}
				KalturaCache.set(file, res, cacheItemExpiration, function () {
					callback(null, res)
				}, function (err, key) {
					This.logMsg('[getFileAndInsertToCache]Error setting ' + key + ' in memcached. Trying to set in session\'s memory. ' + err);
					This.retrievedItems[key] = res;
					callback(null, res);
				});
			}
		};
function extractPropertiesFromFile() {
  let properties = []
  if (window.activeTextEditor) {
    let xmlCurrentPom = new xmldoc.XmlDocument(window.activeTextEditor.document.getText())
    let propertiesCurrentPom = xmlCurrentPom.descendantWithPath("properties")
    propertiesCurrentPom.eachChild(property => {
      properties.push({
        name: property.name,
        val: property.val,
        position: property.position
      })
    })
  }
  return properties;
}
Пример #29
0
 }, function (err, response, body) {
     if (err) {
         logger.error("Error at get file name "+err);
     }
     else {
         logger.debug("Get file name "+body);
         try {
             var xml = new xmldoc.XmlDocument(body);
             var fileName = xml.childWithAttribute('name', 'media.vfrFileName').childNamed('value').val;
             if (callback) callback(fileName);
         }
         catch (e) {
             logger.warn("Video file name not found. Undefined value 'media.vfrFileName'");
         }
     }
 }
Пример #30
0
 }, function (err, response, body) {
     if (err) {
         logger.error("Error at get file name "+err);
     }
     else {
         logger.debug("Get xml file response "+body);
         try {
             var xml = new xmldoc.XmlDocument(body);
             var fileName = xml.childWithAttribute('name', 'asset.alternativeTitle').childNamed('value').val+".xml";
             logger.verbose("Get file name "+fileName);
             if (callback) callback(fileName);
         }
         catch (e) {
             logger.warn("Video file name not found. Undefined value 'asset.alternativeTitle'");
         }
     }
 }