Skip to content

Commit 86d7154

Browse files
Splitted Python files.
1 parent cc54e83 commit 86d7154

5 files changed

+79
-20
lines changed

pharo_hooks_globals.py __init__.py

File renamed without changes.

bridge_globals.py

Whitespace-only changes.

bridge_hooks.py

+53
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,53 @@
1+
from flask import Flask, request
2+
import http.client
3+
import argparse
4+
import threading
5+
import json
6+
import sys
7+
from PythonBridge import bridge_globals
8+
9+
def convert_to_JSON(obj):
10+
return json.dumps(obj)
11+
12+
def convert_from_JSON(text):
13+
return json.loads(text)
14+
15+
#### NOTIFICATION FUNCTIONS
16+
def notify(obj, notificationId):
17+
bridge_globals.logger.log("PYTHON: Notify " + str(notificationId))
18+
data = {}
19+
data["id"] = notificationId
20+
data["value"] = convert_to_JSON(obj)
21+
conn = http.client.HTTPConnection("localhost", str(bridge_globals.pharoPort))
22+
conn.request("POST", "/notify", json.dumps(data), {
23+
"Content-type": "application/json",
24+
"Accept": "text/plain"})
25+
conn.getresponse()
26+
bridge_globals.logger.log("PYTHON: Finish notify")
27+
28+
def notify_observer(obj, commandId, observerId):
29+
bridge_globals.logger.log("PYTHON: Notify observer " + str(commandId) + " " + str(observerId))
30+
data = {}
31+
data["commandId"] = commandId
32+
data["observerId"] = observerId
33+
data["value"] = convert_to_JSON(obj)
34+
conn = http.client.HTTPConnection("localhost", str(bridge_globals.pharoPort))
35+
conn.request("POST", "/notifyObserver", json.dumps(data), {
36+
"Content-type": "application/json",
37+
"Accept": "text/plain"})
38+
conn.getresponse()
39+
bridge_globals.logger.log("PYTHON: Finish notify observer")
40+
41+
def notify_error(ex, command):
42+
bridge_globals.logger.log("Error on command: " + str(command.command_id()))
43+
bridge_globals.logger.log(str(ex))
44+
data = {}
45+
data["errMsg"] = str(ex)
46+
data["id"] = command.command_id()
47+
conn = http.client.HTTPConnection("localhost", str(bridge_globals.pharoPort))
48+
conn.request("POST", "/notifyError", json.dumps(data), {
49+
"Content-type": "application/json",
50+
"Accept": "text/plain"})
51+
response = str(conn.getresponse().read().decode())
52+
bridge_globals.logger.log(response)
53+
return json.loads(response)

pharo_hooks.py python_bridge.py

+23-20
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
import threading
55
import json
66
import sys
7-
from . import pharo_hooks_globals
7+
from PythonBridge import bridge_globals, bridge_hooks
88

99
class ThreadedFlask():
1010
def __init__(self, flaskApp, port):
@@ -128,45 +128,45 @@ def convert_from_JSON(text):
128128

129129
#### NOTIFICATION FUNCTIONS
130130
def notify(obj, notificationId):
131-
pharo_hooks_globals.logger.log("PYTHON: Notify " + str(notificationId))
131+
bridge_globals.logger.log("PYTHON: Notify " + str(notificationId))
132132
data = {}
133133
data["id"] = notificationId
134134
data["value"] = convert_to_JSON(obj)
135-
conn = http.client.HTTPConnection("localhost", str(pharo_hooks_globals.pharoPort))
135+
conn = http.client.HTTPConnection("localhost", str(bridge_globals.pharoPort))
136136
conn.request("POST", "/notify", json.dumps(data), {
137137
"Content-type": "application/json",
138138
"Accept": "text/plain"})
139139
conn.getresponse()
140-
pharo_hooks_globals.logger.log("PYTHON: Finish notify")
140+
bridge_globals.logger.log("PYTHON: Finish notify")
141141

