fix merge conflict
This commit is contained in:
commit
9cd756f2dc
18 changed files with 126 additions and 56 deletions
|
@ -65,8 +65,13 @@ class ConfigServiceConfigDialog(Dialog):
|
|||
self.config_frame = None
|
||||
self.default_config = None
|
||||
self.config = None
|
||||
|
||||
self.has_error = False
|
||||
|
||||
self.load()
|
||||
self.draw()
|
||||
|
||||
if not self.has_error:
|
||||
self.draw()
|
||||
|
||||
def load(self):
|
||||
try:
|
||||
|
@ -106,7 +111,8 @@ class ConfigServiceConfigDialog(Dialog):
|
|||
self.modified_files.add(file)
|
||||
self.temp_service_files[file] = data
|
||||
except grpc.RpcError as e:
|
||||
show_grpc_error(e)
|
||||
self.has_error = True
|
||||
show_grpc_error(e, self.app, self.app)
|
||||
|
||||
def draw(self):
|
||||
self.top.columnconfigure(0, weight=1)
|
||||
|
@ -327,7 +333,7 @@ class ConfigServiceConfigDialog(Dialog):
|
|||
all_current = current_listbox.get(0, tk.END)
|
||||
current_listbox.itemconfig(all_current.index(self.service_name), bg="green")
|
||||
except grpc.RpcError as e:
|
||||
show_grpc_error(e)
|
||||
show_grpc_error(e, self.top, self.app)
|
||||
self.destroy()
|
||||
|
||||
def handle_template_changed(self, event: tk.Event):
|
||||
|
|
|
@ -65,14 +65,16 @@ class EmaneModelDialog(Dialog):
|
|||
self.model = f"emane_{model}"
|
||||
self.interface = interface
|
||||
self.config_frame = None
|
||||
self.has_error = False
|
||||
try:
|
||||
self.config = self.app.core.get_emane_model_config(
|
||||
self.node.id, self.model, self.interface
|
||||
)
|
||||
self.draw()
|
||||
except grpc.RpcError as e:
|
||||
show_grpc_error(e)
|
||||
show_grpc_error(e, self.app, self.app)
|
||||
self.has_error = True
|
||||
self.destroy()
|
||||
self.draw()
|
||||
|
||||
def draw(self):
|
||||
self.top.columnconfigure(0, weight=1)
|
||||
|
@ -225,7 +227,8 @@ class EmaneConfigDialog(Dialog):
|
|||
dialog = EmaneModelDialog(
|
||||
self, self.app, self.canvas_node.core_node, model_name
|
||||
)
|
||||
dialog.show()
|
||||
if not dialog.has_error:
|
||||
dialog.show()
|
||||
|
||||
def emane_model_change(self, event: tk.Event):
|
||||
"""
|
||||
|
|
|
@ -29,12 +29,14 @@ class MobilityConfigDialog(Dialog):
|
|||
self.canvas_node = canvas_node
|
||||
self.node = canvas_node.core_node
|
||||
self.config_frame = None
|
||||
self.has_error = False
|
||||
try:
|
||||
self.config = self.app.core.get_mobility_config(self.node.id)
|
||||
self.draw()
|
||||
except grpc.RpcError as e:
|
||||
show_grpc_error(e)
|
||||
self.has_error = True
|
||||
show_grpc_error(e, self.app, self.app)
|
||||
self.destroy()
|
||||
self.draw()
|
||||
|
||||
def draw(self):
|
||||
self.top.columnconfigure(0, weight=1)
|
||||
|
|
|
@ -153,7 +153,7 @@ class MobilityPlayerDialog(Dialog):
|
|||
session_id, self.node.id, MobilityAction.START
|
||||
)
|
||||
except grpc.RpcError as e:
|
||||
show_grpc_error(e)
|
||||
show_grpc_error(e, self.top, self.app)
|
||||
|
||||
def click_pause(self):
|
||||
self.set_pause()
|
||||
|
@ -163,7 +163,7 @@ class MobilityPlayerDialog(Dialog):
|
|||
session_id, self.node.id, MobilityAction.PAUSE
|
||||
)
|
||||
except grpc.RpcError as e:
|
||||
show_grpc_error(e)
|
||||
show_grpc_error(e, self.top, self.app)
|
||||
|
||||
def click_stop(self):
|
||||
self.set_stop()
|
||||
|
@ -173,4 +173,4 @@ class MobilityPlayerDialog(Dialog):
|
|||
session_id, self.node.id, MobilityAction.STOP
|
||||
)
|
||||
except grpc.RpcError as e:
|
||||
show_grpc_error(e)
|
||||
show_grpc_error(e, self.top, self.app)
|
||||
|
|
|
@ -124,7 +124,8 @@ class NodeConfigServiceDialog(Dialog):
|
|||
service_name=self.current.listbox.get(current_selection[0]),
|
||||
node_id=self.node_id,
|
||||
)
|
||||
dialog.show()
|
||||
if not dialog.has_error:
|
||||
dialog.show()
|
||||
else:
|
||||
messagebox.showinfo(
|
||||
"Node service configuration", "Select a service to configure"
|
||||
|
|
|
@ -140,7 +140,12 @@ class NodeServiceDialog(Dialog):
|
|||
service_name=self.current.listbox.get(current_selection[0]),
|
||||
node_id=self.node_id,
|
||||
)
|
||||
dialog.show()
|
||||
|
||||
# if error occurred when creating ServiceConfigDialog, don't show the dialog
|
||||
if not dialog.has_error:
|
||||
dialog.show()
|
||||
else:
|
||||
dialog.destroy()
|
||||
else:
|
||||
messagebox.showinfo(
|
||||
"Node service configuration", "Select a service to configure"
|
||||
|
|
|
@ -64,10 +64,14 @@ class ServiceConfigDialog(Dialog):
|
|||
self.original_service_files = {}
|
||||
self.temp_service_files = {}
|
||||
self.modified_files = set()
|
||||
self.load()
|
||||
self.draw()
|
||||
|
||||
def load(self):
|
||||
self.has_error = False
|
||||
|
||||
self.load()
|
||||
if not self.has_error:
|
||||
self.draw()
|
||||
|
||||
def load(self) -> bool:
|
||||
try:
|
||||
self.app.core.create_nodes_and_links()
|
||||
default_config = self.app.core.get_node_service(
|
||||
|
@ -109,7 +113,8 @@ class ServiceConfigDialog(Dialog):
|
|||
for file, data in file_configs[self.node_id][self.service_name].items():
|
||||
self.temp_service_files[file] = data
|
||||
except grpc.RpcError as e:
|
||||
show_grpc_error(e)
|
||||
self.has_error = True
|
||||
show_grpc_error(e, self.master, self.app)
|
||||
|
||||
def draw(self):
|
||||
self.top.columnconfigure(0, weight=1)
|
||||
|
@ -444,7 +449,7 @@ class ServiceConfigDialog(Dialog):
|
|||
all_current = current_listbox.get(0, tk.END)
|
||||
current_listbox.itemconfig(all_current.index(self.service_name), bg="green")
|
||||
except grpc.RpcError as e:
|
||||
show_grpc_error(e)
|
||||
show_grpc_error(e, self.top, self.app)
|
||||
self.destroy()
|
||||
|
||||
def display_service_file_data(self, event: tk.Event):
|
||||
|
|
|
@ -17,8 +17,10 @@ class SessionOptionsDialog(Dialog):
|
|||
def __init__(self, master: "Application", app: "Application"):
|
||||
super().__init__(master, app, "Session Options", modal=True)
|
||||
self.config_frame = None
|
||||
self.has_error = False
|
||||
self.config = self.get_config()
|
||||
self.draw()
|
||||
if not self.has_error:
|
||||
self.draw()
|
||||
|
||||
def get_config(self):
|
||||
try:
|
||||
|
@ -26,7 +28,8 @@ class SessionOptionsDialog(Dialog):
|
|||
response = self.app.core.client.get_session_options(session_id)
|
||||
return response.config
|
||||
except grpc.RpcError as e:
|
||||
show_grpc_error(e)
|
||||
self.has_error = True
|
||||
show_grpc_error(e, self.app, self.app)
|
||||
self.destroy()
|
||||
|
||||
def draw(self):
|
||||
|
@ -53,5 +56,5 @@ class SessionOptionsDialog(Dialog):
|
|||
response = self.app.core.client.set_session_options(session_id, config)
|
||||
logging.info("saved session config: %s", response)
|
||||
except grpc.RpcError as e:
|
||||
show_grpc_error(e)
|
||||
show_grpc_error(e, self.top, self.app)
|
||||
self.destroy()
|
||||
|
|
|
@ -25,8 +25,10 @@ class SessionsDialog(Dialog):
|
|||
self.selected = False
|
||||
self.selected_id = None
|
||||
self.tree = None
|
||||
self.has_error = False
|
||||
self.sessions = self.get_sessions()
|
||||
self.draw()
|
||||
if not self.has_error:
|
||||
self.draw()
|
||||
|
||||
def get_sessions(self) -> Iterable[core_pb2.SessionSummary]:
|
||||
try:
|
||||
|
@ -34,7 +36,8 @@ class SessionsDialog(Dialog):
|
|||
logging.info("sessions: %s", response)
|
||||
return response.sessions
|
||||
except grpc.RpcError as e:
|
||||
show_grpc_error(e)
|
||||
show_grpc_error(e, self.app, self.app)
|
||||
self.has_error = True
|
||||
self.destroy()
|
||||
|
||||
def draw(self):
|
||||
|
@ -211,7 +214,7 @@ class SessionsDialog(Dialog):
|
|||
item = self.tree.selection()
|
||||
if item:
|
||||
sid = int(self.tree.item(item, "text"))
|
||||
self.app.core.delete_session(sid)
|
||||
self.app.core.delete_session(sid, self.top)
|
||||
self.tree.delete(item[0])
|
||||
if sid == self.app.core.session_id:
|
||||
self.click_new()
|
||||
|
|
|
@ -27,12 +27,14 @@ class WlanConfigDialog(Dialog):
|
|||
self.canvas_node = canvas_node
|
||||
self.node = canvas_node.core_node
|
||||
self.config_frame = None
|
||||
self.has_error = False
|
||||
try:
|
||||
self.config = self.app.core.get_wlan_config(self.node.id)
|
||||
self.draw()
|
||||
except grpc.RpcError as e:
|
||||
show_grpc_error(e)
|
||||
show_grpc_error(e, self.app, self.app)
|
||||
self.has_error = True
|
||||
self.destroy()
|
||||
self.draw()
|
||||
|
||||
def draw(self):
|
||||
self.top.columnconfigure(0, weight=1)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue