put a unique end of stream marker in the session dictionary

This commit is contained in:
Brian Gough 2015-03-11 16:58:22 +00:00
parent a655041bdd
commit b684ed0837

View file

@ -45,6 +45,7 @@ class ASpellWorker
# receive the end of data marker
@state = 'busy'
@callback = callback
@setEndOfStreamMarker()
@setTerseMode()
@write(words)
@flush()
@ -60,7 +61,7 @@ class ASpellWorker
flush: () ->
# get aspell to send an end of data marker "*" when ready
@sendCommand("%") # take the aspell pipe out of terse mode so we can look for a '*'
@sendCommand("end") # send a valid word ("end") so it will generate a '*'
@sendCommand("^ENDOFSTREAMMARKER") # send our marker which will generate a '*'
@sendCommand("!") # go back into terse mode
shutdown: (reason) ->
@ -68,6 +69,11 @@ class ASpellWorker
@state = "closing"
@pipe.stdin.end()
setEndOfStreamMarker: () ->
return if @setup
@sendCommand("@ENDOFSTREAMMARKER") # make this string a valid word
@setup = true
setTerseMode: () ->
@sendCommand("!")