UNPKG

catjs

Version:

(Mobile) Web Automation Framework

110 lines (80 loc) 3.19 kB
var _Scrap = catrequire("cat.common.scrap"), _codeutils = catrequire("cat.code.utils"), _scraputils = require("./utils/Utils"), _delayManagerUtils = require("./utils/DelayManagerUtils"); var tipNum = 1; module.exports = function () { return { init: function (config) { /** * Annotation for deviceinfo library * * properties: * name - deviceinfo * single - false * singleton - 1[default -1] * $type - js */ _Scrap.add({name: "deviceinfo", single: false, func: function (config) { var deviceinfoRows, me = this, generate = function (deviceinfoRow) { var deviceinfo, tempCommand, api, match; deviceinfoRow = _codeutils.prepareCode(deviceinfoRow); if (deviceinfoRow && deviceinfoRow.join) { deviceinfo = deviceinfoRow.join("\n"); } else { deviceinfo = deviceinfoRow; } if (deviceinfo) { api = [ { api: "deviceinfo", apiname: "deviceinfo" } ]; match = _scraputils.match(deviceinfo, api); if (match) { tempCommand = [ '_cat.core.plugin("deviceinfo").actions.', match ]; return tempCommand.join(""); } } return undefined; }, scrapConf = me.config, scrap = scrapConf, dm; deviceinfoRows = this.get("deviceinfo"); dm = new _delayManagerUtils({ scrap: me }); if (deviceinfoRows) { dm.add({ rows: deviceinfoRows, args: [ "scrapName: 'deviceinfo'" ], type: "deviceinfo" }, function (row) { return generate(row); }); } dm.dispose(); } }); config.emitter.emit("job.done", {status: "done"}); }, apply: function () { }, getType: function () { return "scrap-deviceinfo"; } }; };