1 | connect = require 'connect'
|
2 | createServer = require './createServer'
|
3 | machina = require('machina')()
|
4 | logger = require 'torch'
|
5 |
|
6 |
|
7 |
|
8 |
|
9 |
|
10 |
|
11 | server = new machina.Fsm
|
12 | initialState: 'offline'
|
13 | states:
|
14 | offline:
|
15 | start: ->
|
16 | port = 4000
|
17 | app = connect()
|
18 | @server = createServer port, app
|
19 |
|
20 |
|
21 |
|
22 |
|
23 |
|
24 |
|
25 | logger "Server started on #{port}"
|
26 | @transition 'online'
|
27 |
|
28 | online:
|
29 | stop: ->
|
30 | @server.close()
|
31 | @transition 'offline'
|
32 |
|
33 | logger.red server
|
34 | server.on '*', logger.yellow
|
35 |
|
36 | server.handle 'start'
|
37 | server.handle 'stop'
|