RefactoringRope/RefactoringClient.py

Mon, 11 Sep 2017 19:15:44 +0200

author
Detlev Offenbach <detlev@die-offenbachs.de>
date
Mon, 11 Sep 2017 19:15:44 +0200
branch
server_client_variant
changeset 161
f5d6fb1a009b
child 162
55eaaed9d590
permissions
-rw-r--r--

Added the client file.

161
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
1 # -*- coding: utf-8 -*-
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
2
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
3 # Copyright (c) 2017 Detlev Offenbach <detlev@die-offenbachs.de>
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
4 #
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
5
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
6 """
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
7 Module implementing the refactoring client interface to rope.
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
8 """
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
9
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
10 from __future__ import unicode_literals
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
11
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
12 import sys
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
13 import os
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
14
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
15 sys.path.insert(0, os.path.dirname(__file__))
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
16 if sys.version_info[0] >= 3:
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
17 path = os.path.join(os.path.dirname(__file__), 'rope_py3')
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
18 else:
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
19 path = os.path.join(os.path.dirname(__file__), 'rope_py2')
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
20 sys.path.insert(0, path)
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
21
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
22 try:
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
23 bytes = unicode
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
24 import StringIO as io # __IGNORE_EXCEPTION__
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
25 except NameError:
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
26 import io # __IGNORE_WARNING__
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
27
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
28 import socket
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
29 import select
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
30 import traceback
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
31 import time
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
32 import json
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
33
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
34 import rope.base.project
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
35
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
36
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
37 class RefactoringClient(object):
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
38 """
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
39 Class implementing the refactoring client interface to rope.
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
40 """
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
41 def __init__(self, host, port, projectPath):
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
42 """
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
43 Constructor
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
44
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
45 @param host ip address the background service is listening
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
46 @type str
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
47 @param port port of the background service
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
48 @type int
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
49 @param projectPath path to the project
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
50 @type str
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
51 """
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
52 self.__connection = socket.create_connection((host, port))
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
53
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
54 self.__projectpath = projectPath
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
55 self.__project = rope.base.project.Project(
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
56 self.__projectpath)#, fscommands=self.__fsCommands)
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
57
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
58 def __processJson(self, jsonStr):
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
59 """
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
60 Public method to handle a command serialized as a JSON string.
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
61
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
62 @param jsonStr string containing the command received from the IDE
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
63 @type str
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
64 """
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
65 try:
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
66 commandDict = json.loads(jsonStr.strip())
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
67 except (TypeError, ValueError) as err:
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
68 self.__sendJson("ClientException", {
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
69 "ExceptionType": "ProtocolError",
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
70 "ExceptionValue": str(err),
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
71 "ProtocolData": jsonStr.strip(),
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
72 })
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
73 return
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
74
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
75 method = commandDict["method"]
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
76 params = commandDict["params"]
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
77 if "filename" in params and sys.version_info[0] == 2:
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
78 params["filename"] = params["filename"].encode(
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
79 sys.getfilesystemencoding())
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
80
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
81 if method == "ping":
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
82 self.__sendJson("pong", {})
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
83
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
84 def __sendJson(self, command, params):
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
85 """
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
86 Private method to send a single refactoring command to the client.
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
87
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
88 @param command command name to be sent
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
89 @type str
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
90 @param params dictionary of named parameters for the command
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
91 @type dict
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
92 """
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
93 import json
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
94
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
95 commandDict = {
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
96 "jsonrpc": "2.0",
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
97 "method": command,
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
98 "params": params,
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
99 }
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
100 cmd = json.dumps(commandDict) + '\n'
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
101 self.__connection.sendall(cmd.encode('utf8', 'backslashreplace'))
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
102
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
103 def __receiveJson(self):
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
104 """
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
105 Private method to receive a JSON encode command and data from the
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
106 server.
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
107 """
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
108 line = self.__connection.recv(1024 * 1024, socket.MSG_PEEK) # 1M buffer
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
109
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
110 eol = line.find(b'\n')
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
111
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
112 if eol >= 0:
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
113 size = eol + 1
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
114
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
115 # Now we know how big the line is, read it for real.
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
116 line = self.__connection.recv(size).decode(
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
117 'utf8', 'backslashreplace')
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
118 self.__processJson(line)
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
119
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
120 def run(self):
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
121 """
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
122 Public method implementing the main loop of the client.
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
123 """
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
124 try:
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
125 while True:
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
126 try:
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
127 rrdy, wrdy, xrdy = select.select(
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
128 [self.__connection], [self.__connection], [])
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
129 except (select.error, KeyboardInterrupt, socket.error):
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
130 # just carry on
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
131 continue
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
132
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
133 if self.__connection in rrdy:
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
134 self.__receiveJson()
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
135 ##
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
136 ## if self.__connection in wrdy:
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
137 ## self.__connection.flush()
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
138
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
139 except Exception:
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
140 exctype, excval, exctb = sys.exc_info()
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
141 tbinfofile = io.StringIO()
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
142 traceback.print_tb(exctb, None, tbinfofile)
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
143 tbinfofile.seek(0)
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
144 tbinfo = tbinfofile.read()
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
145 del exctb
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
146 self.__sendJson("ClientException", {
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
147 "ExceptionType": str(exctype),
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
148 "ExceptionValue": str(excval),
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
149 "Traceback": tbinfo,
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
150 })
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
151
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
152 # Give time to process latest response on server side
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
153 time.sleep(0.5)
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
154 self.__connection.shutdown(socket.SHUT_RDWR)
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
155 self.__connection.close()
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
156
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
157 if __name__ == '__main__':
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
158 if len(sys.argv) != 4:
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
159 print('Host, port and project path parameters are missing. Abort.')
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
160 sys.exit(1)
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
161
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
162 host, port, projectPath = sys.argv[1:]
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
163 client = RefactoringClient(host, int(port), projectPath)
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
164 # Start the main loop
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
165 client.run()
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
166
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
167 #
f5d6fb1a009b Added the client file.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
168 # eflag: noqa = M801

eric ide

mercurial