def add_server(address='localhost', port=0): server = EPCServer((address, port), log_traceback=True) ch = logging.StreamHandler() ch.setLevel(logging.DEBUG) server.logger.addHandler(ch) def add(*args): return sum(map(int, args)) server.register_function(add) return server
def echo_server(address='localhost', port=0, logfilename='python-epc.log'): server = EPCServer((address, port), log_traceback=True) server.logger.setLevel(logging.DEBUG) ch = logging.FileHandler(filename=logfilename, mode='w') ch.setLevel(logging.DEBUG) server.logger.addHandler(ch) def echo(*a): """Return argument unchanged.""" return a server.register_function(echo) return server
def start_server(host='localhost', port=0): server = EPCServer((host, port)) server.register_function(asyncio_wait(run_eval)) server.register_function(code_format) server.register_function(asyncio_wait(get_completions)) server.print_port() server.serve_forever()
def main(): server = EPCServer(('localhost', 9898)) server.register_function(echo) server.register_function(get_file_def_pos) server.register_function(refresh_file_def_pos) server.print_port() server.serve_forever()
def jedi_epc_server(address='localhost', port=0, sys_path=[]): sys_path = map(os.path.expandvars, map(os.path.expanduser, sys_path)) sys.path = [''] + filter(None, sys_path + sys.path) # Workaround Jedi's module cache. Use this workaround until Jedi # got an API to set module paths. # See also: https://github.com/davidhalter/jedi/issues/36 import_jedi() from epc.server import EPCServer server = EPCServer((address, port)) server.register_function(complete) server.register_function(get_in_function_call) server.register_function(goto) server.register_function(get_definition) return server