module Solargraph::LanguageServer::Transport::Adapter

def closing

def closing
  @host.stop
end

def opening

def opening
  @host = Solargraph::LanguageServer::Host.new
  @host.add_observer self
  @host.start
  @data_reader = Solargraph::LanguageServer::Transport::DataReader.new
  @data_reader.set_message_handler do |message|
    process message
  end
end

def process request

Returns:
  • (void) -

Parameters:
  • request (String) --
def process request
  @host.process(request)
end

def receiving data

Parameters:
  • data (String) --
def receiving data
  @data_reader.receive data
end

def shutdown

def shutdown
  Backport.stop unless @host.options['transport'] == 'external'
end

def update

def update
  if @host.stopped?
    shutdown
  else
    tmp = @host.flush
    write tmp unless tmp.empty?
  end
end