-
Notifications
You must be signed in to change notification settings - Fork 38
Expand file tree
/
Copy pathserver.js
More file actions
35 lines (31 loc) · 1.15 KB
/
server.js
File metadata and controls
35 lines (31 loc) · 1.15 KB
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
global.casimir = require('./casimir')
var casimir = global.casimir
var server = casimir.server
var path = require('path')
var cp = require('child_process')
function tryStartColoredCoinsFullNode () {
var fullNodeModulePath = path.join(__dirname, 'node_modules/coloredcoins-full-node')
var fullNodeEntry = require(path.join(fullNodeModulePath, 'package.json')).main
var fullNodeServerPath = path.join(fullNodeModulePath, fullNodeEntry)
var fullNodeServer = cp.fork(fullNodeServerPath, [], {stdio: ['ignore', 'ignore', process.stderr, 'ipc']})
fullNodeServer.on('close', function (code) {
if (code === 0 || code === 2) return
console.error('fullNodeServer closed with code,', code)
})
fullNodeServer.on('error', function (code) {
if (code === 0 || code === 2) return
console.error('fullNodeServer exited with error code,', code)
})
}
module.exports = {
init: function (properties, cb) {
if (properties.fullNodeAutoRun) {
tryStartColoredCoinsFullNode()
}
server.http_server.listen(server.port, function (err) {
if (err) return cb(err)
console.log('Server started on port', server.port)
cb()
})
}
}