-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathutil.js
93 lines (74 loc) · 1.92 KB
/
util.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
var http = require('http');
var https = require('https');
exports.getRemoteData = function (options, onResult)
{
var prot = options.port === 443 ? https : http;
var req = prot.request(options, function (res)
{
var output = '';
res.setEncoding('utf8');
res.on('data', function (chunk)
{
output += chunk;
});
res.on('end', function()
{
onResult(res.statusCode, output, res);
});
});
req.on('error', function (err)
{
onResult(404, err.message);
});
if (options.timeout)
{
req.on('socket', function (socket)
{
socket.setTimeout(options.timeout);
});
}
if (options.data)
{
req.write(options.data);
}
req.end();
};
var validConfigNames = [ 'development', 'production' ];
exports.loadServerConfig = function(configName)
{
var configured = false;
if (validConfigNames.indexOf(configName) >= 0)
{
for (var configGroup in config)
{
var group = config[configGroup];
if (group[configName])
{
for (var configVar in group[configName])
{
var configValue = group[configName][configVar];
if (group[configVar] !== undefined)
{
exports.log('Invalid config value: ', configGroup, configVar);
configured = false;
}
else
{
group[configVar] = configValue;
}
}
}
}
configured = true;
exports.log('Server configured successfully');
}
else
{
exports.log('Invalid config name: ', configName);
}
return configured;
};
exports.log = function()
{
console.log.apply(console, arguments);
};