def set(self, host, port): self._host = host self._port = port self._server = SublimeWSServer()
class SublimeSocketThread(threading.Thread): def __init__(self, host, port): threading.Thread.__init__(self) self.set(host, port) # call through thread-initialize def run(self): result = self._server.start(self._host, self._port) if result is 0: pass else: self.tearDownServer() def set(self, host, port): self._host = host self._port = port self._server = SublimeWSServer() # send eventName and data to server def toServer(self, eventName, view=None): if self._server is None: pass else: # avoid empty-file if view.is_scratch(): # print "scratch buffer." return elif not view.file_name(): # print "no path" return view_file_name = view.file_name() eventParam = { SublimeSocketAPISettings.REACTOR_VIEWKEY_VIEWSELF: view, SublimeSocketAPISettings.REACTOR_VIEWKEY_ID: view.id(), SublimeSocketAPISettings.REACTOR_VIEWKEY_BUFFERID: view.buffer_id(), SublimeSocketAPISettings.REACTOR_VIEWKEY_PATH: view_file_name, SublimeSocketAPISettings.REACTOR_VIEWKEY_BASENAME: os.path.basename(view_file_name), SublimeSocketAPISettings.REACTOR_VIEWKEY_VNAME: view.name() } self._server.fireKVStoredItem(eventName, eventParam) def currentConnections(self): self._server.showCurrentStatusAndConnections() def tearDownServer(self): self._server.tearDown() self._server = None def isServerAlive(self): if not self._server: return False return True