var readline = require('readline');
var child_process = require('child_process');
var delta = require('./js/json_delta.js');
+var hash_lookup = require('./js/hash-lookup.js');
// Constants.
var HISTORY_TO_KEEP = 5;
json_filename = process.argv[2];
}
-// Expected destination filename.
+// Expected destination filenames.
var serve_url = '/analysis.pl';
+var hash_serve_url = '/hash';
if (process.argv.length >= 4) {
serve_url = process.argv[3];
}
+if (process.argv.length >= 5) {
+ hash_serve_url = process.argv[4];
+}
// TCP port to listen on.
var port = 5000;
json_lock = 1;
console.log("Rereading " + json_filename);
- fs.open(json_filename, 'r+', function(err, fd) {
+ fs.open(json_filename, 'r', function(err, fd) {
if (err) throw err;
fs.fstat(fd, function(err, st) {
if (err) throw err;
if (now - uniques[unique].grace > 5000) {
log("Timing out " + unique + " (last_seen=" + last_seen + ", now=" + now +
", mtime=" + mtime, ", grace=" + uniques[unique].grace + ")");
- delete uniques[unique]; // ???
+ delete uniques[unique];
--num_viewers;
}
}
var unique = (u.query)['unique'];
log(request.url);
+ if (u.pathname === hash_serve_url) {
+ var fen = (u.query)['fen'];
+ hash_lookup.handle_request(fen, response);
+ return;
+ }
if (u.pathname !== serve_url) {
// This is not the request you are looking for.
send_404(response);