Skip to content

Split Queue Server into modular network, monitor, and edit-control packages#3698

Draft
JMit-dev wants to merge 64 commits intoControlSystemStudio:masterfrom
JMit-dev:queue-server-split
Draft

Split Queue Server into modular network, monitor, and edit-control packages#3698
JMit-dev wants to merge 64 commits intoControlSystemStudio:masterfrom
JMit-dev:queue-server-split

Conversation

@JMit-dev
Copy link
Contributor

Summary

  • Split monolithic queue-server app into 3 Maven sub-modules: network, monitor, edit-control
  • Queue Monitor and Edit & Control Queue are now independent Phoebus applications
  • Removed the left-side tab switcher - each app opens as its own dock tab
  • Added connection manager widget to Edit & Control Queue layout
  • Extracted ConnectionManager singleton so both apps share one connection
  • Added reference counting to AppLifecycle so shared state only resets when the last app closes

JMit-dev and others added 29 commits January 28, 2026 12:13
return result != null ? result.__tojava__(Object.class) : null;

} catch (Exception e) {
LOG.log(Level.FINE, "Jython script execution failed: " + e.getMessage());
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Instead of
LOG.log(Level.FINE, "Jython script execution failed: " + e.getMessage());
it's generally better to use
LOG.log(Level.FINE, "Jython script execution failed", e);

This will show the message, if there is one, plus the complete stack trace.
On the other hand, e.getMessage() may return null and without a stack trace you then wonder where/what/why happened.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants