2026-03-17 13:31:18 -07:00

585 lines
26 KiB
Java

/*
* Decompiled with CFR 0.152.
*
* Could not load the following classes:
* com.tridium.bql.filter.BAbsTimeFilter
* com.tridium.bql.filter.BFilterEntry
* com.tridium.bql.filter.BFilterSet
* com.tridium.bql.util.BDynamicTimeRange
* com.tridium.fox.sys.BFoxClientConnection
* com.tridium.fox.sys.BFoxSession
* com.tridium.workbench.bql.filter.BFilterSetEditor
* com.tridium.workbench.fieldeditors.BDynamicTimeRangeFE
* com.tridium.workbench.fieldeditors.BFrozenEnumFE
* javax.baja.agent.AgentFilter
* javax.baja.agent.AgentList
* javax.baja.bql.BIBqlFilter
* javax.baja.bql.BqlQuery
* javax.baja.collection.BICollection
* javax.baja.gx.BImage
* javax.baja.naming.BOrd
* javax.baja.naming.SlotPath
* javax.baja.nre.util.Array
* javax.baja.sys.Action
* javax.baja.sys.BComplex
* javax.baja.sys.BComponent
* javax.baja.sys.BFacets
* javax.baja.sys.BObject
* javax.baja.sys.BString
* javax.baja.sys.BValue
* javax.baja.sys.Context
* javax.baja.sys.Property
* javax.baja.sys.Slot
* javax.baja.sys.Sys
* javax.baja.sys.Type
* javax.baja.ui.BDialog
* javax.baja.ui.BLabel
* javax.baja.ui.BMenu
* javax.baja.ui.BSeparator
* javax.baja.ui.BTextDropDown
* javax.baja.ui.BTextField
* javax.baja.ui.BToolBar
* javax.baja.ui.BWidget
* javax.baja.ui.Command
* javax.baja.ui.CommandArtifact
* javax.baja.ui.enums.BHalign
* javax.baja.ui.event.BMouseEvent
* javax.baja.ui.pane.BBorderPane
* javax.baja.ui.pane.BEdgePane
* javax.baja.ui.pane.BGridPane
* javax.baja.ui.table.BTable
* javax.baja.ui.table.DynamicTableModel
* javax.baja.ui.table.TableController
* javax.baja.ui.table.TableModel
* javax.baja.ui.util.BTitlePane
* javax.baja.ui.util.UiLexicon
* javax.baja.workbench.BWbShell
* javax.baja.workbench.fieldeditor.BWbFieldEditor
* javax.baja.workbench.view.BWbComponentView
*/
package com.tridium.alarm.ui;
import com.tridium.alarm.fox.BAlarmDbChannel;
import com.tridium.alarm.ui.AlarmDbTableModel;
import com.tridium.alarm.ui.BAlarmConsoleOptions;
import com.tridium.alarm.ui.BAlarmDetailsDialog;
import com.tridium.alarm.ui.BIAlarmServiceView;
import com.tridium.alarm.ui.BNotesDialog;
import com.tridium.alarm.ui.BTimeZoneDisplay;
import com.tridium.alarm.ui.ConsoleColumns;
import com.tridium.alarm.ui.ConsoleTableModel;
import com.tridium.bql.filter.BAbsTimeFilter;
import com.tridium.bql.filter.BFilterEntry;
import com.tridium.bql.filter.BFilterSet;
import com.tridium.bql.util.BDynamicTimeRange;
import com.tridium.fox.sys.BFoxClientConnection;
import com.tridium.fox.sys.BFoxSession;
import com.tridium.workbench.bql.filter.BFilterSetEditor;
import com.tridium.workbench.fieldeditors.BDynamicTimeRangeFE;
import com.tridium.workbench.fieldeditors.BFrozenEnumFE;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.StringTokenizer;
import javax.baja.agent.AgentFilter;
import javax.baja.agent.AgentList;
import javax.baja.alarm.BAlarmDatabase;
import javax.baja.alarm.BAlarmRecord;
import javax.baja.alarm.BAlarmService;
import javax.baja.bql.BIBqlFilter;
import javax.baja.bql.BqlQuery;
import javax.baja.collection.BICollection;
import javax.baja.gx.BImage;
import javax.baja.naming.BOrd;
import javax.baja.naming.SlotPath;
import javax.baja.nre.util.Array;
import javax.baja.sys.Action;
import javax.baja.sys.BComplex;
import javax.baja.sys.BComponent;
import javax.baja.sys.BFacets;
import javax.baja.sys.BObject;
import javax.baja.sys.BString;
import javax.baja.sys.BValue;
import javax.baja.sys.Context;
import javax.baja.sys.Property;
import javax.baja.sys.Slot;
import javax.baja.sys.Sys;
import javax.baja.sys.Type;
import javax.baja.ui.BDialog;
import javax.baja.ui.BLabel;
import javax.baja.ui.BMenu;
import javax.baja.ui.BSeparator;
import javax.baja.ui.BTextDropDown;
import javax.baja.ui.BTextField;
import javax.baja.ui.BToolBar;
import javax.baja.ui.BWidget;
import javax.baja.ui.Command;
import javax.baja.ui.CommandArtifact;
import javax.baja.ui.enums.BHalign;
import javax.baja.ui.event.BMouseEvent;
import javax.baja.ui.pane.BBorderPane;
import javax.baja.ui.pane.BEdgePane;
import javax.baja.ui.pane.BGridPane;
import javax.baja.ui.table.BTable;
import javax.baja.ui.table.DynamicTableModel;
import javax.baja.ui.table.TableController;
import javax.baja.ui.table.TableModel;
import javax.baja.ui.util.BTitlePane;
import javax.baja.ui.util.UiLexicon;
import javax.baja.workbench.BWbShell;
import javax.baja.workbench.fieldeditor.BWbFieldEditor;
import javax.baja.workbench.view.BWbComponentView;
public class BAlarmDbView
extends BWbComponentView
implements BIAlarmServiceView {
public static final Property defaultTimeRange = BAlarmDbView.newProperty((int)0, (BValue)BDynamicTimeRange.DEFAULT, null);
public static final Property timeZoneDisplay = BAlarmDbView.newProperty((int)0, (BValue)BTimeZoneDisplay.console, null);
public static final Action query = BAlarmDbView.newAction((int)16, null);
public static final Type TYPE = Sys.loadType((Class)(class$com$tridium$alarm$ui$BAlarmDbView == null ? (class$com$tridium$alarm$ui$BAlarmDbView = BAlarmDbView.class$("com.tridium.alarm.ui.BAlarmDbView")) : class$com$tridium$alarm$ui$BAlarmDbView));
private static UiLexicon lex = new UiLexicon(class$com$tridium$alarm$ui$BAlarmDbView == null ? (class$com$tridium$alarm$ui$BAlarmDbView = BAlarmDbView.class$("com.tridium.alarm.ui.BAlarmDbView")) : class$com$tridium$alarm$ui$BAlarmDbView);
public static final BFacets TIME_FACETS = BFacets.make((String)"showSeconds", (boolean)true);
BTable table;
AlarmDbTableModel model;
BAlarmService alarmService;
Context context;
private BAlarmDatabase alarmDatabase;
private BFilterSet filterSet;
private BDynamicTimeRangeFE timeRangeEd;
private Command filterCmd;
private Command notesCmd;
private Command tzCmd;
private Command addColumnCommand;
private Command removeColumnCommand;
static /* synthetic */ Class class$com$tridium$alarm$ui$BAlarmDbView;
static /* synthetic */ Class class$javax$baja$sys$BString;
static /* synthetic */ Class class$java$lang$Integer;
public BDynamicTimeRange getDefaultTimeRange() {
return (BDynamicTimeRange)this.get(defaultTimeRange);
}
public void setDefaultTimeRange(BDynamicTimeRange bDynamicTimeRange) {
this.set(defaultTimeRange, (BValue)bDynamicTimeRange, null);
}
public BTimeZoneDisplay getTimeZoneDisplay() {
return (BTimeZoneDisplay)this.get(timeZoneDisplay);
}
public void setTimeZoneDisplay(BTimeZoneDisplay bTimeZoneDisplay) {
this.set(timeZoneDisplay, (BValue)bTimeZoneDisplay, null);
}
public void query() {
this.invoke(query, null, null);
}
public Type getType() {
return TYPE;
}
public ConsoleColumns getConsoleColumns() {
if (this.model != null) {
return this.model.getColumns();
}
ConsoleColumns consoleColumns = new ConsoleColumns();
BString[] bStringArray = (BString[])BAlarmConsoleOptions.getDefault().getAlarmDataCols().getChildren(class$javax$baja$sys$BString == null ? (class$javax$baja$sys$BString = BAlarmDbView.class$("javax.baja.sys.BString")) : class$javax$baja$sys$BString);
for (int i = 0; i < bStringArray.length; ++i) {
consoleColumns.addDataColumn(null, bStringArray[i].toString());
}
return consoleColumns;
}
public int[] getDefaultColumns() {
Object object;
String string = BAlarmConsoleOptions.getDefault().getDisplayColumns();
StringTokenizer stringTokenizer = new StringTokenizer(string, ",");
Array array = new Array(class$java$lang$Integer == null ? (class$java$lang$Integer = BAlarmDbView.class$("java.lang.Integer")) : class$java$lang$Integer);
while (stringTokenizer.hasMoreTokens()) {
object = stringTokenizer.nextToken();
array.add((Object)new Integer((String)object));
}
object = new int[array.size()];
for (int i = 0; i < array.size(); ++i) {
object[i] = (Integer)array.get(i);
}
return object;
}
public int getSortColumn() {
return BAlarmConsoleOptions.getDefault().getSortColumn();
}
public boolean getSortDirection() {
return BAlarmConsoleOptions.getDefault().getSortAscending();
}
public BTable getTable() {
return this.table;
}
public BAlarmService getAlarmService(BAlarmRecord bAlarmRecord) {
return this.alarmService;
}
public void doLoadValue(BObject bObject, Context context) {
this.filterSet = this.buildFilterSet();
if (bObject instanceof BAlarmService) {
this.alarmService = (BAlarmService)bObject;
this.alarmDatabase = (BAlarmDatabase)BOrd.make((BOrd)this.alarmService.getAbsoluteOrd(), (BOrd)BOrd.make((String)"alarm:")).get();
} else if (bObject instanceof BAlarmDatabase) {
this.alarmDatabase = (BAlarmDatabase)bObject;
this.alarmService = this.getAlarmService();
}
this.context = context;
this.model = new AlarmDbTableModel(this.getConsoleColumns());
this.model.init(this, context);
this.table = new BTable((TableModel)new DynamicTableModel((TableModel)this.model, this.getDefaultColumns()), (TableController)new Controller());
this.table.setMultipleSelection(false);
this.model.options.setTimeZoneDisplay(this.getTimeZoneDisplay());
this.filterCmd = new Command((BWidget)this, BAlarmDbView.lex.module, "commands.filter"){
public CommandArtifact doInvoke() {
BAlarmDbView.this.configFilters();
BAlarmDbView.this.query();
return null;
}
};
this.notesCmd = new Command((BWidget)this, BAlarmDbView.lex.module, "commands.notes"){
public CommandArtifact doInvoke() {
int n = BAlarmDbView.this.table.getSelection().getRow();
if (n != -1) {
BAlarmRecord bAlarmRecord = BAlarmDbView.this.model.getRecord(n);
BAlarmDbView.this.showNotes(bAlarmRecord);
}
return null;
}
};
this.tzCmd = new Command((BWidget)this, BAlarmDbView.lex.module, "commands.timeZoneDisplay"){
public CommandArtifact doInvoke() {
BFrozenEnumFE bFrozenEnumFE = new BFrozenEnumFE();
bFrozenEnumFE.loadValue((BObject)BAlarmDbView.this.getTimeZoneDisplay());
int n = BDialog.open((BWidget)BAlarmDbView.this, (String)lex.getText("commands.timeZoneDisplay.label"), (Object)bFrozenEnumFE, (int)3);
if (n == 2) {
return null;
}
try {
BTimeZoneDisplay bTimeZoneDisplay = (BTimeZoneDisplay)bFrozenEnumFE.saveValue();
BAlarmDbView.this.setTimeZoneDisplay(bTimeZoneDisplay);
BAlarmDbView.this.model.options.setTimeZoneDisplay(bTimeZoneDisplay);
BAlarmDbView.this.model.options.save();
BAlarmDbView.this.repaint();
}
catch (Exception exception) {
BDialog.error((BWidget)BAlarmDbView.this, (String)"Cannot Save", (Object)exception.getMessage(), (Throwable)exception);
}
return null;
}
};
this.addColumnCommand = new Command((BWidget)this, BAlarmDbView.lex.module, "commands.addColumn"){
public CommandArtifact doInvoke() {
BGridPane bGridPane = new BGridPane(2);
bGridPane.add("lbl", (BValue)new BLabel("AlarmData."));
BTextField bTextField = new BTextField("");
bGridPane.add("tf", (BValue)bTextField);
int n = BDialog.open((BWidget)BAlarmDbView.this, (String)lex.getText("commands.addColumn.label"), (Object)bGridPane, (int)3, (BImage)null);
if (n == 1) {
try {
BAlarmDbView.this.getConsoleColumns().addDataColumn(null, bTextField.getText());
for (int i = 0; i < 2; ++i) {
DynamicTableModel dynamicTableModel = (DynamicTableModel)BAlarmDbView.this.table.getModel();
dynamicTableModel.setColumnShowable(BAlarmDbView.this.getConsoleColumns().getColumnCount() - 1, true);
dynamicTableModel.setShowColumn(BAlarmDbView.this.getConsoleColumns().getColumnCount() - 1, true);
dynamicTableModel.updateTable();
}
BAlarmDbView.this.model.options.getAlarmDataCols().add(SlotPath.escape((String)bTextField.getText()), (BValue)BString.make((String)bTextField.getText()));
BAlarmDbView.this.model.options.save();
}
catch (Exception exception) {
exception.printStackTrace();
}
}
return null;
}
};
this.removeColumnCommand = new Command((BWidget)this, BAlarmDbView.lex.module, "commands.removeColumn"){
public CommandArtifact doInvoke() {
BGridPane bGridPane = new BGridPane(2);
bGridPane.add("lbl", (BValue)new BLabel("AlarmData."));
ArrayList<String> arrayList = new ArrayList<String>();
BString[] bStringArray = (BString[])BAlarmDbView.this.model.options.getAlarmDataCols().getChildren(class$javax$baja$sys$BString == null ? (class$javax$baja$sys$BString = BAlarmDbView.class$("javax.baja.sys.BString")) : class$javax$baja$sys$BString);
for (int i = 0; i < bStringArray.length; ++i) {
arrayList.add(bStringArray[i].toString());
}
BTextDropDown bTextDropDown = new BTextDropDown(arrayList, 20, false);
bGridPane.add("tf", (BValue)bTextDropDown);
int n = BDialog.open((BWidget)BAlarmDbView.this, (String)lex.getText("commands.removeColumn.label"), (Object)bGridPane, (int)3, (BImage)null);
if (n == 1) {
String string = bTextDropDown.getText();
int n2 = BAlarmDbView.this.getConsoleColumns().dataColumnIndex(string);
if (n2 == -1) {
return null;
}
for (int i = 0; i < 2; ++i) {
int n3;
DynamicTableModel dynamicTableModel = (DynamicTableModel)BAlarmDbView.this.table.getModel();
boolean[] blArray = new boolean[BAlarmDbView.this.getConsoleColumns().getColumnCount()];
for (n3 = 0; n3 < blArray.length; ++n3) {
blArray[n3] = dynamicTableModel.showColumn(n3);
}
for (n3 = n2; n3 < blArray.length - 1; ++n3) {
blArray[n3] = blArray[n3 + 1];
}
blArray[blArray.length - 1] = false;
for (n3 = 0; n3 < blArray.length; ++n3) {
dynamicTableModel.setShowColumn(n3, blArray[n3]);
}
}
BAlarmDbView.this.getConsoleColumns().removeDataColumn(string);
BAlarmDbView.this.model.options.getAlarmDataCols().remove(SlotPath.escape((String)bTextDropDown.getText()));
BAlarmDbView.this.model.options.save();
BAlarmDbView.this.model.updateTable();
}
return null;
}
};
BGridPane bGridPane = new BGridPane(3);
bGridPane.setHalign(BHalign.left);
this.timeRangeEd = new BDynamicTimeRangeFE();
this.timeRangeEd.loadValue((BObject)BDynamicTimeRange.TODAY);
bGridPane.add("timeRangeQuery", (BValue)this.timeRangeEd);
BDynamicTimeRange bDynamicTimeRange = this.getDefaultTimeRange();
if (!bDynamicTimeRange.equals((Object)BDynamicTimeRange.DEFAULT)) {
this.timeRangeEd.loadValue((BObject)bDynamicTimeRange, context);
}
this.linkTo("rangeLink", (BComponent)this.timeRangeEd, (Slot)BWbFieldEditor.setModified, (Slot)query);
BEdgePane bEdgePane = new BEdgePane();
bEdgePane.setTop((BWidget)new BBorderPane((BWidget)bGridPane));
bEdgePane.setCenter((BWidget)BTitlePane.makePane((String)lex.getText("alarm.alarmHistory"), (BTable)this.table, (String)lex.getText("alarm.alarms")));
this.setContent((BWidget)bEdgePane);
this.query();
}
public BToolBar getViewToolBar() {
BToolBar bToolBar = new BToolBar();
bToolBar.add("filter", this.filterCmd);
bToolBar.add("notes", this.notesCmd);
bToolBar.add("timezone", this.tzCmd);
return bToolBar;
}
public void stopped() throws Exception {
super.stopped();
DynamicTableModel dynamicTableModel = (DynamicTableModel)this.table.getModel();
StringBuffer stringBuffer = new StringBuffer();
for (int i = 0; i < dynamicTableModel.getRootColumnCount(); ++i) {
if (!dynamicTableModel.showColumn(i)) continue;
stringBuffer.append(i + ",");
}
if (dynamicTableModel.getRootColumnCount() > 0) {
this.model.options.setDisplayColumns(stringBuffer.toString());
}
this.model.options.setSortColumn(this.model.getLastSortColumn());
this.model.options.setSortAscending(this.model.getLastSortAscending());
if (this.model != null) {
this.model.options.save();
}
}
/*
* WARNING - Removed try catching itself - possible behaviour change.
*/
public void doQuery() {
this.enterBusy();
try {
BAbsTimeFilter bAbsTimeFilter;
BDynamicTimeRange bDynamicTimeRange;
Object object;
StringBuffer stringBuffer;
StringBuffer stringBuffer2 = new StringBuffer("select * ");
if (this.filterSet != null) {
stringBuffer = new StringBuffer(64);
object = this.filterSet.getPredicate();
if (object != null && object.length() > 0) {
if (stringBuffer.length() != 0) {
stringBuffer.append(" and ");
}
stringBuffer.append((String)object);
}
if (!(bDynamicTimeRange = (BDynamicTimeRange)this.timeRangeEd.saveValue()).equals((Object)BDynamicTimeRange.DEFAULT)) {
bAbsTimeFilter = new BAbsTimeFilter();
bAbsTimeFilter.initFromDynamicTimeRange(bDynamicTimeRange);
String string = bAbsTimeFilter.getPredicate(BAlarmRecord.timestamp.getName());
if (stringBuffer.length() != 0) {
stringBuffer.append(" and ");
}
stringBuffer.append(string.toString());
}
if (stringBuffer.length() != 0) {
stringBuffer2.append(" where ").append(stringBuffer.toString());
}
}
if (null == this.alarmDatabase) {
this.alarmDatabase = (BAlarmDatabase)BOrd.make((BOrd)this.alarmService.getAbsoluteOrd(), (BOrd)BOrd.make((String)"alarm:")).get();
}
try {
stringBuffer = this.alarmDatabase.doBqlQuery(BqlQuery.make((String)stringBuffer2.toString()));
}
catch (Exception exception) {
bDynamicTimeRange = BOrd.make((BOrd)((BWbShell)this.getShell()).getActiveOrd(), (BOrd)BOrd.make((String)("alarm:|bql:" + stringBuffer2.toString())));
bAbsTimeFilter = (BICollection)bDynamicTimeRange.resolve(this.getCurrentValue()).get();
stringBuffer = bAbsTimeFilter.cursor();
}
this.model.clear();
while (stringBuffer.next()) {
object = (BAlarmRecord)stringBuffer.get();
if (!this.filterSet.accept((BComplex)object)) continue;
this.model.add((BAlarmRecord)((Object)object));
}
this.model.sortByColumn(this.getSortColumn(), this.getSortDirection());
}
catch (Exception exception) {
exception.printStackTrace();
}
finally {
this.exitBusy();
this.table.sizeColumnsToFit();
}
this.table.fireTableModified(null);
}
public BAlarmService getAlarmService() {
if (this.alarmService == null) {
BOrd bOrd = ((BWbShell)this.getShell()).getActiveOrd();
try {
BOrd bOrd2 = BOrd.make((BOrd)bOrd, (String)"service:alarm:AlarmService");
this.alarmService = (BAlarmService)bOrd2.resolve().get();
}
catch (Exception exception) {
exception.printStackTrace();
}
}
return this.alarmService;
}
public void configFilters() {
BFilterSetEditor bFilterSetEditor = new BFilterSetEditor();
bFilterSetEditor.loadValue((BObject)this.filterSet);
BBorderPane bBorderPane = new BBorderPane((BWidget)bFilterSetEditor);
if (BDialog.open((BWidget)this, (String)"Filters", (Object)bBorderPane, (int)3) != 2) {
try {
if (bFilterSetEditor.isModified()) {
this.filterSet = (BFilterSet)bFilterSetEditor.saveValue();
}
}
catch (Exception exception) {
exception.printStackTrace();
return;
}
}
}
private BFilterSet buildFilterSet() {
BAlarmRecord bAlarmRecord = new BAlarmRecord();
BFilterSet bFilterSet = new BFilterSet();
Property[] propertyArray = bAlarmRecord.getPropertiesArray();
for (int i = 0; i < propertyArray.length; ++i) {
BValue bValue;
AgentList agentList;
if (propertyArray[i].equals(BAlarmRecord.timestamp) || (agentList = (bValue = bAlarmRecord.get(propertyArray[i])).getAgents().filter(AgentFilter.is((Type)BIBqlFilter.TYPE))).size() == 0) continue;
BIBqlFilter bIBqlFilter = (BIBqlFilter)agentList.getDefault().getInstance();
bIBqlFilter.init((BObject)bValue);
BFilterEntry bFilterEntry = new BFilterEntry(false, propertyArray[i].getDefaultDisplayName(this.getCurrentContext()), bIBqlFilter);
bFilterSet.add(propertyArray[i].getName(), (BValue)bFilterEntry, 0, bAlarmRecord.getSlotFacets((Slot)propertyArray[i]), null);
}
return bFilterSet;
}
public void showDetailsDialog(BAlarmRecord bAlarmRecord) {
BAlarmDetailsDialog bAlarmDetailsDialog = new BAlarmDetailsDialog(this.alarmService, this.getTimeZoneDisplay(), bAlarmRecord, (ConsoleTableModel)((DynamicTableModel)this.table.getModel()).getRootModel(), this.context, this.getAlarmDbChannel());
bAlarmDetailsDialog.setBoundsCenteredOnOwner();
bAlarmDetailsDialog.open();
}
public void showNotes(BAlarmRecord bAlarmRecord) {
String string = "";
try {
string = ((BString)bAlarmRecord.getAlarmData().getFacet("notes")).getString();
}
catch (Exception exception) {
// empty catch block
}
BNotesDialog bNotesDialog = new BNotesDialog((BWidget)this, string, this.getUsername(bAlarmRecord), true);
bNotesDialog.setBoundsCenteredOnOwner();
bNotesDialog.open();
String string2 = bNotesDialog.getNewNotes();
if (string2 != null) {
string = string2 + string;
BFacets bFacets = bAlarmRecord.getAlarmData();
HashMap<String, Object> hashMap = new HashMap<String, Object>();
String[] stringArray = bFacets.list();
for (int i = 0; i < stringArray.length; ++i) {
if (stringArray[i].equals("notes")) continue;
BObject bObject = bFacets.get(stringArray[i]);
hashMap.put(stringArray[i], bObject);
}
hashMap.put("notes", BString.make((String)string));
BFacets bFacets2 = BFacets.make(hashMap);
bAlarmRecord.setAlarmData(bFacets2);
try {
this.getAlarmDbChannel().update(bAlarmRecord);
}
catch (Exception exception) {
exception.printStackTrace();
}
}
}
protected String getUsername(BAlarmRecord bAlarmRecord) {
BFoxSession bFoxSession = (BFoxSession)this.getCurrentValueSession();
BFoxClientConnection bFoxClientConnection = bFoxSession.getConnection();
return bFoxClientConnection.getUsername();
}
protected BAlarmDbChannel getAlarmDbChannel() {
BFoxSession bFoxSession = (BFoxSession)this.getCurrentValueSession();
BFoxClientConnection bFoxClientConnection = bFoxSession.getConnection();
return (BAlarmDbChannel)bFoxClientConnection.getChannels().get("alarmdb", BAlarmDbChannel.TYPE);
}
static /* synthetic */ Class class$(String string) {
try {
return Class.forName(string);
}
catch (ClassNotFoundException classNotFoundException) {
throw new NoClassDefFoundError(classNotFoundException.getMessage());
}
}
class Controller
extends TableController {
Controller() {
}
protected void cellReleased(BMouseEvent bMouseEvent, int n, int n2) {
super.cellReleased(bMouseEvent, n, n2);
if (bMouseEvent.getClickCount() == 2) {
BAlarmDbView.this.showDetailsDialog(BAlarmDbView.this.model.getRecord(n));
}
}
public BMenu makeOptionsMenu() {
BMenu bMenu = super.makeOptionsMenu();
bMenu.add("acSep", (BValue)new BSeparator());
bMenu.add("addColumn", BAlarmDbView.this.addColumnCommand);
bMenu.add("removeColumn", BAlarmDbView.this.removeColumnCommand);
return bMenu;
}
}
}