142142
def notify_observer(obj, commandId, observerId):
143-
pharo_hooks_globals.logger.log("PYTHON: Notify observer " + str(commandId) + " " + str(observerId))
143+
bridge_globals.logger.log("PYTHON: Notify observer " + str(commandId) + " " + str(observerId))
144144
data = {}
145145
data["commandId"] = commandId
146146
data["observerId"] = observerId
147147
data["value"] = convert_to_JSON(obj)
148-
conn = http.client.HTTPConnection("localhost", str(pharo_hooks_globals.pharoPort))
148+
conn = http.client.HTTPConnection("localhost", str(bridge_globals.pharoPort))
149149
conn.request("POST", "/notifyObserver", json.dumps(data), {
150150
"Content-type": "application/json",
151151
"Accept": "text/plain"})
152152
conn.getresponse()
153-
pharo_hooks_globals.logger.log("PYTHON: Finish notify observer")
153+
bridge_globals.logger.log("PYTHON: Finish notify observer")
154154

155155
def notify_error(ex, command):
156-
pharo_hooks_globals.logger.log("Error on command: " + str(command.command_id()))
157-
pharo_hooks_globals.logger.log(str(ex))
156+
bridge_globals.logger.log("Error on command: " + str(command.command_id()))
157+
bridge_globals.logger.log(str(ex))
158158
data = {}
159159
data["errMsg"] = str(ex)
160160
data["id"] = command.command_id()
161-
conn = http.client.HTTPConnection("localhost", str(pharo_hooks_globals.pharoPort))
161+
conn = http.client.HTTPConnection("localhost", str(bridge_globals.pharoPort))
162162
conn.request("POST", "/notifyError", json.dumps(data), {
163163
"Content-type": "application/json",
164164
"Accept": "text/plain"})
165165
response = str(conn.getresponse().read().decode())
166-
pharo_hooks_globals.logger.log(response)
166+
bridge_globals.logger.log(response)
167167
return json.loads(response)
168168

169-
if __name__ == "__main__":
169+
def run_bridge():
170170
##### FLASK API
171171
app = Flask(__name__)
172172
app.use_reloader=False
@@ -194,22 +194,25 @@ def status_endpoint():
194194
help="enable logging")
195195
args = vars(ap.parse_args())
196196

197-
pharo_hooks_globals.pharoPort = args["pharo"]
197+
bridge_globals.pharoPort = args["pharo"]
198198
if args["log"]:
199199
print("YES LOG")
200-
pharo_hooks_globals.logger = Logger()
200+
bridge_globals.logger = Logger()
201201
else:
202202
print("NO LOG")
203-
pharo_hooks_globals.logger = NoLogger()
204-
pharo_hooks_globals.pyPort = args["port"]
203+
bridge_globals.logger = NoLogger()
204+
bridge_globals.pyPort = args["port"]
205205
globalCommandList = PythonCommandList()
206206
env = clean_locals_env()
207207

208-
ThreadedFlask(app,int(pharo_hooks_globals.pyPort))
208+
ThreadedFlask(app,int(bridge_globals.pyPort))
209209

210210
while True:
211211
command = globalCommandList.consume_command()
212-
pharo_hooks_globals.logger.log("PYTHON: Executing command " + command.command_id())
213-
pharo_hooks_globals.logger.log("PYTHON: " + command.statements)
212+
bridge_globals.logger.log("PYTHON: Executing command " + command.command_id())
213+
bridge_globals.logger.log("PYTHON: " + command.statements)
214214
command.execute_using_env(env)
215-
pharo_hooks_globals.logger.log("PYTHON: Finished command execution")
215+
bridge_globals.logger.log("PYTHON: Finished command execution")
216+
217+
if __name__ == "__main__":
218+
run_bridge()

start_bridge.py

+3
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
from PythonBridge import python_bridge
2+
3+
python_bridge.run_bridge()

0 commit comments

Comments
 (0)