Initial service app implementation
[platform/framework/web/crosswalk-tizen.git] / wrt / src / main.js
1 'use strict';
2
3 const path_debug = require('debug')('MAIN');
4 const runtime = require('./runtime');
5 const yargs = require('yargs');
6
7 // FIXME : temporary fix for log
8 {
9     let originalDebug = process.env.DEBUG;
10     require('debug').enable('*');
11     if (originalDebug === undefined)
12         delete process.env.DEBUG;
13     else
14         process.env.DEBUG = originalDebug;
15 }
16
17 let parseCommandLine = function() {
18     let options = yargs(process.argv.slice(1)).wrap(80);
19     options.usage('WebRuntime');
20     options.alias('a', 'appid').string('a').describe('a', 'Set application id to load');
21     options.alias('d', 'dev-mode').boolean('d').describe('d', 'Run in development mode.');
22     options.alias('h', 'help').boolean('h').describe('h', 'Print this usage message.');
23     options.alias('p', 'path').string('p').describe('p', 'Set contents path to load');
24     options.alias('s', 'window-size').string('s').describe('s', 'Set the window size');
25     let args = options.argv;
26     if (args.help) {
27         process.stdout.write(options.help());
28         process.exit(0);
29     }
30
31     return {
32         appID: args.a,
33         devMode: args.d,
34         path: args.p,
35         windowSize: args.s
36     };
37 };
38
39 ((args) => {
40     path_debug('args : ' + (JSON.stringify(args)));
41     new runtime(args);
42 })(parseCommandLine());