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

212 lines
5.9 KiB
Java

/*
* Decompiled with CFR 0.152.
*
* Could not load the following classes:
* com.tridium.sys.resource.ResourceReport
* javax.baja.agent.AgentList
* javax.baja.log.Log
* javax.baja.sys.Action
* javax.baja.sys.BComplex
* javax.baja.sys.BComponent
* javax.baja.sys.BIcon
* javax.baja.sys.BObject
* javax.baja.sys.BValue
* javax.baja.sys.Context
* javax.baja.sys.Flags
* javax.baja.sys.Property
* javax.baja.sys.Slot
* javax.baja.sys.SlotCursor
* javax.baja.sys.Sys
* javax.baja.sys.Type
*/
package com.tridium.program;
import com.tridium.program.BProgramAction;
import com.tridium.program.BProgramCode;
import com.tridium.program.ProgramBase;
import com.tridium.program.module.BProgramModule;
import com.tridium.sys.resource.ResourceReport;
import java.io.File;
import javax.baja.agent.AgentList;
import javax.baja.log.Log;
import javax.baja.sys.Action;
import javax.baja.sys.BComplex;
import javax.baja.sys.BComponent;
import javax.baja.sys.BIcon;
import javax.baja.sys.BObject;
import javax.baja.sys.BValue;
import javax.baja.sys.Context;
import javax.baja.sys.Flags;
import javax.baja.sys.Property;
import javax.baja.sys.Slot;
import javax.baja.sys.SlotCursor;
import javax.baja.sys.Sys;
import javax.baja.sys.Type;
/*
* Illegal identifiers - consider using --renameillegalidents true
*/
public class BProgram
extends BComponent {
public static final Property code = BProgram.newProperty((int)0, (BValue)new BProgramCode(), null);
public static final Action execute = BProgram.newAction((int)16, null);
public static final Type TYPE;
private static final BIcon icon;
static final Log log;
ProgramBase impl;
static /* synthetic */ Class class$com$tridium$program$BProgram;
public BProgramCode getCode() {
return (BProgramCode)this.get(code);
}
public void setCode(BProgramCode bProgramCode) {
this.set(code, (BValue)bProgramCode, null);
}
public void execute() {
this.invoke(execute, null, null);
}
public Type getType() {
return TYPE;
}
public void started() {
this.loadImpl();
}
public void stopped() {
this.unloadImpl();
}
public void changed(Property property, Context context) {
super.changed(property, context);
if (!this.isRunning()) {
return;
}
if (property == code) {
this.loadImpl();
} else if (Flags.isExecuteOnChange((BComplex)this, (Slot)property)) {
this.execute();
}
}
public void doExecute() {
try {
this.impl.onExecute();
}
catch (Throwable throwable) {
this.error("onExecute", throwable);
}
}
private final void loadImpl() {
this.unloadImpl();
this.impl = this.getCode().newProgramInstance();
this.impl.program = this;
this.updateActionParameters(this.impl);
try {
this.impl.onStart();
}
catch (Throwable throwable) {
this.error("onStart", throwable);
}
}
public final void updateActionParameters() {
this.impl = this.getCode().newProgramInstance();
this.impl.program = this;
this.updateActionParameters(this.impl);
}
private final void updateActionParameters(ProgramBase programBase) {
SlotCursor slotCursor = this.getProperties();
while (slotCursor.nextObject()) {
BObject bObject = slotCursor.get();
if (!(bObject instanceof BProgramAction)) continue;
((BProgramAction)bObject).updateParameter(programBase);
}
}
private final void unloadImpl() {
try {
this.impl.onStop();
}
catch (Throwable throwable) {
this.error("onStop", throwable);
}
this.impl = new ProgramBase();
}
public void error(String string, Throwable throwable) {
log.error("\"" + this.toPathString() + '.' + string + '\"', throwable);
}
public final Object fw(int n, Object object, Object object2, Object object3, Object object4) {
if (n == 21) {
((ResourceReport)object).add("program", 3000);
}
return super.fw(n, object, object2, object3, object4);
}
public AgentList getAgents(Context context) {
AgentList agentList = super.getAgents(context);
agentList.toTop("workbench:PropertySheet");
return agentList;
}
public BIcon getIcon() {
return icon;
}
public BProgramModule getProgramModule() {
BComplex bComplex = this.getParent();
while (bComplex != null) {
if (bComplex instanceof BProgramModule) {
return (BProgramModule)bComplex;
}
bComplex = bComplex.getParent();
}
return null;
}
public static boolean isSpecialModule(String string) {
File file;
File file2 = new File(Sys.getBajaHome(), "bin");
return file2.exists() && (file = new File(file2, string + ".jar")).exists();
}
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.impl = new ProgramBase();
}
public BProgram() {
this.this();
}
static {
Class clazz = class$com$tridium$program$BProgram;
if (clazz == null) {
clazz = class$com$tridium$program$BProgram = BProgram.class("[Lcom.tridium.program.BProgram;", false);
}
TYPE = Sys.loadType((Class)clazz);
icon = BIcon.std((String)"script.png");
log = Log.getLog((String)"sys.program");
}
}