niagara-ax/modules/cfr_output/com/tridium/alarm/BConsoleRecipient.java
2026-03-17 13:31:18 -07:00

339 lines
13 KiB
Java

/*
* Decompiled with CFR 0.152.
*
* Could not load the following classes:
* com.tridium.bql.util.BDynamicTimeRange
* javax.baja.collection.BICollection
* javax.baja.data.BIDataValue
* javax.baja.log.Log
* javax.baja.naming.BOrd
* javax.baja.naming.SlotPath
* javax.baja.nre.util.Array
* javax.baja.security.BIProtected
* javax.baja.security.BPermissions
* javax.baja.security.PermissionException
* javax.baja.sys.BBoolean
* javax.baja.sys.BFacets
* javax.baja.sys.BIcon
* javax.baja.sys.BObject
* javax.baja.sys.BValue
* javax.baja.sys.Context
* javax.baja.sys.Cursor
* javax.baja.sys.Property
* javax.baja.sys.Sys
* javax.baja.sys.Type
* javax.baja.user.BUser
* javax.baja.user.BUserService
*/
package com.tridium.alarm;
import com.tridium.alarm.AlarmsToSourcesCursor;
import com.tridium.alarm.BAlarmConsoleChannel;
import com.tridium.bql.util.BDynamicTimeRange;
import java.util.HashMap;
import java.util.Map;
import javax.baja.alarm.BAlarmClass;
import javax.baja.alarm.BAlarmRecipient;
import javax.baja.alarm.BAlarmRecord;
import javax.baja.alarm.BAlarmService;
import javax.baja.alarm.BAlarmTransitionBits;
import javax.baja.collection.BICollection;
import javax.baja.data.BIDataValue;
import javax.baja.log.Log;
import javax.baja.naming.BOrd;
import javax.baja.naming.SlotPath;
import javax.baja.nre.util.Array;
import javax.baja.security.BIProtected;
import javax.baja.security.BPermissions;
import javax.baja.security.PermissionException;
import javax.baja.sys.BBoolean;
import javax.baja.sys.BFacets;
import javax.baja.sys.BIcon;
import javax.baja.sys.BObject;
import javax.baja.sys.BValue;
import javax.baja.sys.Context;
import javax.baja.sys.Cursor;
import javax.baja.sys.Property;
import javax.baja.sys.Sys;
import javax.baja.sys.Type;
import javax.baja.user.BUser;
import javax.baja.user.BUserService;
/*
* Illegal identifiers - consider using --renameillegalidents true
*/
public class BConsoleRecipient
extends BAlarmRecipient {
public static final Property transitions = BConsoleRecipient.newProperty((int)0, (BValue)BAlarmTransitionBits.ALL, (BFacets)BFacets.make((String[])new String[]{"showNormal"}, (BIDataValue[])new BBoolean[]{BBoolean.FALSE}));
public static final Property routeAcks = BConsoleRecipient.newProperty((int)1, (boolean)true, null);
public static final Property defaultTimeRange = BConsoleRecipient.newProperty((int)0, (BValue)BDynamicTimeRange.DEFAULT, null);
public static final Type TYPE;
public static final Log logger;
private static final BIcon icon;
Array channels;
private Map channelUsageCounts;
static /* synthetic */ Class class$com$tridium$alarm$BConsoleRecipient;
static /* synthetic */ Class class$com$tridium$alarm$BAlarmConsoleChannel;
static /* synthetic */ Class class$javax$baja$user$BUser;
public BAlarmTransitionBits getTransitions() {
return (BAlarmTransitionBits)this.get(transitions);
}
public void setTransitions(BAlarmTransitionBits bAlarmTransitionBits) {
this.set(transitions, (BValue)bAlarmTransitionBits, null);
}
public boolean getRouteAcks() {
return this.getBoolean(routeAcks);
}
public void setRouteAcks(boolean bl) {
this.setBoolean(routeAcks, bl, null);
}
public BDynamicTimeRange getDefaultTimeRange() {
return (BDynamicTimeRange)this.get(defaultTimeRange);
}
public void setDefaultTimeRange(BDynamicTimeRange bDynamicTimeRange) {
this.set(defaultTimeRange, (BValue)bDynamicTimeRange, null);
}
public Type getType() {
return TYPE;
}
public void handleAlarm(BAlarmRecord bAlarmRecord) {
logger.trace("BConsoleRecipient.handleAlarm: " + (Object)((Object)bAlarmRecord.getSourceState()));
int n = 0;
while (n < this.channels.size()) {
try {
BAlarmConsoleChannel bAlarmConsoleChannel = (BAlarmConsoleChannel)((Object)this.channels.get(n));
bAlarmConsoleChannel.newAlarm(this, bAlarmRecord);
}
catch (PermissionException permissionException) {
}
catch (Exception exception) {}
++n;
}
}
/*
* WARNING - Removed try catching itself - possible behaviour change.
* Enabled aggressive block sorting
* Enabled unnecessary exception pruning
* Enabled aggressive exception aggregation
*/
public void registerAlarmChannel(BAlarmConsoleChannel bAlarmConsoleChannel) {
block6: {
Map map = this.channelUsageCounts;
synchronized (map) {
Integer n;
block5: {
n = (Integer)this.channelUsageCounts.get((Object)bAlarmConsoleChannel);
if (n != null) break block5;
this.channelUsageCounts.put(bAlarmConsoleChannel, new Integer(1));
break block6;
}
n = new Integer(n + 1);
this.channelUsageCounts.put(bAlarmConsoleChannel, n);
}
}
if (this.channels.contains((Object)bAlarmConsoleChannel)) return;
this.channels.add((Object)bAlarmConsoleChannel);
try {
bAlarmConsoleChannel.startWorker();
return;
}
catch (Exception exception) {
exception.printStackTrace();
}
}
/*
* WARNING - Removed try catching itself - possible behaviour change.
* Enabled aggressive block sorting
* Enabled unnecessary exception pruning
* Enabled aggressive exception aggregation
*/
public void unregisterAlarmChannel(BAlarmConsoleChannel bAlarmConsoleChannel) {
try {
Map map = this.channelUsageCounts;
synchronized (map) {
block6: {
Integer n;
block5: {
n = (Integer)this.channelUsageCounts.get((Object)bAlarmConsoleChannel);
if (n == null) return;
if ((n = new Integer(n - 1)) != 0) break block5;
this.channelUsageCounts.remove((Object)bAlarmConsoleChannel);
this.channels.remove((Object)bAlarmConsoleChannel);
bAlarmConsoleChannel.stopWorker();
break block6;
}
this.channelUsageCounts.put(bAlarmConsoleChannel, n);
}
return;
}
}
catch (Exception exception) {
exception.printStackTrace();
}
}
public Cursor getOpenAlarmSources(Context context) {
return new AlarmsToSourcesCursor(this.getOpenAlarms(context));
}
public Cursor getOpenAlarms(Context context) {
String string = this.getInitialAlarmQuery(context);
return ((BICollection)BOrd.make((String)string).resolve((BObject)this).get()).cursor();
}
public String getInitialAlarmQuery(Context context) {
BUserService bUserService;
BUser bUser = null;
if (context != null) {
bUser = context.getUser();
}
if (bUser == null && !(bUser = (bUserService = (BUserService)Sys.getService((Type)BUserService.TYPE)).getAdmin()).getEnabled()) {
Class clazz = class$javax$baja$user$BUser;
if (clazz == null) {
clazz = class$javax$baja$user$BUser = BConsoleRecipient.class("[Ljavax.baja.user.BUser;", false);
}
BUser[] bUserArray = (BUser[])bUserService.getChildren(clazz);
int n = 0;
while (n < bUserArray.length) {
if (bUserArray[n].getEnabled() && bUserArray[n].getPermissions().isSuperUser()) {
bUser = bUserArray[n];
break;
}
++n;
}
}
return this.getInitialAlarmQuery(bUser);
}
public String getInitialAlarmQuery(BUser bUser) {
String string;
BAlarmService bAlarmService = (BAlarmService)Sys.getService((Type)BAlarmService.TYPE);
String[] stringArray = this.getSubscribedAlarmClasses();
StringBuffer stringBuffer = new StringBuffer("alarm:|bql:select * from openAlarms");
int n = 0;
StringBuffer stringBuffer2 = new StringBuffer();
int n2 = 0;
while (n2 < stringArray.length) {
try {
string = stringArray[n2];
bUser.check((BIProtected)bAlarmService.lookupAlarmClass(string), BPermissions.operatorRead);
if (n > 0) {
stringBuffer2.append(" or ");
} else {
stringBuffer2.append("(");
}
++n;
stringBuffer2.append("alarmClass = '" + SlotPath.escape((String)string) + '\'');
}
catch (PermissionException permissionException) {}
++n2;
}
if (n > 0) {
stringBuffer2.append(")");
}
stringArray = this.getSubscribedEscalatedAlarmClasses(1);
n2 = 0;
while (n2 < stringArray.length) {
try {
string = stringArray[n2];
bUser.check((BIProtected)bAlarmService.lookupAlarmClass(string), BPermissions.operatorRead);
if (n > 0) {
stringBuffer2.append(" or ");
}
stringBuffer2.append("(alarmClass = '" + SlotPath.escape((String)string) + "' and (alarmData." + BAlarmClass.ESCALATED + " != null and alarmData." + BAlarmClass.ESCALATED + " = '" + BAlarmClass.LEVEL_3 + "' or alarmData." + BAlarmClass.ESCALATED + " = '" + BAlarmClass.LEVEL_2 + "' or alarmData." + BAlarmClass.ESCALATED + " = '" + BAlarmClass.LEVEL_1 + "'))");
++n;
}
catch (PermissionException permissionException) {}
++n2;
}
stringArray = this.getSubscribedEscalatedAlarmClasses(2);
n2 = 0;
while (n2 < stringArray.length) {
try {
string = stringArray[n2];
bUser.check((BIProtected)bAlarmService.lookupAlarmClass(string), BPermissions.operatorRead);
if (n > 0) {
stringBuffer2.append(" or ");
}
stringBuffer2.append("(alarmClass = '" + SlotPath.escape((String)string) + "' and (alarmData." + BAlarmClass.ESCALATED + " != null and alarmData." + BAlarmClass.ESCALATED + " = '" + BAlarmClass.LEVEL_3 + "' or alarmData." + BAlarmClass.ESCALATED + " = '" + BAlarmClass.LEVEL_2 + "'))");
++n;
}
catch (PermissionException permissionException) {}
++n2;
}
stringArray = this.getSubscribedEscalatedAlarmClasses(3);
n2 = 0;
while (n2 < stringArray.length) {
try {
string = stringArray[n2];
bUser.check((BIProtected)bAlarmService.lookupAlarmClass(string), BPermissions.operatorRead);
if (n > 0) {
stringBuffer2.append(" or ");
}
stringBuffer2.append("(alarmClass = '" + SlotPath.escape((String)string) + "' and alarmData." + BAlarmClass.ESCALATED + " != null and alarmData." + BAlarmClass.ESCALATED + " = '" + BAlarmClass.LEVEL_3 + "')");
++n;
}
catch (PermissionException permissionException) {}
++n2;
}
if (stringBuffer2.length() > 0) {
stringBuffer.append(" where (");
stringBuffer.append(stringBuffer2.toString() + ')');
} else {
stringBuffer.append(" where alarmClass = 'null'");
}
return stringBuffer.toString();
}
public BIcon getIcon() {
return icon;
}
static /* synthetic */ Class class(String string, boolean bl) {
try {
Class<?> clazz = Class.forName(string);
if (!bl) {
clazz = clazz.getComponentType();
}
return clazz;
}
catch (ClassNotFoundException classNotFoundException) {
throw new NoClassDefFoundError(classNotFoundException.getMessage());
}
}
private final /* synthetic */ void this() {
Class clazz = class$com$tridium$alarm$BAlarmConsoleChannel;
if (clazz == null) {
clazz = class$com$tridium$alarm$BAlarmConsoleChannel = BConsoleRecipient.class("[Lcom.tridium.alarm.BAlarmConsoleChannel;", false);
}
this.channels = new Array(clazz);
this.channelUsageCounts = new HashMap();
}
public BConsoleRecipient() {
this.this();
}
static {
Class clazz = class$com$tridium$alarm$BConsoleRecipient;
if (clazz == null) {
clazz = class$com$tridium$alarm$BConsoleRecipient = BConsoleRecipient.class("[Lcom.tridium.alarm.BConsoleRecipient;", false);
}
TYPE = Sys.loadType((Class)clazz);
logger = Log.getLog((String)"alarm");
icon = BIcon.make((BIcon)BIcon.std((String)"computer.png"), (BIcon)BIcon.std((String)"badges/alarm.png"));
}
}