« get me outta code hell

rename telnet-server.js to telnet.js - mtui - Music Text User Interface - user-friendly command line music player
about summary refs log tree commit diff
path: root/telnet-server.js
diff options
context:
space:
mode:
authorFlorrie <towerofnix@gmail.com>2020-07-10 11:24:23 -0300
committerFlorrie <towerofnix@gmail.com>2020-07-10 11:30:05 -0300
commit7ea3291db7dd2de13e9f07005e83524711f086af (patch)
treed937f9c2a9a2937a0ffe4bdd0611b943180eb9ee /telnet-server.js
parent20f8491545c3b598cc6bba893bc79db5cf6bcb1f (diff)
rename telnet-server.js to telnet.js
...for consistency with a socket.js (coming soon to a theater near you!)
Diffstat (limited to 'telnet-server.js')
-rw-r--r--telnet-server.js81
1 files changed, 0 insertions, 81 deletions
diff --git a/telnet-server.js b/telnet-server.js
deleted file mode 100644
index 33e3dcc..0000000
--- a/telnet-server.js
+++ /dev/null
@@ -1,81 +0,0 @@
-'use strict'
-
-const EventEmitter = require('events')
-const net = require('net')
-const setupClient = require('./client')
-
-const {
-  util: {
-    TelnetInterfacer
-  }
-} = require('tui-lib')
-
-class TelnetServer extends EventEmitter {
-  constructor(backend) {
-    super()
-
-    this.backend = backend
-    this.server = new net.Server(socket => this.handleConnection(socket))
-    this.sockets = []
-  }
-
-  listen(port) {
-    this.server.listen(port)
-  }
-
-  async handleConnection(socket) {
-    const interfacer = new TelnetInterfacer(socket)
-    const { appElement, cleanTerminal, flushable } = await setupClient({
-      backend: this.backend,
-      writable: socket,
-      interfacer,
-      appConfig: {
-        canControlPlayback: false,
-        canControlQueue: true,
-        canControlQueuePlayers: false,
-        canProcessMetadata: false,
-        canSuspend: false,
-        showTabberPane: true,
-        stopPlayingUponQuit: false,
-        menubarColor: 2
-      }
-    })
-
-    appElement.attachAsServerClient(this)
-
-    let closed = false
-
-    const quit = (msg = 'See you!') => {
-      cleanTerminal()
-      interfacer.cleanTelnetOptions()
-      socket.write('\r' + msg + '\r\n')
-      socket.end()
-      flushable.end()
-      closed = true
-      this.sockets.splice(this.sockets.indexOf(socket), 1)
-    }
-
-    appElement.on('quitRequested', quit)
-
-    socket.on('close', () => {
-      if (!closed) {
-        flushable.end()
-        closed = true
-        this.sockets.splice(this.sockets.indexOf(socket), 1)
-      }
-      this.emit('left', socket)
-    })
-
-    socket.quit = quit
-    this.sockets.push(socket)
-    this.emit('joined', socket)
-  }
-
-  disconnectAllSockets(msg) {
-    while (this.sockets.length) {
-      this.sockets[0].quit(msg)
-    }
-  }
-}
-
-module.exports = TelnetServer