Author: [log in to unmask] Date: Tue Mar 10 13:14:40 2015 New Revision: 2389 Log: Add conditions tag to job settings in monitoring app. Modified: java/trunk/monitoring-app/src/main/java/org/hps/monitoring/application/Commands.java java/trunk/monitoring-app/src/main/java/org/hps/monitoring/application/EventProcessing.java java/trunk/monitoring-app/src/main/java/org/hps/monitoring/application/JobSettingsPanel.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/model/ConfigurationModel.java java/trunk/monitoring-app/src/main/java/org/hps/monitoring/application/util/ResourceUtil.java Modified: java/trunk/monitoring-app/src/main/java/org/hps/monitoring/application/Commands.java ============================================================================= --- java/trunk/monitoring-app/src/main/java/org/hps/monitoring/application/Commands.java (original) +++ java/trunk/monitoring-app/src/main/java/org/hps/monitoring/application/Commands.java Tue Mar 10 13:14:40 2015 @@ -47,6 +47,8 @@ static final String LOG_LEVEL_FILTER_CHANGED = "logLevelFilterChanged"; + static final String CONDITIONS_TAG_CHANGED = "conditionsTagChanged"; + //////////////////////////////////////////// static final String BLOCKING_CHANGED = "blockingChanged"; static final String CHOOSE_COMPACT_FILE = "chooseCompactFile"; Modified: java/trunk/monitoring-app/src/main/java/org/hps/monitoring/application/EventProcessing.java ============================================================================= --- java/trunk/monitoring-app/src/main/java/org/hps/monitoring/application/EventProcessing.java (original) +++ java/trunk/monitoring-app/src/main/java/org/hps/monitoring/application/EventProcessing.java Tue Mar 10 13:14:40 2015 @@ -114,6 +114,13 @@ } else if (steeringType.equals(SteeringType.FILE)) { setupSteeringFile(steering); } + + // Set conditions tag. + if (configurationModel.hasValidProperty(ConfigurationModel.CONDITIONS_TAG_PROPERTY) && !configurationModel.getConditionsTag().equals("")) { + logger.config("conditions tag is set to " + configurationModel.getConditionsTag()); + } else { + logger.config("conditions NOT using a tag"); + } // Is there a user specified run number from the JobPanel? if (configurationModel.hasValidProperty(ConfigurationModel.USER_RUN_NUMBER_PROPERTY)) { @@ -128,7 +135,7 @@ conditionsManager.freeze(); } else { // Allow run numbers to be picked up from the events. - logger.config("user run number specified but conditions system is NOT frozen"); + logger.config("user run number provided but conditions system is NOT frozen"); conditionsManager.unfreeze(); } } Modified: java/trunk/monitoring-app/src/main/java/org/hps/monitoring/application/JobSettingsPanel.java ============================================================================= --- java/trunk/monitoring-app/src/main/java/org/hps/monitoring/application/JobSettingsPanel.java (original) +++ java/trunk/monitoring-app/src/main/java/org/hps/monitoring/application/JobSettingsPanel.java Tue Mar 10 13:14:40 2015 @@ -1,29 +1,7 @@ package org.hps.monitoring.application; -import static org.hps.monitoring.application.Commands.DETECTOR_ALIAS_CHANGED; -import static org.hps.monitoring.application.Commands.DETECTOR_NAME_CHANGED; -import static org.hps.monitoring.application.Commands.DISCONNECT_ON_END_RUN_CHANGED; -import static org.hps.monitoring.application.Commands.DISCONNECT_ON_ERROR_CHANGED; -import static org.hps.monitoring.application.Commands.EVENT_BUILDER_CHANGED; -import static org.hps.monitoring.application.Commands.FREEZE_CONDITIONS_CHANGED; -import static org.hps.monitoring.application.Commands.LOG_LEVEL_CHANGED; -import static org.hps.monitoring.application.Commands.STEERING_RESOURCE_CHANGED; -import static org.hps.monitoring.application.Commands.STEERING_TYPE_CHANGED; -import static org.hps.monitoring.application.Commands.USER_RUN_NUMBER_CHANGED; -import static org.hps.monitoring.application.model.ConfigurationModel.DETECTOR_ALIAS_PROPERTY; -import static org.hps.monitoring.application.model.ConfigurationModel.DETECTOR_NAME_PROPERTY; -import static org.hps.monitoring.application.model.ConfigurationModel.DISCONNECT_ON_END_RUN_PROPERTY; -import static org.hps.monitoring.application.model.ConfigurationModel.DISCONNECT_ON_ERROR_PROPERTY; -import static org.hps.monitoring.application.model.ConfigurationModel.EVENT_BUILDER_PROPERTY; -import static org.hps.monitoring.application.model.ConfigurationModel.FREEZE_CONDITIONS_PROPERTY; -import static org.hps.monitoring.application.model.ConfigurationModel.LOG_FILE_NAME_PROPERTY; -import static org.hps.monitoring.application.model.ConfigurationModel.LOG_LEVEL_PROPERTY; -import static org.hps.monitoring.application.model.ConfigurationModel.LOG_TO_FILE_PROPERTY; -import static org.hps.monitoring.application.model.ConfigurationModel.MAX_EVENTS_PROPERTY; -import static org.hps.monitoring.application.model.ConfigurationModel.STEERING_FILE_PROPERTY; -import static org.hps.monitoring.application.model.ConfigurationModel.STEERING_RESOURCE_PROPERTY; -import static org.hps.monitoring.application.model.ConfigurationModel.STEERING_TYPE_PROPERTY; -import static org.hps.monitoring.application.model.ConfigurationModel.USER_RUN_NUMBER_PROPERTY; +import static org.hps.monitoring.application.Commands.*; +import static org.hps.monitoring.application.model.ConfigurationModel.*; import java.awt.GridBagLayout; import java.awt.Insets; @@ -43,6 +21,7 @@ import javax.swing.border.EmptyBorder; import javax.swing.filechooser.FileFilter; +import org.hps.conditions.database.DatabaseConditionsManager; import org.hps.monitoring.application.model.ConfigurationModel; import org.hps.monitoring.application.model.SteeringType; import org.hps.monitoring.application.util.ResourceUtil; @@ -62,6 +41,7 @@ private JComboBox<?> steeringTypeComboBox; private JComboBox<String> detectorNameComboBox; private JTextField detectorAliasField; + private JComboBox<String> conditionsTagComboBox; private JComboBox<String> eventBuilderComboBox; private JTextField userRunNumberField; private JCheckBox freezeConditionsCheckBox; @@ -129,12 +109,21 @@ compactXmlButton.setActionCommand(Commands.CHOOSE_COMPACT_FILE); compactXmlButton.addActionListener(this); - userRunNumberField = addField("User Run Number", "", 10, false); + userRunNumberField = addField("User Run Number", "", 10, true); userRunNumberField.addPropertyChangeListener("value", this); userRunNumberField.setActionCommand(USER_RUN_NUMBER_CHANGED); userRunNumberField.setEnabled(true); userRunNumberField.setEditable(true); + + conditionsTagComboBox = addComboBox("Conditions Tag", ResourceUtil.getConditionsTags()); + conditionsTagComboBox.addItem(""); + conditionsTagComboBox.setSelectedItem(""); + conditionsTagComboBox.setActionCommand(CONDITIONS_TAG_CHANGED); + conditionsTagComboBox.addActionListener(this); + conditionsTagComboBox.setEditable(false); + conditionsTagComboBox.setEnabled(true); + freezeConditionsCheckBox = addCheckBox("Freeze detector conditions", false, true); freezeConditionsCheckBox.addActionListener(this); freezeConditionsCheckBox.setActionCommand(FREEZE_CONDITIONS_CHANGED); @@ -293,6 +282,8 @@ } } else if (DETECTOR_ALIAS_CHANGED.equals(event.getActionCommand())) { configurationModel.setDetectorName(detectorAliasField.getText()); + } else if (CONDITIONS_TAG_CHANGED.equals(event.getActionCommand())) { + configurationModel.setConditionsTag((String) conditionsTagComboBox.getSelectedItem()); } } finally { configurationModel.addPropertyChangeListener(this); @@ -319,12 +310,10 @@ configurationModel.setFreezeConditions(false); } else { try { - // System.out.println("setting new user run number " + evt.getNewValue()); // Parse the run number. Need to catch errors because it might be an invalid string. int userRunNumber = Integer.parseInt(userRunNumberField.getText()); configurationModel.setUserRunNumber(userRunNumber); configurationModel.setFreezeConditions(true); - System.out.println("successfully set run number to userRunNumber"); } catch (NumberFormatException e) { System.out.println("bad number format so ignoring user run number " + evt.getNewValue()); userRunNumberField.setText((String) evt.getOldValue()); @@ -348,6 +337,8 @@ } else { logFileNameField.setText(""); } + } else if (evt.getPropertyName().equals(ConfigurationModel.CONDITIONS_TAG_PROPERTY)) { + conditionsTagComboBox.setSelectedItem(evt.getNewValue()); } } finally { configurationModel.addPropertyChangeListener(this); 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 13:14:40 2015 @@ -747,4 +747,5 @@ DialogUtil.showInfoDialog(frame, "Log to Terminal", "Log messages will be sent to the terminal."); } + } Modified: java/trunk/monitoring-app/src/main/java/org/hps/monitoring/application/model/ConfigurationModel.java ============================================================================= --- java/trunk/monitoring-app/src/main/java/org/hps/monitoring/application/model/ConfigurationModel.java (original) +++ java/trunk/monitoring-app/src/main/java/org/hps/monitoring/application/model/ConfigurationModel.java Tue Mar 10 13:14:40 2015 @@ -16,6 +16,7 @@ Configuration configuration; // Job setting properties. + public static final String CONDITIONS_TAG_PROPERTY = "ConditionsTag"; public static final String DETECTOR_NAME_PROPERTY = "DetectorName"; public static final String DETECTOR_ALIAS_PROPERTY = "DetectorAlias"; public static final String DISCONNECT_ON_ERROR_PROPERTY = "DisconnectOnError"; @@ -392,6 +393,16 @@ public String getEtPath() { return getEtName() + "@" + getHost() + ":" + getPort(); } + + public void setConditionsTag(String conditionsTag) { + String oldValue = getConditionsTag(); + configuration.set(CONDITIONS_TAG_PROPERTY, conditionsTag); + firePropertyChange(CONDITIONS_TAG_PROPERTY, oldValue, getConditionsTag()); + } + + public String getConditionsTag() { + return configuration.get(CONDITIONS_TAG_PROPERTY); + } public void remove(String property) { if (hasPropertyKey(property)) { Modified: java/trunk/monitoring-app/src/main/java/org/hps/monitoring/application/util/ResourceUtil.java ============================================================================= --- java/trunk/monitoring-app/src/main/java/org/hps/monitoring/application/util/ResourceUtil.java (original) +++ java/trunk/monitoring-app/src/main/java/org/hps/monitoring/application/util/ResourceUtil.java Tue Mar 10 13:14:40 2015 @@ -14,6 +14,7 @@ import java.util.jar.JarEntry; import java.util.jar.JarFile; +import org.hps.conditions.database.DatabaseConditionsManager; import org.hps.record.LCSimEventBuilder; import org.reflections.Reflections; @@ -116,4 +117,8 @@ Collections.sort(detectorNames); return detectorNames.toArray(new String[detectorNames.size()]); } + + public static String[] getConditionsTags() { + return DatabaseConditionsManager.getInstance().getTags().toArray(new String[] {}); + } }