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

Package Sidebar

Install

npm i modelservicesdk

Weekly Downloads

0

Version

2.0.2

License

ISC

Unpacked Size

40.5 kB

Total Files

18

Last publish

Collaborators

  • genggao110