fkc
Version:
FKC application service framework.
58 lines (57 loc) • 1.48 kB
JavaScript
;
function createApp() {
const obj = {};
const body = require('./parser');
const err = require('../json/error');
const {host,config} = require('./host');
const {port:isport,def:isDef,number} = require('../type');
const ports = (e,p)=>{
if(!isport(p)){
obj.err = e + err.port[1]+':'+p;
}
obj[e] = p;
}
const http = (port)=>{
ports('http',port);
return main();
}
const https = (port)=>{
ports('https',port);
return main();
}
const end = (callback) =>{
if(obj.end) return;
if(callback&&!isDef(callback)) obj.err = err.end;
if(obj.err) {
console.log(obj.err);
return;
}
if(isDef(callback)) obj.defs = callback;
obj.end = true;
config(obj);//开启server
}
const cluster = (QTY)=>{
if(!number(QTY)) {
obj.err = err.cluster+':'+QTY;
}
obj.cluster = QTY
return main();
}
const main = ()=> {
let mdf = {};
if(!obj.end) mdf = {...mdf,...{end}}
if(!obj.http) mdf = {...mdf,...{http}}
if(!obj.https) mdf = {...mdf,...{https}}
if(!obj.cluster) mdf = {...mdf,...{cluster}}
return mdf
}
return {
end,
host,
http,
body,
https,
cluster
}
}
module.exports = createApp