modelservicesdk

2.0.2 • Public • Published

ModelServiceContainer - SDK

NPM Version NPM Downloads Node.js Version Build Status Test Coverage

The Model Service Container Sdk using Javascript, the main function of it is that offering one method to get model service resource !

Installation

This is a Node.js module available through the npm registry. Installation is done using the npm install command:

$ npm install modelservicesdk

Examples

Simple example

let Server = require('modelservicesdk');
let server = new Server('127.0.0.1', 8060);
let access = server.getServiceAccess();
access.getModelServicesList()
   .then(ms =>{
    let list_ms = ms;
    for (let i = 0; i < list_ms.length; i++) {
        item = list_ms[i];
        console.log('ID: ' + item.id + " - Name: " + item.name + " - Type:" + item.type);
    }
   })
   .catch(err =>{
    console.log('Error');
   })
 

Complex example

var Server = require('modelservicesdk');
let server = new Server('127.0.0.1', 8060);
let access = server.getServiceAccess();
let filepath = 'E:\\NativeTest\\TestData\\TouchAir\\input.xml';
let tag = 'input.xml';
let pDataconfig;
access.uploadDataByFile(filepath, tag)
    .then((data) => {
        if (data.id !== null) {
            console.log('TouchAir - Data ID : ' + data.id);
            pDataconfig = access.createDataConfig();
            pDataconfig.insertData('aa00cced-60e7-48a5-90d2-f91ac08b624d', 'InputData', data.id);
            return access.getModelServicesList()
        }
    })
    .then(function (ms) {
        let list_ms = ms;
        for (var i = 0; i < list_ms.length; i++) {
            item = list_ms[i];
            console.log('ID: ' + item.id + " - Name: " + item.name + " - Type:" + item.type);
        }
        return access.getModelServiceByOID('5aab9a194290c617a88f347b')
    })
    .then(function (pMservice) {
        //调用模型
        return pMservice.invoke(pDataconfig);
    })
    .then(function (recordid) {
        console.log(recordid);
        console.log('Invoke successfully! Model service Record ID is: ', recordid);
        return access.getModelServiceRecordByID(recordid)
    })
    .then(function (record) {
        let msrstatus = record.getStatus();
        console.log(msrstatus);
        let TIME_STEP = 1000;
        let polling = () => {
            record.refresh()
                .then(status => {
                    if (status !== null) {
                        msrstatus = record.getStatus();
                        if (msrstatus === 1) {
                            console.log('TouchAir model has been finished');
                            let list_logs = record.getLogs();
                            for(let j = 0; j < list_logs.length; j++){
                                if(list_logs[j] === null) continue;
                                let logs_temp = list_logs[j];
                                console.log(logs_temp.getType() + ' - ' + logs_temp.getState() + ' - ' + logs_temp.getEvent() + ' - ' + logs_temp.getMessage());
                            }
                        }
                        else {
                            setTimeout(function () {
                                polling();
                            }, TIME_STEP);
                        }
                    } else {
                        console.log('refresh model service record failed, please check and request one more!')
                    }
 
                })
                .catch(e => {
                    console.log(e);
                })
        }
 
        polling();
 
     })
    .catch((err) => {
            console.log('Error');
 
        })

License

MIT

/modelservicesdk/

    Package Sidebar

    Install

    npm i modelservicesdk

    Weekly Downloads

    3

    Version

    2.0.2

    License

    ISC

    Unpacked Size

    40.5 kB

    Total Files

    18

    Last publish

    Collaborators

    • genggao110