funcnodes-react-flow 0.1.5__py3-none-any.whl → 0.1.6__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,3 +1,4 @@
1
+ from typing import Optional
1
2
  import http.server
2
3
  import socketserver
3
4
  import webbrowser
@@ -5,6 +6,7 @@ import os
5
6
  import time
6
7
  import threading
7
8
  import asyncio
9
+ import funcnodes as fn
8
10
 
9
11
  PORT = 8029
10
12
 
@@ -25,15 +27,18 @@ class CustomHTTPRequestHandler(http.server.SimpleHTTPRequestHandler):
25
27
  self.send_error(405, "Method Not Allowed")
26
28
 
27
29
  def get_worker_manager(self):
28
- import funcnodes as fn
29
-
30
30
  # Implement custom GET handling logic here
31
- asyncio.run(fn.worker.worker_manager.assert_worker_manager_running())
31
+ asyncio.run(
32
+ fn.worker.worker_manager.assert_worker_manager_running(
33
+ host=self.server.worker_manager_host,
34
+ port=self.server.worker_manager_port,
35
+ )
36
+ )
32
37
  self.send_response(200)
33
38
  self.send_header("Content-type", "text/json")
34
39
  self.end_headers()
35
40
  self.wfile.write(
36
- f"ws://{fn.config.CONFIG['worker_manager']['host']}:{fn.config.CONFIG['worker_manager']['port']}".encode(
41
+ f"ws://{self.server.worker_manager_host}:{self.server.worker_manager_port}".encode(
37
42
  "utf-8"
38
43
  )
39
44
  )
@@ -54,7 +59,22 @@ class GracefulHTTPServer(socketserver.TCPServer):
54
59
  allow_reuse_address = False
55
60
  timeout = 5
56
61
 
57
- def __init__(self, server_address, RequestHandlerClass, bind_and_activate=True):
62
+ def __init__(
63
+ self,
64
+ server_address,
65
+ RequestHandlerClass,
66
+ bind_and_activate=True,
67
+ worker_manager_host: Optional[str] = None,
68
+ worker_manager_port: Optional[int] = None,
69
+ ):
70
+ if worker_manager_host is None:
71
+ worker_manager_host = fn.config.CONFIG["worker_manager"]["host"]
72
+
73
+ if worker_manager_port is None:
74
+ worker_manager_port = fn.config.CONFIG["worker_manager"]["port"]
75
+
76
+ self.worker_manager_host = worker_manager_host
77
+ self.worker_manager_port = worker_manager_port
58
78
  super().__init__(server_address, RequestHandlerClass, bind_and_activate)
59
79
  self._is_serving = True
60
80
 
@@ -71,14 +91,29 @@ def _open_browser(port, delay=1.0):
71
91
  webbrowser.open(f"http://localhost:{port}")
72
92
 
73
93
 
74
- def run_server(port=PORT, open_browser=True):
94
+ def run_server(
95
+ port=PORT,
96
+ open_browser=True,
97
+ worker_manager_host: Optional[str] = None,
98
+ worker_manager_port: Optional[int] = None,
99
+ ):
75
100
  import funcnodes as fn
76
101
 
77
- asyncio.run(fn.worker.worker_manager.assert_worker_manager_running())
102
+ asyncio.run(
103
+ fn.worker.worker_manager.assert_worker_manager_running(
104
+ host=worker_manager_host,
105
+ port=worker_manager_port,
106
+ )
107
+ )
78
108
  try:
79
109
  script_directory = os.path.dirname(os.path.abspath(__file__))
80
110
  os.chdir(script_directory)
81
- httpd = GracefulHTTPServer(("", port), CustomHTTPRequestHandler)
111
+ httpd = GracefulHTTPServer(
112
+ ("", port),
113
+ CustomHTTPRequestHandler,
114
+ worker_manager_host=worker_manager_host,
115
+ worker_manager_port=worker_manager_port,
116
+ )
82
117
  print(f"Serving at port {port}")
83
118
  if open_browser:
84
119
  threading.Thread(target=_open_browser, args=(port,), daemon=True).start()
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: funcnodes_react_flow
3
- Version: 0.1.5
3
+ Version: 0.1.6
4
4
  Summary: funcnodes frontend for react flow
5
5
  Author: Julian Kimmig
6
6
  Author-email: julian.kimmig@linkdlab.de
@@ -18,8 +18,8 @@ funcnodes_react_flow/logo192.png,sha256=XAIrH5_B6T77mW4eEP2emYcTkprrwuokSWKoy27v
18
18
  funcnodes_react_flow/logo512.png,sha256=9SEEPsgJusj_-fxvDf11ea2YpUKXOdLhSPT3DNRw9e8,65653
19
19
  funcnodes_react_flow/manifest.json,sha256=ULPYw5A68_eNhxuUVXqxT045yhkurKPSz6hjyGcnmhQ,492
20
20
  funcnodes_react_flow/robots.txt,sha256=kNJLw79pisHhc3OVAimMzKcq3x9WT6sF9IS4xI0crdI,67
21
- funcnodes_react_flow/run.py,sha256=8hLzKI0eIRwHMDfhg_uA_raRnA9XukB5-k_Bpdr__0M,2989
22
- funcnodes_react_flow-0.1.5.dist-info/METADATA,sha256=bjduSbFOI6U6qTrfXTqLmQEdPJHUIAMnFfBLQONu5Nk,433
23
- funcnodes_react_flow-0.1.5.dist-info/WHEEL,sha256=sP946D7jFCHeNz5Iq4fL4Lu-PrWrFsgfLXbbkciIZwg,88
24
- funcnodes_react_flow-0.1.5.dist-info/entry_points.txt,sha256=FbrfqRLScFuNXaVpoyfz7lPcSjTlRf4G06ZUZhTgJMM,75
25
- funcnodes_react_flow-0.1.5.dist-info/RECORD,,
21
+ funcnodes_react_flow/run.py,sha256=tVZASrcYFq-9CD6l8i2k0dLM689R9Ck6yGrRXw829Zo,3961
22
+ funcnodes_react_flow-0.1.6.dist-info/METADATA,sha256=-VXFFj_n5ekSnq3gh4mPPe4hwMEOBcDzgRN3KRAJ66Y,433
23
+ funcnodes_react_flow-0.1.6.dist-info/WHEEL,sha256=sP946D7jFCHeNz5Iq4fL4Lu-PrWrFsgfLXbbkciIZwg,88
24
+ funcnodes_react_flow-0.1.6.dist-info/entry_points.txt,sha256=FbrfqRLScFuNXaVpoyfz7lPcSjTlRf4G06ZUZhTgJMM,75
25
+ funcnodes_react_flow-0.1.6.dist-info/RECORD,,