Skip to content
This repository has been archived by the owner on Sep 23, 2023. It is now read-only.

Commit

Permalink
Ask the user the IP to use
Browse files Browse the repository at this point in the history
  • Loading branch information
Javier López committed Jan 31, 2013
1 parent 0ef9174 commit b0ca058
Show file tree
Hide file tree
Showing 3 changed files with 55 additions and 15 deletions.
59 changes: 49 additions & 10 deletions app.js
Original file line number Diff line number Diff line change
Expand Up @@ -27,24 +27,63 @@ try {
process.exit(1);
}

Array.prototype.equals = function (otherArray) {
return !(this < otherArray || otherArray < this);
}



if (!config.serverHost) {
console.error("Please specify a valid hostname or IP for your computer using the \"-h\" command-line parameter.");
process.exit(1);

var ips = scanAvailableIPs();
if (ips.length > 1) {
console.log("Cannot decide which IP to use, please specify one of these");
ips.forEach(function(ip, i) {
console.log('[', i + 1, ']:', ip);
})

var prompt = require('prompt');
prompt.start();
prompt.get({name: 'selection', validator: /^\d{1}$/, empty: false}, function(err, result) {
var ip = ips[result.selection - 1];
console.log('Choosen option', ip);
config.serverHost = ip;
startApp();
})
} else {
config.serverHost = ips[0];
startApp();
}
} else {
startApp();
}

Array.prototype.equals = function (otherArray) {
return !(this < otherArray || otherArray < this);
function scanAvailableIPs() {
var os = require('os');
var interfaces = os.networkInterfaces(),
ips = [];
for (var dev in interfaces) {
interfaces[dev].forEach(function(details){
if (details.family == 'IPv4' && details.address != '127.0.0.1') {
ips.push(details.address);
}
});
}
return ips;
}

function startApp() {
var server = require('./server/server.js');
server.run();

var rewriterServer = require('./server/rewriter-server.js');
rewriterServer.run();

var server = require('./server/server.js');
server.run();
/*var debugFileServer = require('./server/debug-file-server.js');
debugFileServer.run();*/
}

var rewriterServer = require('./server/rewriter-server.js');
rewriterServer.run();


/*var debugFileServer = require('./server/debug-file-server.js');
debugFileServer.run();*/


2 changes: 1 addition & 1 deletion config/config.defaults.js
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ var fs = require('fs');
config.verbose = false;

/* Hostname or IP of the local machine */
config.serverHost = '';
config.serverHost = ''; // Can be retrieved automatically or asked to the user

/* port on which the server listens for requests */
config.serverPort = 8000;
Expand Down
9 changes: 5 additions & 4 deletions package.json
Original file line number Diff line number Diff line change
@@ -1,12 +1,13 @@
{
"name": "aardwolf",
"description": "Aardwolf debugger",
"name": "aardwolf-plus",
"description": "Aardwolf++ debugger",
"url": "http://lexandera.com/aardwolf",
"author": "Aleksander Kmetec <aleksander.kmetec@gmail.com>",
"author": "Aleksander Kmetec <aleksander.kmetec@gmail.com>. Javier López <jlopez@tid.es>",
"dependencies": {
"coffee-script": "1.1.2",
"optimist": "0.2.6",
"node-watch": "0.2.4"
"node-watch": "0.2.4",
"prompt": "0.2.9"
},
"version": "0.0.0"
}

0 comments on commit b0ca058

Please sign in to comment.