Author: [log in to unmask] Date: Tue Mar 10 19:32:19 2015 New Revision: 2402 Log: Change from using static imports to qualified so huge list of static constants is not listed in imports. Modified: java/trunk/monitoring-app/src/main/java/org/hps/monitoring/application/ConnectionSettingsPanel.java java/trunk/monitoring-app/src/main/java/org/hps/monitoring/application/MonitoringApplication.java java/trunk/monitoring-app/src/main/java/org/hps/monitoring/application/MonitoringApplicationFrame.java java/trunk/monitoring-app/src/main/java/org/hps/monitoring/application/RunPanel.java java/trunk/monitoring-app/src/main/java/org/hps/monitoring/application/SystemStatusTable.java Modified: java/trunk/monitoring-app/src/main/java/org/hps/monitoring/application/ConnectionSettingsPanel.java ============================================================================= --- java/trunk/monitoring-app/src/main/java/org/hps/monitoring/application/ConnectionSettingsPanel.java (original) +++ java/trunk/monitoring-app/src/main/java/org/hps/monitoring/application/ConnectionSettingsPanel.java Tue Mar 10 19:32:19 2015 @@ -1,20 +1,4 @@ package org.hps.monitoring.application; - -import static org.hps.monitoring.application.Commands.BLOCKING_CHANGED; -import static org.hps.monitoring.application.Commands.VERBOSE_CHANGED; -import static org.hps.monitoring.application.Commands.WAIT_MODE_CHANGED; -import static org.hps.monitoring.application.model.ConfigurationModel.BLOCKING_PROPERTY; -import static org.hps.monitoring.application.model.ConfigurationModel.CHUNK_SIZE_PROPERTY; -import static org.hps.monitoring.application.model.ConfigurationModel.ET_NAME_PROPERTY; -import static org.hps.monitoring.application.model.ConfigurationModel.HOST_PROPERTY; -import static org.hps.monitoring.application.model.ConfigurationModel.PORT_PROPERTY; -import static org.hps.monitoring.application.model.ConfigurationModel.PRESCALE_PROPERTY; -import static org.hps.monitoring.application.model.ConfigurationModel.QUEUE_SIZE_PROPERTY; -import static org.hps.monitoring.application.model.ConfigurationModel.STATION_NAME_PROPERTY; -import static org.hps.monitoring.application.model.ConfigurationModel.STATION_POSITION_PROPERTY; -import static org.hps.monitoring.application.model.ConfigurationModel.VERBOSE_PROPERTY; -import static org.hps.monitoring.application.model.ConfigurationModel.WAIT_MODE_PROPERTY; -import static org.hps.monitoring.application.model.ConfigurationModel.WAIT_TIME_PROPERTY; import java.awt.GridBagLayout; import java.awt.Insets; @@ -72,11 +56,11 @@ portField.addPropertyChangeListener("value", this); blockingCheckBox = addCheckBox("Blocking", false, true); - blockingCheckBox.setActionCommand(BLOCKING_CHANGED); + blockingCheckBox.setActionCommand(Commands.BLOCKING_CHANGED); blockingCheckBox.addActionListener(this); verboseCheckBox = addCheckBox("Verbose", false, true); - verboseCheckBox.setActionCommand(VERBOSE_CHANGED); + verboseCheckBox.setActionCommand(Commands.VERBOSE_CHANGED); verboseCheckBox.addActionListener(this); stationNameField = addField("Station Name", 10); @@ -92,7 +76,7 @@ stationPositionField.addPropertyChangeListener("value", this); waitModeComboBox = addComboBox("Wait Mode", waitModes); - waitModeComboBox.setActionCommand(WAIT_MODE_CHANGED); + waitModeComboBox.setActionCommand(Commands.WAIT_MODE_CHANGED); waitModeComboBox.addActionListener(this); waitTimeField = addField("Wait Time [microseconds]", 8); @@ -130,29 +114,29 @@ configurationModel.removePropertyChangeListener(this); try { Object value = evt.getNewValue(); - if (evt.getPropertyName().equals(ET_NAME_PROPERTY)) { + if (evt.getPropertyName().equals(ConfigurationModel.ET_NAME_PROPERTY)) { etNameField.setText((String) value); - } else if (evt.getPropertyName().equals(HOST_PROPERTY)) { + } else if (evt.getPropertyName().equals(ConfigurationModel.HOST_PROPERTY)) { hostField.setText((String) value); - } else if (evt.getPropertyName().equals(PORT_PROPERTY)) { + } else if (evt.getPropertyName().equals(ConfigurationModel.PORT_PROPERTY)) { portField.setText(value.toString()); - } else if (evt.getPropertyName().equals(BLOCKING_PROPERTY)) { + } else if (evt.getPropertyName().equals(ConfigurationModel.BLOCKING_PROPERTY)) { blockingCheckBox.setSelected((Boolean) value); - } else if (evt.getPropertyName().equals(VERBOSE_PROPERTY)) { + } else if (evt.getPropertyName().equals(ConfigurationModel.VERBOSE_PROPERTY)) { verboseCheckBox.setSelected((Boolean) value); - } else if (evt.getPropertyName().equals(STATION_NAME_PROPERTY)) { + } else if (evt.getPropertyName().equals(ConfigurationModel.STATION_NAME_PROPERTY)) { stationNameField.setText((String) value); - } else if (evt.getPropertyName().equals(CHUNK_SIZE_PROPERTY)) { + } else if (evt.getPropertyName().equals(ConfigurationModel.CHUNK_SIZE_PROPERTY)) { chunkSizeField.setText(value.toString()); - } else if (evt.getPropertyName().equals(QUEUE_SIZE_PROPERTY)) { + } else if (evt.getPropertyName().equals(ConfigurationModel.QUEUE_SIZE_PROPERTY)) { queueSizeField.setText(value.toString()); - } else if (evt.getPropertyName().equals(STATION_POSITION_PROPERTY)) { + } else if (evt.getPropertyName().equals(ConfigurationModel.STATION_POSITION_PROPERTY)) { stationPositionField.setText(value.toString()); - } else if (evt.getPropertyName().equals(WAIT_MODE_PROPERTY)) { + } else if (evt.getPropertyName().equals(ConfigurationModel.WAIT_MODE_PROPERTY)) { waitModeComboBox.setSelectedItem(((Mode) value).name()); - } else if (evt.getPropertyName().equals(WAIT_TIME_PROPERTY)) { + } else if (evt.getPropertyName().equals(ConfigurationModel.WAIT_TIME_PROPERTY)) { waitTimeField.setText(value.toString()); - } else if (evt.getPropertyName().equals(PRESCALE_PROPERTY)) { + } else if (evt.getPropertyName().equals(ConfigurationModel.PRESCALE_PROPERTY)) { prescaleField.setText(value.toString()); } } finally { @@ -166,18 +150,9 @@ */ @Override public void propertyChange(PropertyChangeEvent evt) { - if (!accept(evt)) { return; - } - - //System.out.println("ConnectionSettingsPanel.propertyChange"); - //System.out.println(" src: " + evt.getSource()); - //System.out.println(" propName: " + evt.getPropertyName()); - //System.out.println(" oldValue: " + evt.getOldValue()); - //System.out.println(" newValue: " + evt.getNewValue()); - //System.out.println(" propValue: " + evt.getPropagationId()); - + } Object source = evt.getSource(); configurationModel.removePropertyChangeListener(this); try { @@ -210,11 +185,11 @@ */ @Override public void actionPerformed(ActionEvent e) { - if (WAIT_MODE_CHANGED.equals(e.getActionCommand())) { + if (Commands.WAIT_MODE_CHANGED.equals(e.getActionCommand())) { configurationModel.setWaitMode(Mode.valueOf((String) waitModeComboBox.getSelectedItem())); - } else if (BLOCKING_CHANGED.equals(e.getActionCommand())) { + } else if (Commands.BLOCKING_CHANGED.equals(e.getActionCommand())) { configurationModel.setBlocking(blockingCheckBox.isSelected()); - } else if (VERBOSE_CHANGED.equals(e.getActionCommand())) { + } else if (Commands.VERBOSE_CHANGED.equals(e.getActionCommand())) { configurationModel.setVerbose(verboseCheckBox.isSelected()); } } Modified: java/trunk/monitoring-app/src/main/java/org/hps/monitoring/application/MonitoringApplication.java ============================================================================= --- java/trunk/monitoring-app/src/main/java/org/hps/monitoring/application/MonitoringApplication.java (original) +++ java/trunk/monitoring-app/src/main/java/org/hps/monitoring/application/MonitoringApplication.java Tue Mar 10 19:32:19 2015 @@ -3,6 +3,7 @@ import hep.aida.jfree.AnalysisFactory; import hep.aida.jfree.plotter.PlotterRegion; import hep.aida.jfree.plotter.PlotterRegionListener; +import hep.aida.ref.remote.rmi.client.RmiStoreFactory; import java.awt.Dimension; import java.awt.Rectangle; @@ -41,6 +42,7 @@ import org.hps.monitoring.application.model.ConfigurationModel; import org.hps.monitoring.application.model.ConnectionStatusModel; import org.hps.monitoring.application.model.RunModel; +import org.hps.monitoring.application.util.AIDAServer; import org.hps.monitoring.application.util.DialogUtil; import org.hps.monitoring.application.util.ErrorHandler; import org.hps.monitoring.application.util.EvioFileFilter; @@ -102,6 +104,9 @@ // Filters for opening files. static final FileFilter lcioFilter = new FileNameExtensionFilter("LCIO files", "slcio"); static final EvioFileFilter evioFilter = new EvioFileFilter(); + + AIDAServer server = new AIDAServer("hps-monitoring-app"); + static final RmiStoreFactory rsf = new RmiStoreFactory(); /** * Default log handler. @@ -221,53 +226,59 @@ */ public void actionPerformed(ActionEvent e) { - String cmd = e.getActionCommand(); - if (Commands.CONNECT.equals(cmd)) { + logger.finest("actionPerformed - " + e.getActionCommand()); + + String command = e.getActionCommand(); + if (Commands.CONNECT.equals(command)) { startSession(); - } else if (Commands.DISCONNECT.equals(cmd)) { + } else if (Commands.DISCONNECT.equals(command)) { processing.stop(); - } else if (Commands.SAVE_PLOTS.equals(cmd)) { + } else if (Commands.SAVE_PLOTS.equals(command)) { savePlots(); - } else if (Commands.EXIT.equals(cmd)) { + } else if (Commands.EXIT.equals(command)) { exit(); - } else if (Commands.PAUSE.equals(cmd)) { + } else if (Commands.PAUSE.equals(command)) { processing.pause(); - } else if (Commands.NEXT.equals(cmd)) { + } else if (Commands.NEXT.equals(command)) { processing.next(); - } else if (Commands.RESUME.equals(cmd)) { + } else if (Commands.RESUME.equals(command)) { processing.resume(); - } else if (Commands.SHOW_SETTINGS.equals(cmd)) { + } else if (Commands.SHOW_SETTINGS.equals(command)) { showSettingsDialog(); - } else if (Commands.LOAD_SETTINGS.equals(cmd)) { + } else if (Commands.LOAD_SETTINGS.equals(command)) { loadSettings(); - } else if (Commands.SAVE_SETTINGS.equals(cmd)) { + } else if (Commands.SAVE_SETTINGS.equals(command)) { saveSettings(); - } else if (Commands.CLEAR_PLOTS.equals(cmd)) { + } else if (Commands.CLEAR_PLOTS.equals(command)) { clearPlots(); - } else if (Commands.LOAD_DEFAULT_SETTINGS.equals(cmd)) { + } else if (Commands.LOAD_DEFAULT_SETTINGS.equals(command)) { loadDefaultSettings(); - } else if (Commands.OPEN_FILE.equals(cmd)) { + } else if (Commands.OPEN_FILE.equals(command)) { openFile(); - } else if (Commands.DEFAULT_WINDOW.equals(cmd)) { + } else if (Commands.DEFAULT_WINDOW.equals(command)) { restoreDefaultWindow(); - } else if (Commands.MAXIMIZE_WINDOW.equals(cmd)) { + } else if (Commands.MAXIMIZE_WINDOW.equals(command)) { maximizeWindow(); - } else if (Commands.MINIMIZE_WINDOW.equals(cmd)) { + } else if (Commands.MINIMIZE_WINDOW.equals(command)) { minimizeWindow(); - } else if (Commands.CLOSE_FILE.equals(cmd)) { + } else if (Commands.CLOSE_FILE.equals(command)) { closeFile(); - } else if (Commands.SAVE_SCREENSHOT.equals(cmd)) { + } else if (Commands.SAVE_SCREENSHOT.equals(command)) { saveScreenshot(); - } else if (Commands.LOG_LEVEL_CHANGED.equals(cmd)) { + } else if (Commands.LOG_LEVEL_CHANGED.equals(command)) { setLogLevel(); - } else if (Commands.SAVE_LOG_TABLE.equals(cmd)) { + } else if (Commands.SAVE_LOG_TABLE.equals(command)) { saveLogTable(); - } else if (Commands.CLEAR_LOG_TABLE.equals(cmd)) { + } else if (Commands.CLEAR_LOG_TABLE.equals(command)) { getLogRecordModel().clear(); - } else if (Commands.LOG_TO_FILE.equals(cmd)) { + } else if (Commands.LOG_TO_FILE.equals(command)) { chooseLogFile(); - } else if (Commands.LOG_TO_TERMINAL.equals(cmd)) { + } else if (Commands.LOG_TO_TERMINAL.equals(command)) { logToTerminal(); + } else if (Commands.START_AIDA_SERVER.equals(command)) { + startAIDAServer(); + } else if (Commands.STOP_AIDA_SERVER.equals(command)) { + stopAIDAServer(); } } @@ -747,5 +758,32 @@ DialogUtil.showInfoDialog(frame, "Log to Terminal", "Log messages will be sent to the terminal."); } - + + /** + * Start the AIDA server instance. + */ + void startAIDAServer() { + if (configurationModel.hasValidProperty(ConfigurationModel.AIDA_SERVER_NAME_PROPERTY)) { + server.setName(configurationModel.getAIDAServerName()); + } + boolean started = server.start(); + if (started) { + frame.menu.startAIDAServer(); + logger.info("AIDA server started at " + server.getName()); + DialogUtil.showInfoDialog(frame, "AIDA Server Started", "The remote AIDA server started successfully."); + } else { + logger.warning("AIDA server failed to start"); + DialogUtil.showErrorDialog(frame, "Failed to Start AIDA Server", "The remote AIDA server failed to start."); + } + } + + /** + * Stop the AIDA server instance. + */ + void stopAIDAServer() { + server.disconnect(); + frame.menu.stopAIDAServer(); + logger.info("AIDA server was stopped"); + DialogUtil.showInfoDialog(frame, "AIDA Server Stopped", "The AIDA server was stopped."); + } } Modified: java/trunk/monitoring-app/src/main/java/org/hps/monitoring/application/MonitoringApplicationFrame.java ============================================================================= --- java/trunk/monitoring-app/src/main/java/org/hps/monitoring/application/MonitoringApplicationFrame.java (original) +++ java/trunk/monitoring-app/src/main/java/org/hps/monitoring/application/MonitoringApplicationFrame.java Tue Mar 10 19:32:19 2015 @@ -30,6 +30,7 @@ SystemStatusTable systemStatusTable; JPanel buttonsPanel; TriggerDiagnosticsPanel triggerPanel; + MenuBar menu; JSplitPane mainSplitPane; JSplitPane rightSplitPane; @@ -147,7 +148,7 @@ bottomPanel.add(mainSplitPane, BorderLayout.CENTER); // Create the menu bar. - MenuBar menu = new MenuBar(application.configurationModel, application.connectionModel, application); + menu = new MenuBar(application.configurationModel, application.connectionModel, application); setJMenuBar(menu); dataSourceComboBox.addActionListener(menu); Modified: java/trunk/monitoring-app/src/main/java/org/hps/monitoring/application/RunPanel.java ============================================================================= --- java/trunk/monitoring-app/src/main/java/org/hps/monitoring/application/RunPanel.java (original) +++ java/trunk/monitoring-app/src/main/java/org/hps/monitoring/application/RunPanel.java Tue Mar 10 19:32:19 2015 @@ -1,16 +1,4 @@ package org.hps.monitoring.application; - -import static org.hps.monitoring.application.model.RunModel.DATA_RATE_PROPERTY; -import static org.hps.monitoring.application.model.RunModel.DATA_RECEIVED_PROPERTY; -import static org.hps.monitoring.application.model.RunModel.ELAPSED_TIME_PROPERTY; -import static org.hps.monitoring.application.model.RunModel.END_DATE_PROPERTY; -import static org.hps.monitoring.application.model.RunModel.EVENTS_RECEIVED_PROPERTY; -import static org.hps.monitoring.application.model.RunModel.EVENT_NUMBER_PROPERTY; -import static org.hps.monitoring.application.model.RunModel.EVENT_RATE_PROPERTY; -import static org.hps.monitoring.application.model.RunModel.RUN_LENGTH_PROPERTY; -import static org.hps.monitoring.application.model.RunModel.RUN_NUMBER_PROPERTY; -import static org.hps.monitoring.application.model.RunModel.START_DATE_PROPERTY; -import static org.hps.monitoring.application.model.RunModel.TOTAL_EVENTS_PROPERTY; import java.awt.Dimension; import java.awt.GridBagConstraints; @@ -262,33 +250,33 @@ public void propertyChange(PropertyChangeEvent evt) { //System.out.println("RunPanel.propertyChange - " + evt.getPropertyName()); Object value = evt.getNewValue(); - if (RUN_NUMBER_PROPERTY.equals(evt.getPropertyName())) { + if (RunModel.RUN_NUMBER_PROPERTY.equals(evt.getPropertyName())) { runNumberField.setValue((Integer) value); - } else if (START_DATE_PROPERTY.equals(evt.getPropertyName())) { + } else if (RunModel.START_DATE_PROPERTY.equals(evt.getPropertyName())) { if (value != null) startDateField.setValue((Date) value); else startDateField.setValue(""); - } else if (END_DATE_PROPERTY.equals(evt.getPropertyName())) { + } else if (RunModel.END_DATE_PROPERTY.equals(evt.getPropertyName())) { if (value != null) endDateField.setValue((Date) value); else endDateField.setValue(""); - } else if (RUN_LENGTH_PROPERTY.equals(evt.getPropertyName())) { + } else if (RunModel.RUN_LENGTH_PROPERTY.equals(evt.getPropertyName())) { lengthField.setValue((Integer) value); - } else if (TOTAL_EVENTS_PROPERTY.equals(evt.getPropertyName())) { + } else if (RunModel.TOTAL_EVENTS_PROPERTY.equals(evt.getPropertyName())) { totalEventsField.setValue((Integer) value); - } else if (EVENTS_RECEIVED_PROPERTY.equals(evt.getPropertyName())) { + } else if (RunModel.EVENTS_RECEIVED_PROPERTY.equals(evt.getPropertyName())) { eventsReceivedField.setValue((Integer) value); - } else if (ELAPSED_TIME_PROPERTY.equals(evt.getPropertyName())) { + } else if (RunModel.ELAPSED_TIME_PROPERTY.equals(evt.getPropertyName())) { elapsedTimeField.setValue((Integer) value); - } else if (DATA_RECEIVED_PROPERTY.equals(evt.getPropertyName())) { + } else if (RunModel.DATA_RECEIVED_PROPERTY.equals(evt.getPropertyName())) { dataReceivedField.setValue(formatter.format((Double) value)); - } else if (EVENT_NUMBER_PROPERTY.equals(evt.getPropertyName())) { + } else if (RunModel.EVENT_NUMBER_PROPERTY.equals(evt.getPropertyName())) { eventNumberField.setValue((Integer) value); - } else if (DATA_RATE_PROPERTY.equals(evt.getPropertyName())) { + } else if (RunModel.DATA_RATE_PROPERTY.equals(evt.getPropertyName())) { dataRateField.setValue(formatter.format((Double) value)); - } else if (EVENT_RATE_PROPERTY.equals(evt.getPropertyName())) { + } else if (RunModel.EVENT_RATE_PROPERTY.equals(evt.getPropertyName())) { eventRateField.setValue(formatter.format((Double) value)); } } Modified: java/trunk/monitoring-app/src/main/java/org/hps/monitoring/application/SystemStatusTable.java ============================================================================= --- java/trunk/monitoring-app/src/main/java/org/hps/monitoring/application/SystemStatusTable.java (original) +++ java/trunk/monitoring-app/src/main/java/org/hps/monitoring/application/SystemStatusTable.java Tue Mar 10 19:32:19 2015 @@ -1,6 +1,4 @@ package org.hps.monitoring.application; - -import static org.hps.monitoring.application.model.SystemStatusTableModel.*; import java.awt.Color; import java.awt.Component; @@ -66,7 +64,7 @@ }); // Date formatting for last changed. - getColumnModel().getColumn(LAST_CHANGED_COL).setCellRenderer(new DefaultTableCellRenderer() { + getColumnModel().getColumn(SystemStatusTableModel.LAST_CHANGED_COL).setCellRenderer(new DefaultTableCellRenderer() { final SimpleDateFormat dateFormat = new SimpleDateFormat("MMMM-dd-yyyy HH:mm:ss.SSS"); @@ -80,16 +78,16 @@ }); // Button for clearing system statuses. - getColumnModel().getColumn(RESET_COL).setCellRenderer(new ButtonRenderer("Clear")); + getColumnModel().getColumn(SystemStatusTableModel.RESET_COL).setCellRenderer(new ButtonRenderer("Clear")); addMouseListener(new JTableButtonMouseListener(this)); getColumn("Clearable").setWidth(0); getColumn("Clearable").setMinWidth(0); getColumn("Clearable").setMaxWidth(0); // Column widths. - getColumnModel().getColumn(ACTIVE_COL).setPreferredWidth(8); - getColumnModel().getColumn(STATUS_COL).setPreferredWidth(10); - getColumnModel().getColumn(SYSTEM_COL).setPreferredWidth(10); + getColumnModel().getColumn(SystemStatusTableModel.ACTIVE_COL).setPreferredWidth(8); + getColumnModel().getColumn(SystemStatusTableModel.STATUS_COL).setPreferredWidth(10); + getColumnModel().getColumn(SystemStatusTableModel.SYSTEM_COL).setPreferredWidth(10); // TODO: Add default width setting for every column. setAutoCreateRowSorter(true); @@ -109,7 +107,7 @@ } public Component getTableCellRendererComponent(JTable table, Object value, boolean isSelected, boolean hasFocus, int row, int column) { - boolean clearable = (Boolean) table.getModel().getValueAt(row, CLEARABLE_COL); + boolean clearable = (Boolean) table.getModel().getValueAt(row, SystemStatusTableModel.CLEARABLE_COL); if (clearable) return this; else