UNPKG

decentralized-internet

Version:

An NPM library of programs to create decentralized web and distributed computing projects

1 lines 1.33 kB
var request=require("request"),fs=require("fs"),Promise=require("bluebird"),path=require("path"),job={executable:"ComponentSizeRLE",parameters:[{flag:"--i",name:"atlas_DD_040_t1w.nrrd"},{flag:"--m",name:"DD_040_seg.nii.gz"},{flag:"--outputHistogram",name:"outputHistogram.csv"},{flag:"--outputRLE",name:"outputRLE.csv"}],inputs:[{name:"atlas_DD_040_t1w.nrrd"},{name:"DD_040_seg.nii.gz"}],outputs:[{type:"file",name:"outputHistogram.csv"},{type:"file",name:"outputRLE.csv"},{type:"directory",name:"cwd"}],type:"job",userEmail:"juanprietob@gmail.com",executionserver:"testserver"},inputs=["/Users/prieto/NetBeansProjects/UNC/data/canine/atlas_DD_040_t1w.nrrd","/Users/prieto/NetBeansProjects/UNC/data/canine/DD_040_seg.nii.gz"],uploadfile=function(e){var t=e.filename,a=e.id;return new Promise(function(e,r){try{var o={url:"http://localhost:8180/dataprovider/"+a+"/"+path.basename(t),method:"PUT",headers:{"Content-Type":"application/octet-stream"}};fs.createReadStream(t).pipe(request(o,function(t,a,r){t&&e(t),e(r)}))}catch(e){r(e)}})},options={url:"http://localhost:8180/dataprovider",method:"POST",json:job};request(options,function(e,t,a){if(e)throw e;for(var r=a,o=[],n=0;n<inputs.length;n++)o.push({filename:inputs[n],id:r.id});Promise.map(o,uploadfile,{concurrency:1}).then(function(e){console.log(e)}).catch(console.error)});