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

222 lines
8.1 KiB
Java

/*
* Decompiled with CFR 0.152.
*
* Could not load the following classes:
* com.tridium.net.HttpUtil
* javax.baja.file.FilePath
* javax.baja.log.Log
* javax.baja.naming.SlotPath
* javax.baja.sys.BValue
* javax.baja.sys.Clock
* javax.baja.sys.LocalizableRuntimeException
* javax.baja.sys.Sys
* javax.baja.sys.Type
* javax.baja.xml.XElem
* javax.baja.xml.XParser
*/
package com.tridium.install;
import com.tridium.install.BModuleList;
import com.tridium.install.GetModuleListMessage;
import com.tridium.install.installable.BModuleInstallable;
import com.tridium.net.HttpUtil;
import com.tridium.platform.daemon.BDaemonSession;
import com.tridium.platform.daemon.message.RequestGarbageCollectionMessage;
import com.tridium.platform.daemon.task.CancelableDaemonSessionTask;
import com.tridium.platform.daemon.task.DaemonSessionTaskListener;
import java.io.InputStream;
import java.net.ConnectException;
import javax.baja.file.FilePath;
import javax.baja.log.Log;
import javax.baja.naming.SlotPath;
import javax.baja.platform.ICancelHint;
import javax.baja.sys.BValue;
import javax.baja.sys.Clock;
import javax.baja.sys.LocalizableRuntimeException;
import javax.baja.sys.Sys;
import javax.baja.sys.Type;
import javax.baja.xml.XElem;
import javax.baja.xml.XParser;
/*
* Illegal identifiers - consider using --renameillegalidents true
*/
public class BRemoteModuleList
extends BModuleList {
public static final Type TYPE;
private static Log log;
private BDaemonSession session;
private boolean initialized;
private XElem[] moduleElems;
private Object MODULE_ELEM_LOCK;
static /* synthetic */ Class class$com$tridium$install$BRemoteModuleList;
public Type getType() {
return TYPE;
}
public void doReload(DaemonSessionTaskListener daemonSessionTaskListener) {
this.init(daemonSessionTaskListener);
}
public void reset() {
super.reset();
this.moduleElems = null;
this.getModules().removeAll();
this.initialized = false;
}
/*
* WARNING - Removed try catching itself - possible behaviour change.
* Unable to fully structure code
* Enabled aggressive block sorting
* Enabled unnecessary exception pruning
* Enabled aggressive exception aggregation
*/
public synchronized void doInit(DaemonSessionTaskListener var1_1) {
if (!this.isLocalInstance()) {
return;
}
if (this.initialized != false) return;
var2_2 = Clock.ticks();
BRemoteModuleList.log.trace("building remote module list");
this.getModules().removeAll();
var4_3 = this.getNewModuleInfoTask();
if (var1_1 != null) {
var1_1.taskStarted(var4_3);
}
try {
try {
var8_4 = this.MODULE_ELEM_LOCK;
synchronized (var8_4) {
if (this.moduleElems == null) {
this.moduleElems = this.fetchModules(null);
}
var7_5 = this.moduleElems;
// MONITOREXIT @DISABLED, blocks:[0, 1, 2, 4] lbl18 : MonitorExitStatement: MONITOREXIT : var8_4
var10_8 = 0;
if (true) ** GOTO lbl34
}
do {
if (!(var11_9 = this.uriToFilePath(var7_5[var10_8].get("path"))).getParent().getName().equals("lib")) {
var12_10 = new BModuleInstallable(var7_5[var10_8].getl("size", (long)-1), var11_9.getName(), var7_5[var10_8].elem("module"));
var13_11 = SlotPath.escape((String)var12_10.getInstallableName());
BRemoteModuleList.log.trace("adding remote module " + var12_10.getInstallableName());
if (this.getModules().getProperty(var13_11) != null) {
BRemoteModuleList.log.error(this.getLexicon().getText("ModuleList.exception.dupModule", new Object[]{var12_10.getInstallableName()}));
throw new LocalizableRuntimeException("platform", "ModuleList.exception.dupModule", new Object[]{var12_10.getInstallableName()});
}
this.getModules().add(var13_11, (BValue)var12_10);
}
++var10_8;
lbl34:
// 2 sources
} while (var10_8 < var7_5.length && !var4_3.isCanceled());
if (var4_3.isCanceled()) {
throw new ICancelHint.CanceledException();
}
this.initialized = true;
}
catch (ICancelHint.CanceledException var7_6) {
throw var7_6;
}
catch (Exception var7_7) {
throw new LocalizableRuntimeException("platform", "RemoteModuleList.exception.xmlParse", (Throwable)var7_7);
}
var6_14 = null;
}
catch (Throwable var5_12) {
var6_13 = null;
Log.getLog((String)"platform.daemonTuning").trace("moduleList " + (Clock.ticks() - var2_2) + "ms");
if (var1_1 == null) throw var5_12;
var1_1.taskFinished(var4_3);
throw var5_12;
}
Log.getLog((String)"platform.daemonTuning").trace("moduleList " + (Clock.ticks() - var2_2) + "ms");
if (var1_1 == null) return;
var1_1.taskFinished(var4_3);
}
protected XElem[] fetchModules(String string) throws Exception, ConnectException {
XElem[] xElemArray = XParser.make((InputStream)this.session.getInputStream(new GetModuleListMessage(false, true, true, string))).parse().elems("moduleItem");
try {
if (this.session.getHostProperties().getOsName().toLowerCase().startsWith("win")) {
log.trace("sending remote garbage collection");
this.session.sendMessage(RequestGarbageCollectionMessage.getInstance());
}
}
catch (Exception exception) {}
return xElemArray;
}
/*
* WARNING - Removed try catching itself - possible behaviour change.
* Enabled aggressive block sorting
* Enabled unnecessary exception pruning
* Enabled aggressive exception aggregation
*/
public void setModuleElems(XElem[] xElemArray) {
Object object = this.MODULE_ELEM_LOCK;
synchronized (object) {
this.moduleElems = xElemArray;
return;
}
}
public CancelableDaemonSessionTask getNewModuleInfoTask() {
return new CancelableDaemonSessionTask(this.getLexicon(), "RemoteModuleList.dialog.loading.title", "RemoteModuleList.dialog.loading.message");
}
private final FilePath uriToFilePath(String string) {
if (string.startsWith("/files")) {
return new FilePath("/" + HttpUtil.decodeUrl((String)string.substring(7)));
}
if (string.startsWith("/niagara")) {
return new FilePath("!" + HttpUtil.decodeUrl((String)string.substring(9)));
}
return null;
}
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() {
this.session = null;
this.initialized = false;
this.moduleElems = null;
this.MODULE_ELEM_LOCK = new Object();
}
public BRemoteModuleList() {
this.this();
}
public BRemoteModuleList(BDaemonSession bDaemonSession) {
this.this();
this.session = bDaemonSession;
this.setLocalInstance(true);
this.reset();
}
static {
Class clazz = class$com$tridium$install$BRemoteModuleList;
if (clazz == null) {
clazz = class$com$tridium$install$BRemoteModuleList = BRemoteModuleList.class("[Lcom.tridium.install.BRemoteModuleList;", false);
}
TYPE = Sys.loadType((Class)clazz);
log = Log.getLog((String)"platform");
}
}