link start!

This commit is contained in:
cherubin
2026-03-17 13:31:18 -07:00
commit 08abe87cfb
5910 changed files with 386288 additions and 0 deletions
@@ -0,0 +1,14 @@
/*
* Decompiled with CFR 0.152.
*/
package javax.baja.sys;
import javax.baja.sys.BajaRuntimeException;
public class AbstractTypeException
extends BajaRuntimeException {
public AbstractTypeException(String string) {
super(string);
}
}
@@ -0,0 +1,18 @@
/*
* Decompiled with CFR 0.152.
*/
package javax.baja.sys;
import javax.baja.sys.BValue;
import javax.baja.sys.Slot;
import javax.baja.sys.Type;
public interface Action
extends Slot {
public Type getParameterType();
public BValue getParameterDefault();
public Type getReturnType();
}
@@ -0,0 +1,20 @@
/*
* Decompiled with CFR 0.152.
*/
package javax.baja.sys;
import javax.baja.sys.BajaRuntimeException;
public class ActionInvokeException
extends BajaRuntimeException {
private Throwable ex;
public ActionInvokeException(String string, Throwable throwable) {
super(string, throwable);
}
public ActionInvokeException(Throwable throwable) {
super(throwable);
}
}
@@ -0,0 +1,17 @@
/*
* Decompiled with CFR 0.152.
*/
package javax.baja.sys;
import javax.baja.sys.BajaRuntimeException;
public class AlreadyParentedException
extends BajaRuntimeException {
public AlreadyParentedException(String string) {
super(string);
}
public AlreadyParentedException() {
}
}
@@ -0,0 +1,913 @@
/*
* Decompiled with CFR 0.152.
*
* Could not load the following classes:
* javax.baja.nre.util.IntHashMap
* javax.baja.nre.util.TextUtil
*/
package javax.baja.sys;
import com.tridium.timezone.HistoricalTimeZoneEra;
import com.tridium.util.TimeFormat;
import java.io.DataInput;
import java.io.DataOutput;
import java.io.IOException;
import java.util.Calendar;
import java.util.GregorianCalendar;
import java.util.SimpleTimeZone;
import java.util.TimeZone;
import javax.baja.data.BIDataValue;
import javax.baja.nre.util.IntHashMap;
import javax.baja.nre.util.TextUtil;
import javax.baja.sys.BDate;
import javax.baja.sys.BIComparable;
import javax.baja.sys.BIDate;
import javax.baja.sys.BITime;
import javax.baja.sys.BMonth;
import javax.baja.sys.BObject;
import javax.baja.sys.BRelTime;
import javax.baja.sys.BSimple;
import javax.baja.sys.BTime;
import javax.baja.sys.BWeekday;
import javax.baja.sys.BajaRuntimeException;
import javax.baja.sys.Context;
import javax.baja.sys.LocalizableRuntimeException;
import javax.baja.sys.Sys;
import javax.baja.sys.Type;
import javax.baja.timezone.BTimeZone;
import javax.baja.timezone.DstRule;
/*
* Illegal identifiers - consider using --renameillegalidents true
*/
public final class BAbsTime
extends BSimple
implements BIDate,
BITime,
BIComparable,
BIDataValue {
private static final int[] daysInMonth = new int[]{31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31};
public static final BAbsTime DEFAULT;
public static final BAbsTime NULL;
public static final String TIME_MODE_FACET = "timeMode";
public static final int TIME_MODE_DEFAULT = 0;
public static final int TIME_MODE_WALL_STRICT = 1;
public static final int TIME_MODE_STANDARD = 2;
public static final int TIME_MODE_DAYLIGHT = 3;
public static final int TIME_MODE_UTC = 4;
public static final int TIME_MODE_WALL_SCHD = 5;
public static final BAbsTime END_OF_TIME;
public static final Type TYPE;
private static IntHashMap MIDDLE_OF_YEAR_MAP;
private long millis;
private BTimeZone timeZone;
private int bits0;
private int bits1;
static /* synthetic */ Class class$javax$baja$sys$BAbsTime;
public static final BAbsTime make() {
return new BAbsTime(System.currentTimeMillis(), BTimeZone.getLocal());
}
public static final BAbsTime now() {
return new BAbsTime(System.currentTimeMillis(), BTimeZone.getLocal());
}
public static final BAbsTime make(long l) {
if (l == 0L) {
return NULL;
}
if (l >= END_OF_TIME.getMillis()) {
return END_OF_TIME;
}
return new BAbsTime(l, BTimeZone.getLocal());
}
public static final BAbsTime make(long l, BTimeZone bTimeZone) {
return new BAbsTime(l, bTimeZone);
}
public static final BAbsTime make(int n, BMonth bMonth, int n2) {
return BAbsTime.make(n, bMonth, n2, 0, 0, 0, 0, BTimeZone.getLocal(), null);
}
public static final BAbsTime make(int n, BMonth bMonth, int n2, int n3, int n4) {
return BAbsTime.make(n, bMonth, n2, n3, n4, 0, 0, BTimeZone.getLocal(), null);
}
public static final BAbsTime make(int n, BMonth bMonth, int n2, int n3, int n4, int n5, int n6) {
return BAbsTime.make(n, bMonth, n2, n3, n4, n5, n6, BTimeZone.getLocal(), null);
}
public static final BAbsTime make(int n, BMonth bMonth, int n2, int n3, int n4, int n5, int n6, BTimeZone bTimeZone) {
return BAbsTime.make(n, bMonth, n2, n3, n4, n5, n6, bTimeZone, null);
}
public static final BAbsTime make(int n, BMonth bMonth, int n2, int n3, int n4, int n5, int n6, BTimeZone bTimeZone, Context context) {
Calendar calendar = BAbsTime.makeCalendar(n, bMonth, n2, n3, n4, n5, n6, bTimeZone, context);
BAbsTime bAbsTime = new BAbsTime(calendar.getTimeInMillis(), bTimeZone);
int n7 = calendar.get(1);
bAbsTime.bits0 |= (n7 & (char)-1) << 16;
n7 = calendar.get(14);
bAbsTime.bits0 |= n7 & (char)-1;
n7 = calendar.get(2);
bAbsTime.bits1 |= (n7 & 0xF) << 25;
n7 = calendar.get(5);
bAbsTime.bits1 |= (n7 & 0x1F) << 20;
n7 = calendar.get(11);
bAbsTime.bits1 |= (n7 & 0x1F) << 15;
n7 = calendar.get(12);
bAbsTime.bits1 |= (n7 & 0x3F) << 9;
n7 = calendar.get(13);
bAbsTime.bits1 |= (n7 & 0x3F) << 3;
n7 = calendar.get(7) - 1;
bAbsTime.bits1 |= n7 & 7;
if (calendar.get(16) != 0) {
bAbsTime.bits1 |= 0x20000000;
}
return bAbsTime;
}
public static final Calendar makeCalendar(int n, BMonth bMonth, int n2, int n3, int n4, int n5, int n6, BTimeZone bTimeZone, Context context) {
long l;
int n7 = 0;
if (context != null) {
n7 = context.getFacets().geti(TIME_MODE_FACET, 0);
}
int n8 = n7;
GregorianCalendar gregorianCalendar = new GregorianCalendar(bTimeZone.getJavaTimeZone());
boolean bl = false;
if (n8 == 4) {
gregorianCalendar.set(15, 0);
gregorianCalendar.set(16, 0);
bl = true;
} else if (n8 == 3) {
l = BAbsTime.getMiddleOfYear(n);
gregorianCalendar.set(15, bTimeZone.getUtcOffset(l));
gregorianCalendar.set(16, bTimeZone.getDaylightAdjustment(l));
bl = true;
} else if (n8 == 2) {
gregorianCalendar.set(15, bTimeZone.getUtcOffset(BAbsTime.getMiddleOfYear(n)));
gregorianCalendar.set(16, 0);
bl = true;
} else if (n8 == 0 || n8 == 1 || n8 == 5) {
Object object;
DstRule dstRule;
boolean bl2;
l = BAbsTime.getMiddleOfYear(n);
boolean bl3 = false;
if (n8 == 1) {
bl3 = bl2 = true;
}
if ((dstRule = bTimeZone.getDaylightStartRule(l)) != null) {
object = dstRule.getMonth();
int n9 = bTimeZone.getDay(n, dstRule);
long l2 = Long.MIN_VALUE;
if (dstRule.getTimeMode() == 2) {
int n10 = BAbsTime.getDaysInMonth(n, (BMonth)object);
l2 = dstRule.getTime().getTimeOfDayMillis() + (long)bTimeZone.getUtcOffset(l);
while (l2 >= 86400000L) {
l2 -= 86400000L;
if (++n9 <= n10) continue;
object = ((BMonth)object).next();
n9 = 1;
n10 = BAbsTime.getDaysInMonth(n, (BMonth)object);
}
while (l2 < 0L) {
l2 += 86400000L;
if (--n9 >= 1) continue;
object = ((BMonth)object).previous();
n9 = n10 = BAbsTime.getDaysInMonth(n, (BMonth)object);
}
}
if (bMonth.equals(object)) {
bl2 = false;
if (n2 == n9) {
long l3 = BTime.make(n3, n4, n5, n6).getTimeOfDayMillis();
if (l2 == Long.MIN_VALUE) {
l2 = dstRule.getTime().getTimeOfDayMillis();
}
long l4 = l2 + (long)bTimeZone.getDaylightAdjustment(l);
if (l3 >= l2 && l3 < l4) {
if (n8 == 1) {
throw new LocalizableRuntimeException("baja", "AbsTime.invalidWallTime", new Object[]{BTime.make(n3, n4, n5, n6)});
}
BTime bTime = n8 == 0 ? BTime.make(BRelTime.make(l3 + (long)bTimeZone.getDaylightAdjustment(l))) : BTime.make(BRelTime.make(l4));
n3 = bTime.getHour();
n4 = bTime.getMinute();
n5 = 0;
n6 = 0;
}
}
}
}
if (bl2 && (object = bTimeZone.getDaylightEndRule(l)) != null) {
int n11;
BMonth bMonth2 = ((DstRule)object).getMonth();
int n12 = bTimeZone.getDay(n, (DstRule)object);
long l5 = Long.MIN_VALUE;
if (((DstRule)object).getTimeMode() == 2) {
n11 = BAbsTime.getDaysInMonth(n, bMonth2);
l5 = ((DstRule)object).getTime().getTimeOfDayMillis() + (long)bTimeZone.getUtcOffset(l);
while (l5 >= 86400000L) {
l5 -= 86400000L;
if (++n12 <= n11) continue;
bMonth2 = bMonth2.next();
n12 = 1;
n11 = BAbsTime.getDaysInMonth(n, bMonth2);
}
while (l5 < 0L) {
l5 += 86400000L;
if (--n12 >= 1) continue;
bMonth2 = bMonth2.previous();
n12 = n11 = BAbsTime.getDaysInMonth(n, bMonth2);
}
} else if (((DstRule)object).getTimeMode() == 0) {
n11 = BAbsTime.getDaysInMonth(n, bMonth2);
l5 = ((DstRule)object).getTime().getTimeOfDayMillis() - (long)bTimeZone.getDaylightAdjustment(l);
while (l5 < 0L) {
l5 += 86400000L;
if (--n12 >= 1) continue;
bMonth2 = bMonth2.previous();
n12 = n11 = BAbsTime.getDaysInMonth(n, bMonth2);
}
}
if (bMonth.equals(bMonth2)) {
bl2 = false;
if (n2 == n12) {
long l6 = BTime.make(n3, n4, n5, n6).getTimeOfDayMillis();
if (l5 == Long.MIN_VALUE) {
l5 = ((DstRule)object).getTime().getTimeOfDayMillis();
}
long l7 = l5 + (long)bTimeZone.getDaylightAdjustment(l);
if (l6 >= l5 && l6 < l7) {
throw new LocalizableRuntimeException("baja", "AbsTime.ambigWallTime", new Object[]{BTime.make(n3, n4, n5, n6)});
}
}
}
}
}
gregorianCalendar.set(n, bMonth.getOrdinal(), n2, n3, n4, n5);
gregorianCalendar.set(14, n6);
if (bl) {
l = gregorianCalendar.getTimeInMillis();
gregorianCalendar = new GregorianCalendar(bTimeZone.getJavaTimeZone());
gregorianCalendar.setTimeInMillis(l);
}
return gregorianCalendar;
}
public static final long getMiddleOfYear(int n) {
Long l = null;
if (MIDDLE_OF_YEAR_MAP == null) {
MIDDLE_OF_YEAR_MAP = new IntHashMap();
} else {
l = (Long)MIDDLE_OF_YEAR_MAP.get(n);
}
if (l == null) {
GregorianCalendar gregorianCalendar = new GregorianCalendar(BTimeZone.getJavaUTCInstance());
gregorianCalendar.clear();
gregorianCalendar.set(n, 6, 1);
MIDDLE_OF_YEAR_MAP.put(n, (Object)new Long(gregorianCalendar.getTimeInMillis()));
return gregorianCalendar.getTimeInMillis();
}
return l;
}
public static final BAbsTime make(BAbsTime bAbsTime, BTime bTime) {
return BAbsTime.make(bAbsTime.getYear(), bAbsTime.getMonth(), bAbsTime.getDay(), bTime.getHour(), bTime.getMinute(), bTime.getSecond(), bTime.getMillisecond(), bAbsTime.getTimeZone());
}
public static final BAbsTime make(BDate bDate, BTime bTime, BTimeZone bTimeZone) {
return BAbsTime.make(bDate.getYear(), bDate.getMonth(), bDate.getDay(), bTime.getHour(), bTime.getMinute(), bTime.getSecond(), bTime.getMillisecond(), bTimeZone);
}
public static final BAbsTime make(BAbsTime bAbsTime, BTimeZone bTimeZone) {
if (bAbsTime.timeZone == bTimeZone) {
return bAbsTime;
}
return BAbsTime.make(bAbsTime.millis, bTimeZone);
}
public static final BAbsTime makeDayOfYear(int n, int n2, int n3, int n4, int n5, int n6, BTimeZone bTimeZone) {
int n7 = BAbsTime.getDaysInYear(n);
if (n2 > n7) {
throw new IllegalArgumentException(n2 + " > " + n7);
}
if (n2 < 1) {
throw new IllegalArgumentException(n2 + " < 1");
}
BMonth bMonth = BMonth.january;
int n8 = BAbsTime.getDaysInMonth(n, bMonth);
while (n2 > n8) {
n2 -= n8;
bMonth = bMonth.next();
n8 = BAbsTime.getDaysInMonth(n, bMonth);
}
return BAbsTime.make(n, bMonth, n2, n3, n4, n5, n6, bTimeZone);
}
public static final BAbsTime make(String string) throws IOException {
return (BAbsTime)DEFAULT.decodeFromString(string);
}
public final long getMillis() {
return this.millis;
}
public final int getYear() {
if (this.bits0 == 0) {
this.millisToFields();
}
return this.bits0 >> 16 & (char)-1;
}
public final BMonth getMonth() {
if (this.bits0 == 0) {
this.millisToFields();
}
return BMonth.make(this.bits1 >> 25 & 0xF);
}
public final int getDay() {
if (this.bits0 == 0) {
this.millisToFields();
}
return this.bits1 >> 20 & 0x1F;
}
public final int getHour() {
if (this.bits0 == 0) {
this.millisToFields();
}
return this.bits1 >> 15 & 0x1F;
}
public final int getMinute() {
if (this.bits0 == 0) {
this.millisToFields();
}
return this.bits1 >> 9 & 0x3F;
}
public final int getSecond() {
if (this.bits0 == 0) {
this.millisToFields();
}
return this.bits1 >> 3 & 0x3F;
}
public final int getMillisecond() {
if (this.bits0 == 0) {
this.millisToFields();
}
return this.bits0 & (char)-1;
}
public final BWeekday getWeekday() {
if (this.bits0 == 0) {
this.millisToFields();
}
return BWeekday.make(this.bits1 & 7);
}
public static final BWeekday getWeekday(int n, BMonth bMonth, int n2) {
GregorianCalendar gregorianCalendar = new GregorianCalendar(BTimeZone.getJavaUTCInstance());
gregorianCalendar.set(n, bMonth.getOrdinal(), n2);
int n3 = gregorianCalendar.get(7);
if (n3 == 1) {
return BWeekday.sunday;
}
if (n3 == 2) {
return BWeekday.monday;
}
if (n3 == 3) {
return BWeekday.tuesday;
}
if (n3 == 4) {
return BWeekday.wednesday;
}
if (n3 == 5) {
return BWeekday.thursday;
}
if (n3 == 6) {
return BWeekday.friday;
}
if (n3 == 7) {
return BWeekday.saturday;
}
throw new BajaRuntimeException("Unrecognized weekday: " + n3);
}
public final long getTimeOfDayMillis() {
return (long)(this.getHour() * 60 * 60) * 1000L + (long)(this.getMinute() * 60) * 1000L + (long)this.getSecond() * 1000L + (long)this.getMillisecond();
}
public final int getDayOfYear() {
int n = this.getYear();
BMonth bMonth = this.getMonth();
int n2 = 0;
BMonth bMonth2 = BMonth.january;
while (bMonth2 != bMonth) {
n2 += BAbsTime.getDaysInMonth(n, bMonth2);
bMonth2 = bMonth2.next();
}
return n2 += this.getDay();
}
public final BDate getDate() {
return BDate.make(this.getYear(), this.getMonth(), this.getDay());
}
public final BTime getTime() {
return BTime.make(this.getHour(), this.getMinute(), this.getSecond(), this.getMillisecond());
}
public final BTimeZone getTimeZone() {
return this.timeZone;
}
public final int getTimeZoneOffset() {
int n;
int n2;
if (this.timeZone.isHistorical()) {
HistoricalTimeZoneEra historicalTimeZoneEra = (HistoricalTimeZoneEra)this.timeZone.fw(1101, new Long(this.millis), null, null, null);
n2 = historicalTimeZoneEra.getActiveUtcOffsetMillis();
int n3 = 0;
if (historicalTimeZoneEra.getStartRule() != null) {
n3 = historicalTimeZoneEra.getStartRule().getDaylightAdjMillis();
}
n = n3;
} else {
n2 = this.timeZone.getUtcOffset();
n = this.timeZone.getDaylightAdjustment();
}
if (n == 0) {
return n2;
}
if (!this.inDaylightTime()) {
return n2;
}
return n2 + n;
}
public final boolean inDaylightTime() {
if (this.bits0 == 0) {
this.millisToFields();
}
boolean bl = false;
if ((this.bits1 >> 29 & 1) != 0) {
bl = true;
}
return bl;
}
public final String getTimeZoneName(Context context) {
return this.timeZone.getDisplayName(this, context);
}
public final String getTimeZoneShortName(Context context) {
return this.timeZone.getShortDisplayName(this, context);
}
public final BAbsTime toLocalTime() {
if (this.timeZone.equals(BTimeZone.getLocal())) {
return this;
}
return BAbsTime.make(this, BTimeZone.getLocal());
}
public final BAbsTime toUtcTime() {
if (this.timeZone.equals(BTimeZone.UTC)) {
return this;
}
return BAbsTime.make(this, BTimeZone.UTC);
}
public final BAbsTime toNormalizedTime() {
if (this.timeZone.equals(BTimeZone.NULL)) {
return this;
}
return BAbsTime.make(this, BTimeZone.NULL);
}
public final BAbsTime add(BRelTime bRelTime) {
return BAbsTime.make(this.millis + bRelTime.getMillis(), this.timeZone);
}
public final BAbsTime subtract(BRelTime bRelTime) {
return BAbsTime.make(this.millis - bRelTime.getMillis(), this.timeZone);
}
public final BRelTime delta(BAbsTime bAbsTime) {
return BRelTime.make(bAbsTime.millis - this.millis);
}
public final BAbsTime timeOfDay(int n, int n2, int n3, int n4) {
return BAbsTime.make(this.getYear(), this.getMonth(), this.getDay(), n, n2, n3, n4, BTimeZone.getLocal());
}
public final BAbsTime nextDay() {
int n = this.getYear();
int n2 = this.getMonth().getOrdinal();
int n3 = this.getDay();
if (n3 == BAbsTime.getDaysInMonth(n, BMonth.make(n2))) {
n3 = 1;
if (n2 == 11) {
n2 = 0;
++n;
} else {
++n2;
}
} else {
++n3;
}
return BAbsTime.make(n, BMonth.make(n2), n3, this.getHour(), this.getMinute(), this.getSecond(), this.getMillisecond(), this.getTimeZone());
}
public final BAbsTime prevDay() {
int n = this.getYear();
int n2 = this.getMonth().getOrdinal();
int n3 = this.getDay();
if (n3 == 1) {
if (n2 == 0) {
n2 = 11;
--n;
} else {
--n2;
}
n3 = BAbsTime.getDaysInMonth(n, BMonth.make(n2));
} else {
--n3;
}
return BAbsTime.make(n, BMonth.make(n2), n3, this.getHour(), this.getMinute(), this.getSecond(), this.getMillisecond(), this.getTimeZone());
}
public final BAbsTime nextMonth() {
int n = this.getYear();
int n2 = this.getMonth().getOrdinal();
int n3 = this.getDay();
if (n2 == 11) {
n2 = 0;
++n;
} else if (n3 == BAbsTime.getDaysInMonth(n, BMonth.make(n2))) {
n3 = BAbsTime.getDaysInMonth(n, BMonth.make(++n2));
} else if (n3 > BAbsTime.getDaysInMonth(n, BMonth.make(++n2))) {
n3 = BAbsTime.getDaysInMonth(n, BMonth.make(n2));
}
return BAbsTime.make(n, BMonth.make(n2), n3, this.getHour(), this.getMinute(), this.getSecond(), this.getMillisecond(), this.getTimeZone());
}
public final BAbsTime prevMonth() {
int n = this.getYear();
int n2 = this.getMonth().getOrdinal();
int n3 = this.getDay();
if (n2 == 0) {
n2 = 11;
--n;
} else if (n3 == BAbsTime.getDaysInMonth(n, BMonth.make(n2))) {
n3 = BAbsTime.getDaysInMonth(n, BMonth.make(--n2));
} else if (n3 > BAbsTime.getDaysInMonth(n, BMonth.make(--n2))) {
n3 = BAbsTime.getDaysInMonth(n, BMonth.make(n2));
}
return BAbsTime.make(n, BMonth.make(n2), n3, this.getHour(), this.getMinute(), this.getSecond(), this.getMillisecond(), this.getTimeZone());
}
public final BAbsTime nextYear() {
int n = this.getDay();
if (this.isLeapDay()) {
n = 28;
}
return BAbsTime.make(this.getYear() + 1, this.getMonth(), n, this.getHour(), this.getMinute(), this.getSecond(), this.getMillisecond(), this.getTimeZone());
}
public final BAbsTime prevYear() {
int n = this.getDay();
if (this.isLeapDay()) {
n = 28;
}
return BAbsTime.make(this.getYear() - 1, this.getMonth(), n, this.getHour(), this.getMinute(), this.getSecond(), this.getMillisecond(), this.getTimeZone());
}
public final BAbsTime next(BWeekday bWeekday) {
BAbsTime bAbsTime = this.nextDay();
while (bAbsTime.getWeekday() != bWeekday) {
bAbsTime = bAbsTime.nextDay();
}
return bAbsTime;
}
public final BAbsTime prev(BWeekday bWeekday) {
BAbsTime bAbsTime = this.prevDay();
while (bAbsTime.getWeekday() != bWeekday) {
bAbsTime = bAbsTime.prevDay();
}
return bAbsTime;
}
public final int compareTo(Object object) {
BAbsTime bAbsTime = (BAbsTime)object;
if (this.millis < bAbsTime.millis) {
return -1;
}
if (this.millis == bAbsTime.millis) {
return 0;
}
return 1;
}
public final boolean isBefore(BAbsTime bAbsTime) {
boolean bl = false;
if (this.compareTo(bAbsTime) < 0) {
bl = true;
}
return bl;
}
public final boolean isAfter(BAbsTime bAbsTime) {
boolean bl = false;
if (this.compareTo(bAbsTime) > 0) {
bl = true;
}
return bl;
}
public final int hashCode() {
return (int)(this.millis ^ this.millis >> 32);
}
public final boolean equals(Object object) {
if (object instanceof BAbsTime) {
boolean bl = false;
if (((BAbsTime)object).millis == this.millis) {
bl = true;
}
return bl;
}
return false;
}
public final boolean dateEquals(BAbsTime bAbsTime) {
boolean bl = false;
if (bAbsTime.getYear() == this.getYear() && bAbsTime.getMonth() == this.getMonth() && bAbsTime.getDay() == this.getDay()) {
bl = true;
}
return bl;
}
public final boolean timeEquals(BAbsTime bAbsTime) {
boolean bl = false;
if (bAbsTime.getTimeOfDayMillis() == this.getTimeOfDayMillis()) {
bl = true;
}
return bl;
}
public final boolean isLeapDay() {
boolean bl = false;
if (this.getMonth() == BMonth.february && this.getDay() == 29) {
bl = true;
}
return bl;
}
public static final boolean isLeapYear(int n) {
if (n >= 1582) {
boolean bl = false;
if (n % 4 == 0 && (n % 100 != 0 || n % 400 == 0)) {
bl = true;
}
return bl;
}
boolean bl = false;
if (n % 4 == 0) {
bl = true;
}
return bl;
}
public static final int getDaysInMonth(int n, BMonth bMonth) {
if (bMonth == BMonth.february) {
return BAbsTime.isLeapYear(n) + 28;
}
return daysInMonth[bMonth.getOrdinal()];
}
public static final int getDaysInYear(int n) {
return BAbsTime.isLeapYear(n) + 365;
}
public final void encode(DataOutput dataOutput) throws IOException {
dataOutput.writeLong(this.millis);
}
public final BObject decode(DataInput dataInput) throws IOException {
return BAbsTime.make(dataInput.readLong());
}
public final String encodeToString() {
StringBuffer stringBuffer = new StringBuffer(32);
if (this.getYear() > 9999) {
throw new IllegalStateException("Year must be < 9999.");
}
stringBuffer.append(TextUtil.padZeros((String)String.valueOf(this.getYear()), (int)4)).append('-');
int n = this.getMonth().getOrdinal() + 1;
stringBuffer.append(TextUtil.padZeros((String)String.valueOf(n), (int)2)).append('-');
int n2 = this.getDay();
stringBuffer.append(TextUtil.padZeros((String)String.valueOf(n2), (int)2)).append('T');
int n3 = this.getHour();
stringBuffer.append(TextUtil.padZeros((String)String.valueOf(n3), (int)2)).append(':');
int n4 = this.getMinute();
stringBuffer.append(TextUtil.padZeros((String)String.valueOf(n4), (int)2)).append(':');
int n5 = this.getSecond();
stringBuffer.append(TextUtil.padZeros((String)String.valueOf(n5), (int)2)).append('.');
int n6 = this.getMillisecond();
stringBuffer.append(TextUtil.padZeros((String)String.valueOf(n6), (int)3));
int n7 = this.getTimeZoneOffset();
if (n7 == 0) {
stringBuffer.append('Z');
} else {
int n8 = Math.abs(n7 / 3600000);
int n9 = Math.abs(n7 % 3600000 / 60000);
if (n7 < 0) {
stringBuffer.append('-');
} else {
stringBuffer.append('+');
}
stringBuffer.append(TextUtil.padZeros((String)String.valueOf(n8), (int)2)).append(':');
stringBuffer.append(TextUtil.padZeros((String)String.valueOf(n9), (int)2));
}
return stringBuffer.toString();
}
public final BObject decodeFromString(String string) throws IOException {
char[] cArray = string.toCharArray();
try {
char c;
int n = 0;
int n2 = (cArray[n++] - 48) * 1000 + (cArray[n++] - 48) * 100 + (cArray[n++] - 48) * 10 + (cArray[n++] - 48);
if (cArray[n++] != '-') {
throw new Exception();
}
int n3 = (cArray[n++] - 48) * 10 + (cArray[n++] - 48);
if (cArray[n++] != '-') {
throw new Exception();
}
int n4 = (cArray[n++] - 48) * 10 + (cArray[n++] - 48);
if (cArray[n++] != 'T') {
throw new Exception();
}
int n5 = (cArray[n++] - 48) * 10 + (cArray[n++] - 48);
if (cArray[n++] != ':') {
throw new Exception();
}
int n6 = (cArray[n++] - 48) * 10 + (cArray[n++] - 48);
if (cArray[n++] != ':') {
throw new Exception();
}
int n7 = (cArray[n++] - 48) * 10 + (cArray[n++] - 48);
int n8 = 0;
if (cArray[n] == '.') {
int n9 = ++n;
n8 = (cArray[n9] - 48) * 100;
if ('0' <= cArray[++n] && cArray[n] <= '9') {
n8 += (cArray[n++] - 48) * 10;
}
if ('0' <= cArray[n] && cArray[n] <= '9') {
n8 += cArray[n++] - 48;
}
while (n < cArray.length && '0' <= cArray[n] && cArray[n] <= '9') {
++n;
}
}
int n10 = 0;
if ((c = cArray[n++]) != 'Z') {
if (c != '+' && c != '-') {
throw new Exception();
}
int n11 = cArray[n++] - 48;
if (n < cArray.length && cArray[n] != ':') {
n11 = n11 * 10 + (cArray[n++] - 48);
}
int n12 = 0;
if (n < cArray.length) {
if (cArray[n++] != ':') {
throw new Exception();
}
n12 = 10 * (cArray[n++] - 48) + (cArray[n++] - 48);
}
n10 = n11 * 3600000 + n12 * 60000;
if (c == '-') {
n10 *= -1;
}
}
GregorianCalendar gregorianCalendar = new GregorianCalendar(new SimpleTimeZone(n10, "Offset"));
gregorianCalendar.set(n2, n3 - 1, n4, n5, n6, n7);
gregorianCalendar.set(14, n8);
return BAbsTime.make(gregorianCalendar.getTime().getTime());
}
catch (Exception exception) {
throw new IOException("Invalid BAbsTime: " + string);
}
}
public final BIDataValue toDataValue() {
return this;
}
public final boolean isNull() {
boolean bl = false;
if (this.millis == 0L) {
bl = true;
}
return bl;
}
public final String toDateString(Context context) {
if (this.millis == 0L) {
return "null";
}
return TimeFormat.formatDate(this, context);
}
public final String toTimeString(Context context) {
if (this.millis == 0L) {
return "null";
}
return TimeFormat.formatTime(this, context);
}
public final String toString(Context context) {
if (this.millis == 0L) {
return "null";
}
return TimeFormat.format(this, context);
}
private final void millisToFields() {
TimeZone timeZone = (TimeZone)this.timeZone.tzSupport();
if (timeZone == null) {
throw new LocalizableRuntimeException("baja", "AbsTime.unsupportedTimeZone", new Object[]{this.timeZone.getId()});
}
int n = timeZone.getOffset(this.millis);
GregorianCalendar gregorianCalendar = new GregorianCalendar(new SimpleTimeZone(n, "util"));
gregorianCalendar.setTimeInMillis(this.millis);
int n2 = 0;
int n3 = 0;
int n4 = gregorianCalendar.get(1);
n2 |= (n4 & (char)-1) << 16;
n4 = gregorianCalendar.get(14);
n2 |= n4 & (char)-1;
n4 = gregorianCalendar.get(2);
n3 |= (n4 & 0xF) << 25;
n4 = gregorianCalendar.get(5);
n3 |= (n4 & 0x1F) << 20;
n4 = gregorianCalendar.get(11);
n3 |= (n4 & 0x1F) << 15;
n4 = gregorianCalendar.get(12);
n3 |= (n4 & 0x3F) << 9;
n4 = gregorianCalendar.get(13);
n3 |= (n4 & 0x3F) << 3;
n4 = gregorianCalendar.get(7) - 1;
n3 |= n4 & 7;
if (timeZone.inDaylightTime(gregorianCalendar.getTime())) {
n3 |= 0x20000000;
}
this.bits1 = n3;
this.bits0 = n2;
}
public final Type getType() {
return TYPE;
}
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 BAbsTime(long l, BTimeZone bTimeZone) {
this.millis = l;
this.timeZone = bTimeZone;
}
static {
NULL = DEFAULT = new BAbsTime(0L, BTimeZone.getLocal());
END_OF_TIME = BAbsTime.make(9999, BMonth.december, 31, 23, 59, 59, 999, BTimeZone.UTC);
Class clazz = class$javax$baja$sys$BAbsTime;
if (clazz == null) {
clazz = class$javax$baja$sys$BAbsTime = BAbsTime.class("[Ljavax.baja.sys.BAbsTime;", false);
}
TYPE = Sys.loadType(clazz);
MIDDLE_OF_YEAR_MAP = null;
}
}
@@ -0,0 +1,218 @@
/*
* Decompiled with CFR 0.152.
*/
package javax.baja.sys;
import javax.baja.license.BILicensed;
import javax.baja.license.Feature;
import javax.baja.log.Log;
import javax.baja.status.BIStatus;
import javax.baja.status.BStatus;
import javax.baja.sys.BComponent;
import javax.baja.sys.BIService;
import javax.baja.sys.BValue;
import javax.baja.sys.Property;
import javax.baja.sys.Sys;
import javax.baja.sys.Type;
/*
* Illegal identifiers - consider using --renameillegalidents true
*/
public abstract class BAbstractService
extends BComponent
implements BIService,
BIStatus,
BILicensed {
public static final Property status = BAbstractService.newProperty(3, BStatus.ok, null);
public static final Property faultCause = BAbstractService.newProperty(3, "", null);
public static final Property enabled = BAbstractService.newProperty(0, true, null);
public static final Type TYPE;
private boolean fatalFault;
private boolean configFault;
static /* synthetic */ Class class$javax$baja$sys$BAbstractService;
public BStatus getStatus() {
return (BStatus)this.get(status);
}
public void setStatus(BStatus bStatus) {
this.set(status, (BValue)bStatus, null);
}
public String getFaultCause() {
return this.getString(faultCause);
}
public void setFaultCause(String string) {
this.setString(faultCause, string, null);
}
public boolean getEnabled() {
return this.getBoolean(enabled);
}
public void setEnabled(boolean bl) {
this.setBoolean(enabled, bl, null);
}
public Type getType() {
return TYPE;
}
public void serviceStarted() throws Exception {
}
public void serviceStopped() throws Exception {
}
public final boolean isDisabled() {
return this.getStatus().isDisabled();
}
public final boolean isFault() {
return this.getStatus().isFault();
}
public final boolean isOperational() {
BStatus bStatus = this.getStatus();
boolean bl = false;
if (!bStatus.isDisabled() && !bStatus.isFault()) {
bl = true;
}
return bl;
}
public void updateStatus() {
boolean bl = this.isDisabled() ^ true;
int n = this.getStatus().getBits();
int n2 = 0;
n2 = !this.getEnabled() ? (n2 |= 1) : (n2 &= 0xFFFFFFFE);
n2 = this.fatalFault || this.configFault ? (n2 |= 2) : (n2 &= 0xFFFFFFFD);
if (n == n2) {
return;
}
this.setStatus(BStatus.make(n2));
boolean bl2 = this.isDisabled() ^ true;
if (bl != bl2) {
if (bl2) {
this.enabled();
} else {
this.disabled();
}
}
}
public final boolean isFatalFault() {
return this.fatalFault;
}
public final void configOk() {
this.configFault = false;
if (this.fatalFault) {
return;
}
this.setFaultCause("");
this.updateStatus();
}
public final void configFail(String string) {
this.configFault = true;
if (this.fatalFault) {
return;
}
this.setFaultCause(string);
this.updateStatus();
}
public final void configFatal(String string) {
this.fatalFault = true;
this.setFaultCause(string);
this.updateStatus();
}
public Feature getLicenseFeature() {
return null;
}
private final void checkLicense() {
try {
Feature feature = this.getLicenseFeature();
if (feature != null) {
feature.check();
}
}
catch (Exception exception) {
this.fatalFault = true;
Log.getLog("service").error("Unlicensed: " + this.toPathString(), exception);
this.setFaultCause("Unlicensed: " + exception);
}
}
protected void enabled() {
}
protected void disabled() {
}
public Object fw(int n, Object object, Object object2, Object object3, Object object4) {
switch (n) {
case 15: {
this.fwServiceStarted();
break;
}
case 13: {
this.fwDescendantsStarted();
break;
}
case 12: {
this.updateStatus();
break;
}
case 2: {
this.fwChanged((Property)object);
break;
}
}
return super.fw(n, object, object2, object3, object4);
}
private final void fwServiceStarted() {
this.checkLicense();
this.updateStatus();
}
private final void fwDescendantsStarted() {
this.updateStatus();
}
private final void fwChanged(Property property) {
if (!this.isRunning()) {
return;
}
if (property.equals(enabled)) {
this.updateStatus();
}
}
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());
}
}
static {
Class clazz = class$javax$baja$sys$BAbstractService;
if (clazz == null) {
clazz = class$javax$baja$sys$BAbstractService = BAbstractService.class("[Ljavax.baja.sys.BAbstractService;", false);
}
TYPE = Sys.loadType(clazz);
}
}
@@ -0,0 +1,65 @@
/*
* Decompiled with CFR 0.152.
*/
package javax.baja.sys;
import javax.baja.sys.BComponent;
import javax.baja.sys.BFacets;
import javax.baja.sys.BIcon;
import javax.baja.sys.BStruct;
import javax.baja.sys.BValue;
import javax.baja.sys.Sys;
import javax.baja.sys.Type;
/*
* Illegal identifiers - consider using --renameillegalidents true
*/
public abstract class BAction
extends BStruct {
public static final Type TYPE;
private static final BIcon icon;
static /* synthetic */ Class class$javax$baja$sys$BAction;
public Type getType() {
return TYPE;
}
public abstract Type getParameterType();
public abstract BValue getParameterDefault();
public abstract BValue invoke(BComponent var1, BValue var2) throws Exception;
public abstract Type getReturnType();
public BFacets getFacets() {
return BFacets.NULL;
}
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());
}
}
static {
Class clazz = class$javax$baja$sys$BAction;
if (clazz == null) {
clazz = class$javax$baja$sys$BAction = BAction.class("[Ljavax.baja.sys.BAction;", false);
}
TYPE = Sys.loadType(clazz);
icon = BIcon.std("action.png");
}
}
@@ -0,0 +1,156 @@
/*
* Decompiled with CFR 0.152.
*
* Could not load the following classes:
* javax.baja.nre.util.IntHashMap
* javax.baja.nre.util.IntHashMap$Iterator
*/
package javax.baja.sys;
import java.util.HashMap;
import javax.baja.nre.util.IntHashMap;
import javax.baja.sys.BModule;
import javax.baja.sys.BSimple;
import javax.baja.sys.Context;
import javax.baja.sys.Sys;
import javax.baja.sys.Type;
import javax.baja.util.Lexicon;
/*
* Illegal identifiers - consider using --renameillegalidents true
*/
public abstract class BBitString
extends BSimple {
public static final Type TYPE;
static /* synthetic */ Class class$javax$baja$sys$BBitString;
public abstract boolean getBit(int var1);
public abstract boolean getBit(String var1);
public abstract int[] getOrdinals();
public abstract boolean isOrdinal(int var1);
public abstract String getTag(int var1);
public abstract String getDisplayTag(int var1, Context var2);
public abstract BBitString getInstance(int[] var1);
public abstract boolean isTag(String var1);
public abstract int tagToOrdinal(String var1);
public abstract boolean isEmpty();
public abstract String getEmptyTag();
public Type getType() {
return TYPE;
}
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());
}
}
static {
Class clazz = class$javax$baja$sys$BBitString;
if (clazz == null) {
clazz = class$javax$baja$sys$BBitString = BBitString.class("[Ljavax.baja.sys.BBitString;", false);
}
TYPE = Sys.loadType(clazz);
}
/*
* Illegal identifiers - consider using --renameillegalidents true
*/
public static class Support {
private BBitString instance;
private IntHashMap byOrdinal;
private HashMap byTag;
private int[] ordinals;
public int[] getOrdinals() {
int[] nArray;
if (this.ordinals == null) {
nArray = new int[this.byOrdinal.size()];
IntHashMap.Iterator iterator = this.byOrdinal.iterator();
int n = 0;
while (iterator.hasNext()) {
iterator.next();
nArray[n] = iterator.key();
++n;
}
this.ordinals = nArray;
}
nArray = new int[this.ordinals.length];
System.arraycopy(this.ordinals, 0, nArray, 0, nArray.length);
return nArray;
}
public boolean isOrdinal(int n) {
boolean bl = false;
if (this.byOrdinal.get(n) != null) {
bl = true;
}
return bl;
}
public String getTag(int n) {
String string = (String)this.byOrdinal.get(n);
if (string == null) {
throw new IllegalArgumentException("" + n);
}
return string;
}
public String getDisplayTag(int n, Context context) {
Type type = this.instance.getType();
BModule bModule = type.getModule();
Lexicon lexicon = Lexicon.make(bModule, context);
return lexicon.getText(type.getTypeName() + '.' + this.getTag(n));
}
public boolean isTag(String string) {
boolean bl = false;
if (this.byTag.get(string) != null) {
bl = true;
}
return bl;
}
public int tagToOrdinal(String string) {
Integer n = (Integer)this.byTag.get(string);
if (n == null) {
throw new IllegalArgumentException(string);
}
return n;
}
public void add(int n, String string) {
this.byOrdinal.put(n, (Object)string);
this.byTag.put(string, new Integer(n));
}
private final /* synthetic */ void this() {
this.byOrdinal = new IntHashMap();
this.byTag = new HashMap();
}
public Support(BBitString bBitString) {
this.this();
this.instance = bBitString;
}
}
}
@@ -0,0 +1,159 @@
/*
* Decompiled with CFR 0.152.
*
* Could not load the following classes:
* javax.baja.nre.util.Base64
*/
package javax.baja.sys;
import java.io.DataInput;
import java.io.DataOutput;
import java.io.IOException;
import javax.baja.nre.util.Base64;
import javax.baja.sys.BObject;
import javax.baja.sys.BSimple;
import javax.baja.sys.Sys;
import javax.baja.sys.Type;
/*
* Illegal identifiers - consider using --renameillegalidents true
*/
public final class BBlob
extends BSimple {
public static final BBlob DEFAULT = new BBlob(new byte[0]);
public static final Type TYPE;
byte[] value;
int hashCode;
static /* synthetic */ Class class$javax$baja$sys$BBlob;
public static final BBlob make(byte[] byArray) {
return BBlob.make(byArray, 0, byArray.length);
}
public static final BBlob make(byte[] byArray, int n, int n2) {
if (n2 == 0) {
return DEFAULT;
}
byte[] byArray2 = new byte[n2];
System.arraycopy(byArray, n, byArray2, 0, n2);
return new BBlob(byArray2);
}
public final int length() {
return this.value.length;
}
public final byte byteAt(int n) {
return this.value[n];
}
public final void copy(byte[] byArray) {
System.arraycopy(this.value, 0, byArray, 0, this.value.length);
}
public final void copyBytes(int n, byte[] byArray, int n2, int n3) {
System.arraycopy(this.value, n, byArray, n2, n3);
}
public final byte[] copyBytes() {
byte[] byArray = new byte[this.value.length];
System.arraycopy(this.value, 0, byArray, 0, byArray.length);
return byArray;
}
public final int hashCode() {
if (this.hashCode == 0) {
int n = 31;
byte[] byArray = this.value;
int n2 = 0;
while (n2 < byArray.length) {
n = 31 * n + byArray[n2];
++n2;
}
this.hashCode = n;
}
return this.hashCode;
}
public final boolean equals(Object object) {
if (object instanceof BBlob) {
byte[] byArray = this.value;
byte[] byArray2 = ((BBlob)object).value;
if (byArray.length != byArray2.length) {
return false;
}
int n = 0;
while (n < byArray.length) {
if (byArray[n] != byArray2[n]) {
return false;
}
++n;
}
return true;
}
return false;
}
public final void encode(DataOutput dataOutput) throws IOException {
dataOutput.writeInt(45323);
dataOutput.writeInt(this.value.length);
dataOutput.write(this.value, 0, this.value.length);
}
public final BObject decode(DataInput dataInput) throws IOException {
int n = dataInput.readInt();
if (n != 45323) {
throw new IOException("Invalid BBlob magic number 0x" + Integer.toHexString(n));
}
int n2 = dataInput.readInt();
if (n2 == 0) {
return DEFAULT;
}
try {
byte[] byArray = new byte[n2];
dataInput.readFully(byArray, 0, n2);
return new BBlob(byArray);
}
catch (OutOfMemoryError outOfMemoryError) {
throw new IOException("Invalid byte array length: " + n2);
}
}
public final String encodeToString() throws IOException {
return Base64.encode((byte[])this.value);
}
public final BObject decodeFromString(String string) throws IOException {
return new BBlob(Base64.decode((String)string));
}
public final Type getType() {
return TYPE;
}
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 BBlob(byte[] byArray) {
this.value = byArray;
}
static {
Class clazz = class$javax$baja$sys$BBlob;
if (clazz == null) {
clazz = class$javax$baja$sys$BBlob = BBlob.class("[Ljavax.baja.sys.BBlob;", false);
}
TYPE = Sys.loadType(clazz);
}
}
@@ -0,0 +1,193 @@
/*
* Decompiled with CFR 0.152.
*/
package javax.baja.sys;
import java.io.DataInput;
import java.io.DataOutput;
import java.io.IOException;
import javax.baja.data.BIDataValue;
import javax.baja.sys.BDynamicEnum;
import javax.baja.sys.BEnum;
import javax.baja.sys.BEnumRange;
import javax.baja.sys.BFacets;
import javax.baja.sys.BIBoolean;
import javax.baja.sys.BObject;
import javax.baja.sys.Context;
import javax.baja.sys.Sys;
import javax.baja.sys.Type;
import javax.baja.util.BFormat;
import javax.baja.util.Lexicon;
/*
* Illegal identifiers - consider using --renameillegalidents true
*/
public final class BBoolean
extends BEnum
implements BIBoolean,
BIDataValue {
public static final BBoolean TRUE = new BBoolean(true);
public static final BBoolean FALSE;
public static final BBoolean DEFAULT;
public static final Type TYPE;
private boolean value;
BDynamicEnum asDynamic;
static /* synthetic */ Class class$javax$baja$sys$BBoolean;
public static final BBoolean make(boolean bl) {
return bl ? TRUE : FALSE;
}
public static final BBoolean make(String string) {
return BBoolean.decode(string) ? TRUE : FALSE;
}
public final boolean getBoolean() {
return this.value;
}
public final BFacets getBooleanFacets() {
return BFacets.NULL;
}
public final BBoolean not() {
return BBoolean.make(this.value ^ true);
}
public final BBoolean and(BBoolean bBoolean) {
boolean bl = false;
if (this.value && bBoolean.value) {
bl = true;
}
return BBoolean.make(bl);
}
public final BBoolean or(BBoolean bBoolean) {
boolean bl = false;
if (this.value || bBoolean.value) {
bl = true;
}
return BBoolean.make(bl);
}
public final int getOrdinal() {
return this.value ? 1 : 0;
}
public final String getTag() {
return this.value ? "true" : "false";
}
public final String getDisplayTag(Context context) {
return this.getTag();
}
public final BEnumRange getRange() {
return BEnumRange.BOOLEAN_RANGE;
}
public final boolean isActive() {
return this.value;
}
public final int hashCode() {
if (this.value) {
return 1;
}
return 0;
}
public final boolean equals(Object object) {
boolean bl = false;
if (this == object) {
bl = true;
}
return bl;
}
public final String toString(Context context) {
return BBoolean.toString(this.value, context);
}
public final void encode(DataOutput dataOutput) throws IOException {
dataOutput.writeBoolean(this.value);
}
public final BObject decode(DataInput dataInput) throws IOException {
return dataInput.readBoolean() ? TRUE : FALSE;
}
public final String encodeToString() throws IOException {
return BBoolean.encode(this.value);
}
public final BObject decodeFromString(String string) throws IOException {
return BBoolean.make(string);
}
public final BIDataValue toDataValue() {
return this;
}
public static final String encode(boolean bl) {
return bl ? "true" : "false";
}
public static final boolean decode(String string) {
if (string.equals("true")) {
return true;
}
if (string.equals("false")) {
return false;
}
throw new IllegalArgumentException("Invalid boolean: " + string);
}
public static final String toString(boolean bl, Context context) {
if (context != null) {
if (bl) {
BObject bObject = context.getFacet("trueText");
if (bObject != null) {
return BFormat.format(bObject.toString(), null, context);
}
} else {
BObject bObject = context.getFacet("falseText");
if (bObject != null) {
return BFormat.format(bObject.toString(), null, context);
}
}
}
return Lexicon.make("baja", context).getText(bl ? "true" : "false");
}
public final Type getType() {
return TYPE;
}
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 BBoolean(boolean bl) {
this.value = bl;
}
static {
DEFAULT = FALSE = new BBoolean(false);
Class clazz = class$javax$baja$sys$BBoolean;
if (clazz == null) {
clazz = class$javax$baja$sys$BBoolean = BBoolean.class("[Ljavax.baja.sys.BBoolean;", false);
}
TYPE = Sys.loadType(clazz);
}
}
@@ -0,0 +1,708 @@
/*
* Decompiled with CFR 0.152.
*/
package javax.baja.sys;
import com.tridium.sys.schema.ComplexSlotMap;
import com.tridium.sys.schema.ComplexType;
import com.tridium.sys.schema.ComponentSlotMap;
import com.tridium.sys.schema.NProperty;
import java.util.HashMap;
import javax.baja.naming.SlotPath;
import javax.baja.security.BPermissions;
import javax.baja.spy.SpyWriter;
import javax.baja.sys.Action;
import javax.baja.sys.BBoolean;
import javax.baja.sys.BComponent;
import javax.baja.sys.BDouble;
import javax.baja.sys.BFacets;
import javax.baja.sys.BFloat;
import javax.baja.sys.BIMixIn;
import javax.baja.sys.BInteger;
import javax.baja.sys.BLong;
import javax.baja.sys.BObject;
import javax.baja.sys.BString;
import javax.baja.sys.BValue;
import javax.baja.sys.BasicContext;
import javax.baja.sys.Context;
import javax.baja.sys.CopyHints;
import javax.baja.sys.Flags;
import javax.baja.sys.Knob;
import javax.baja.sys.NoSuchSlotException;
import javax.baja.sys.Property;
import javax.baja.sys.Slot;
import javax.baja.sys.SlotCursor;
import javax.baja.sys.Subscriber;
import javax.baja.sys.Sys;
import javax.baja.sys.Topic;
import javax.baja.sys.Type;
import javax.baja.sys.TypeIntrospectionException;
import javax.baja.util.BFacetsMap;
import javax.baja.util.BFormat;
import javax.baja.util.BNameMap;
/*
* Illegal identifiers - consider using --renameillegalidents true
*/
public abstract class BComplex
extends BValue {
private static CopyHints copyHintsDefault = new CopyHints();
private static CopyHints copyHintsExact = new CopyHints();
public static final Type TYPE;
ComplexSlotMap slotMap;
static /* synthetic */ Class class$javax$baja$sys$BComplex;
public final String getName() {
return this.slotMap.getName();
}
public final String getDisplayName(Context context) {
return this.slotMap.getDisplayName(context);
}
public String getDisplayName(Slot slot, Context context) {
BValue bValue;
BFormat bFormat;
BValue bValue2 = this.get("displayNames");
if (bValue2 instanceof BNameMap && (bFormat = (bValue = (BNameMap)bValue2).get(slot.getName())) != null) {
return bFormat.format(null, context);
}
if (slot.isDynamic() && (bValue = this.get((Property)slot)) instanceof BIMixIn) {
return ((BIMixIn)((Object)bValue)).getDisplayNameInParent(context);
}
return slot.getDefaultDisplayName(context);
}
public final BComplex getParent() {
return this.slotMap.getParent();
}
public final Property getPropertyInParent() {
return this.slotMap.getPropertyInParent();
}
public final BComponent getParentComponent() {
BComplex bComplex = this;
while (!bComplex.isComponent()) {
if ((bComplex = bComplex.getParent()) != null) continue;
return null;
}
return bComplex.asComponent();
}
public final Property getPropertyInParentComponent() {
if (this.isComponent() || this.getParent() == null) {
return null;
}
BComplex bComplex = this;
while (!bComplex.getParent().isComponent()) {
if ((bComplex = bComplex.getParent()).getParent() != null) continue;
return null;
}
return bComplex.getPropertyInParent();
}
public final synchronized BValue newCopy() {
return this.slotMap.newCopy(copyHintsDefault, BComplex.copySerialNum());
}
public final synchronized BValue newCopy(boolean bl) {
return this.slotMap.newCopy(bl ? copyHintsExact : copyHintsDefault, BComplex.copySerialNum());
}
public final synchronized BValue newCopy(CopyHints copyHints) {
return this.slotMap.newCopy(copyHints, BComplex.copySerialNum());
}
public final void copyFrom(BComplex bComplex, Context context) {
this.slotMap.copyFrom(bComplex.slotMap, context);
}
public final void copyFrom(BComplex bComplex) {
this.slotMap.copyFrom(bComplex.slotMap, Context.copying);
}
public final int hashCode() {
return super.hashCode();
}
public final boolean equals(Object object) {
boolean bl = false;
if (this == object) {
bl = true;
}
return bl;
}
public synchronized boolean equivalent(Object object) {
if (object == null) {
return false;
}
if (object.getClass() != this.getClass()) {
return false;
}
return this.slotMap.equivalent(((BComplex)object).slotMap);
}
public final void setFacets(Slot slot, BFacets bFacets) {
this.setFacets(slot, bFacets, null);
}
public final void setFacets(Slot slot, BFacets bFacets, Context context) {
if (slot.isFrozen()) {
BComplex bComplex = this;
BComponent bComponent = null;
StringBuffer stringBuffer = new StringBuffer();
while (!bComplex.isComponent()) {
stringBuffer.insert(0, '/');
stringBuffer.insert(0, bComplex.getName());
bComplex = bComplex.getParent();
if (bComplex == null) break;
}
if (bComplex != null) {
bComponent = bComplex.asComponent();
}
if (bComponent != null && bComponent instanceof BComponent) {
BFacetsMap bFacetsMap = (BFacetsMap)bComponent.get("slotFacets_");
HashMap<String, BFacets> hashMap = new HashMap<String, BFacets>();
if (bFacetsMap != null) {
String[] stringArray = bFacetsMap.list();
int n = 0;
while (n < stringArray.length) {
hashMap.put(stringArray[n], bFacetsMap.get(stringArray[n]));
++n;
}
}
if (bFacets.isNull()) {
hashMap.remove(stringBuffer.toString() + slot.getName());
} else {
hashMap.put(stringBuffer.toString() + slot.getName(), BFacets.makeRemove(bFacets, slot.getFacets().list()));
}
if (hashMap.size() == 0) {
if (bFacetsMap != null) {
bComponent.remove("slotFacets_", context);
}
} else {
boolean bl = false;
if (bFacetsMap == null) {
bl = true;
}
boolean bl2 = bl;
bFacetsMap = BFacetsMap.make(hashMap);
if (bl2) {
bComponent.add("slotFacets_", bFacetsMap, 4, context);
} else {
bComponent.set("slotFacets_", (BValue)bFacetsMap, context);
}
}
}
} else {
this.slotMap.setFacets(slot, bFacets, context);
}
}
public BFacets getSlotFacets(Slot slot) {
if (slot.isFrozen()) {
BFacets bFacets;
BFacetsMap bFacetsMap;
BComplex bComplex = this;
BComponent bComponent = null;
StringBuffer stringBuffer = new StringBuffer();
while (!bComplex.isComponent()) {
stringBuffer.insert(0, '/');
stringBuffer.insert(0, bComplex.getName());
bComplex = bComplex.getParent();
if (bComplex == null) break;
}
if (bComplex != null) {
bComponent = bComplex.asComponent();
}
if (bComponent != null && (bFacetsMap = (BFacetsMap)bComponent.get("slotFacets_")) != null && (bFacets = bFacetsMap.get(stringBuffer.toString() + slot.getName())) != null) {
return BFacets.make(bFacets, slot.getFacets());
}
}
return slot.getFacets();
}
public String propertyValueToString(Property property, Context context) {
BFacets bFacets = this.getSlotFacets(property);
if (context == null) {
context = bFacets;
} else if (!bFacets.isNull()) {
context = new BasicContext(context, bFacets);
}
return this.get(property).toString(context);
}
public final BComplex loadSlots() {
this.slotMap.loadSlots();
return this;
}
public final Slot getSlot(String string) {
return this.slotMap.getSlot(string);
}
public final Property getProperty(String string) {
return (Property)this.slotMap.getSlot(string);
}
public final Action getAction(String string) {
return (Action)this.slotMap.getSlot(string);
}
public final Topic getTopic(String string) {
return (Topic)this.slotMap.getSlot(string);
}
public final int getSlotCount() {
return this.slotMap.getSlotCount();
}
public final int getSlotCount(Class clazz) {
int n = 0;
SlotCursor slotCursor = this.getProperties();
while (slotCursor.next(clazz)) {
++n;
}
return n;
}
public final Slot[] getSlotsArray() {
return this.slotMap.getSlotsArray();
}
public final SlotCursor getSlots() {
return this.slotMap.getSlots();
}
public final Property[] getPropertiesArray() {
return this.slotMap.getPropertiesArray();
}
public final Property[] getFrozenPropertiesArray() {
return this.slotMap.getFrozenPropertiesArray();
}
public final Property[] getDynamicPropertiesArray() {
return this.slotMap.getDynamicPropertiesArray();
}
public final SlotCursor getProperties() {
return this.slotMap.getProperties();
}
public final Action[] getActionsArray() {
return this.slotMap.getActionsArray();
}
public final SlotCursor getActions() {
return this.slotMap.getActions();
}
public final Topic[] getTopicsArray() {
return this.slotMap.getTopicsArray();
}
public final SlotCursor getTopics() {
return this.slotMap.getTopics();
}
public final BValue get(Property property) {
return this.slotMap.get(property);
}
public final boolean getBoolean(Property property) {
return this.slotMap.getBoolean(property);
}
public final int getInt(Property property) {
return this.slotMap.getInt(property);
}
public final long getLong(Property property) {
return this.slotMap.getLong(property);
}
public final float getFloat(Property property) {
return this.slotMap.getFloat(property);
}
public final double getDouble(Property property) {
return this.slotMap.getDouble(property);
}
public final String getString(Property property) {
return this.slotMap.getString(property);
}
public final BValue get(String string) {
return this.slotMap.get(string);
}
public final void set(Property property, BValue bValue, Context context) {
BValue bValue2 = this.get(property);
ComplexSlotMap complexSlotMap = bValue2 == null ? null : bValue2.getSlotMap();
this.slotMap.set(property, bValue2, complexSlotMap, bValue, bValue.getSlotMap(), context);
}
public final void set(Property property, BValue bValue) {
this.set(property, bValue, null);
}
public final void setBoolean(Property property, boolean bl, Context context) {
this.slotMap.setBoolean(property, bl, context);
}
public final void setInt(Property property, int n, Context context) {
this.slotMap.setInt(property, n, context);
}
public final void setLong(Property property, long l, Context context) {
this.slotMap.setLong(property, l, context);
}
public final void setFloat(Property property, float f, Context context) {
this.slotMap.setFloat(property, f, context);
}
public final void setDouble(Property property, double d, Context context) {
this.slotMap.setDouble(property, d, context);
}
public final void setString(Property property, String string, Context context) {
this.slotMap.setString(property, string, context);
}
public final void setBoolean(Property property, boolean bl) {
this.slotMap.setBoolean(property, bl, null);
}
public final void setInt(Property property, int n) {
this.slotMap.setInt(property, n, null);
}
public final void setLong(Property property, long l) {
this.slotMap.setLong(property, l, null);
}
public final void setFloat(Property property, float f) {
this.slotMap.setFloat(property, f, null);
}
public final void setDouble(Property property, double d) {
this.slotMap.setDouble(property, d, null);
}
public final void setString(Property property, String string) {
this.slotMap.setString(property, string, null);
}
public final void set(String string, BValue bValue) {
Property property = this.getProperty(string);
if (property == null) {
throw new NoSuchSlotException(string);
}
this.set(property, bValue);
}
public final void set(String string, BValue bValue, Context context) {
Property property = this.getProperty(string);
if (property == null) {
throw new NoSuchSlotException("No such slot: " + string);
}
this.set(property, bValue, context);
}
public final int getFlags(Slot slot) {
return this.slotMap.getFlags(slot);
}
public final void setFlags(Slot slot, int n) {
this.slotMap.setFlags(slot, n, null);
}
public final void setFlags(Slot slot, int n, Context context) {
this.slotMap.setFlags(slot, n, context);
}
public void spy(SpyWriter spyWriter) throws Exception {
spyWriter.startProps();
this.spyProperties(spyWriter);
this.spyActions(spyWriter);
this.spyTopics(spyWriter);
this.spyKnobs(spyWriter);
this.spySubscribers(spyWriter);
this.spySpaceNode(spyWriter);
this.spyDebug(spyWriter);
spyWriter.endProps();
}
void spyProperties(SpyWriter spyWriter) {
this.loadSlots();
BComponent bComponent = (BComponent)this;
BPermissions bPermissions = bComponent.getPermissions(spyWriter.getContext());
SlotCursor slotCursor = this.getProperties();
boolean bl = true;
while (slotCursor.next()) {
Property property = slotCursor.property();
BObject bObject = slotCursor.get();
boolean bl2 = false;
if (!bPermissions.hasAdminRead() && bPermissions.hasOperatorRead()) {
if ((bObject.isSimple() || bObject.isStruct()) && Flags.isOperator(this, slotCursor.slot())) {
bl2 = true;
} else if (bObject.isComponent() && ((BComponent)bObject).getPermissions(spyWriter.getContext()).hasOperatorRead()) {
bl2 = true;
}
} else if (bPermissions.hasAdminRead()) {
bl2 = true;
}
if (!bl2) continue;
if (bl) {
spyWriter.trTitle("Properties", 2);
bl = false;
}
String string = property.getName();
this.spySlot(spyWriter, string, this.getFlags(property), bObject);
}
}
void spyActions(SpyWriter spyWriter) {
Action[] actionArray = this.getActionsArray();
if (actionArray.length == 0) {
return;
}
boolean bl = true;
BComponent bComponent = (BComponent)this;
BPermissions bPermissions = bComponent.getPermissions(spyWriter.getContext());
int n = 0;
while (n < actionArray.length) {
if (bPermissions.hasAdminRead() || !bPermissions.hasAdminRead() && bPermissions.hasOperatorRead() && Flags.isOperator(this, actionArray[n])) {
if (bl) {
spyWriter.trTitle("Actions", 2);
bl = false;
}
this.spySlot(spyWriter, actionArray[n].getName(), this.getFlags(actionArray[n]), actionArray[n]);
}
++n;
}
}
void spyTopics(SpyWriter spyWriter) {
Topic[] topicArray = this.getTopicsArray();
if (topicArray.length == 0) {
return;
}
boolean bl = true;
BComponent bComponent = (BComponent)this;
BPermissions bPermissions = bComponent.getPermissions(spyWriter.getContext());
int n = 0;
while (n < topicArray.length) {
if (bPermissions.hasAdminRead() || !bPermissions.hasAdminRead() && bPermissions.hasOperatorRead() && Flags.isOperator(this, topicArray[n])) {
if (bl) {
spyWriter.trTitle("Topics", 2);
bl = false;
}
this.spySlot(spyWriter, topicArray[n].getName(), this.getFlags(topicArray[n]), topicArray[n]);
}
++n;
}
}
void spySlot(SpyWriter spyWriter, String string, int n, Object object) {
Slot slot = this.getSlot(string);
if (slot.isProperty()) {
string = "<a href='" + spyWriter.href(SlotPath.escape(string)) + "'>" + string + "</a>";
}
spyWriter.w("<tr><td align='left' nowrap='true'><b>").w(string).w("</b>");
if (n == 0) {
spyWriter.w("{0}");
} else {
spyWriter.w(" {").w(Flags.encodeToString(n)).w("}");
}
spyWriter.w("</td><td align='left' nowrap='true'>").safe(object.toString()).w("</td></tr>\n");
}
void spyKnobs(SpyWriter spyWriter) {
if (!this.isComponent()) {
return;
}
Knob[] knobArray = this.asComponent().getKnobs();
if (knobArray.length == 0) {
return;
}
spyWriter.trTitle("Knobs", 2);
int n = 0;
while (n < knobArray.length) {
spyWriter.prop((Object)knobArray[n].getSourceSlotName(), knobArray[n].getLink());
++n;
}
}
void spySubscribers(SpyWriter spyWriter) {
if (!this.isComponent()) {
return;
}
Subscriber[] subscriberArray = this.asComponent().getSubscribers();
if (subscriberArray.length == 0) {
return;
}
spyWriter.trTitle("Subscribers", 2);
int n = 0;
while (n < subscriberArray.length) {
spyWriter.w("<tr><td colspan='2'>").w(subscriberArray[n]).w("</td></tr>");
++n;
}
}
void spySpaceNode(SpyWriter spyWriter) {
if (!this.isComponent()) {
return;
}
BComponent bComponent = (BComponent)this;
spyWriter.trTitle("SpaceNode", 2);
spyWriter.prop((Object)"isMounted", bComponent.isMounted());
spyWriter.prop((Object)"handle", bComponent.getHandle());
spyWriter.prop((Object)"slotPath", bComponent.getSlotPath());
spyWriter.prop((Object)"host", bComponent.getHost());
spyWriter.prop((Object)"session", bComponent.getSession());
spyWriter.prop((Object)"space", bComponent.getSpace());
spyWriter.prop((Object)"absoluteOrd", bComponent.getAbsoluteOrd());
spyWriter.prop((Object)"ordInHost", bComponent.getOrdInHost());
spyWriter.prop((Object)"ordInSession", bComponent.getOrdInSession());
spyWriter.prop((Object)"ordInSpace", bComponent.getOrdInSpace());
spyWriter.prop((Object)"handleOrd", bComponent.getHandleOrd());
spyWriter.prop((Object)"slotPathOrd", bComponent.getSlotPathOrd());
spyWriter.prop((Object)"navOrd", bComponent.getNavOrd());
}
void spyDebug(SpyWriter spyWriter) {
spyWriter.trTitle("Debug", 2);
spyWriter.prop((Object)"debugString", this.toDebugString());
spyWriter.prop((Object)"type", this.getType());
spyWriter.prop((Object)"parent", this.getParent());
spyWriter.prop((Object)"propertyInParent", this.getPropertyInParent());
if (this.isComponent()) {
BComponent bComponent = (BComponent)this;
spyWriter.prop((Object)"running", bComponent.isRunning());
spyWriter.prop((Object)"subscribed", bComponent.isSubscribed());
spyWriter.prop((Object)"permanentlySubscribed", bComponent.isPermanentlySubscribed());
spyWriter.prop((Object)"knobCount", bComponent.getKnobCount());
spyWriter.prop((Object)"permissions", bComponent.getPermissions(spyWriter.getContext()));
spyWriter.prop((Object)"slotsLoaded", ((ComponentSlotMap)this.slotMap).isBrokerPropsLoaded());
spyWriter.prop((Object)"categoryMask", bComponent.getCategoryMask());
spyWriter.prop((Object)"appliedCategoryMask", bComponent.getAppliedCategoryMask());
spyWriter.prop((Object)"deepOrCategoryMask", ((ComponentSlotMap)this.slotMap).getDeepOrCategoryMask());
}
}
protected static Property newProperty(int n, BValue bValue, BFacets bFacets) {
if (bValue == null) {
throw new NullPointerException("Null defaultValue");
}
if (bFacets == null) {
bFacets = BFacets.NULL;
}
return new NProperty(n, bValue, bFacets);
}
protected static Property newProperty(int n, boolean bl, BFacets bFacets) {
return BComplex.newProperty(n, BBoolean.make(bl), bFacets);
}
protected static Property newProperty(int n, int n2, BFacets bFacets) {
return BComplex.newProperty(n, BInteger.make(n2), bFacets);
}
protected static Property newProperty(int n, long l, BFacets bFacets) {
return BComplex.newProperty(n, BLong.make(l), bFacets);
}
protected static Property newProperty(int n, float f, BFacets bFacets) {
return BComplex.newProperty(n, BFloat.make(f), bFacets);
}
protected static Property newProperty(int n, double d, BFacets bFacets) {
return BComplex.newProperty(n, BDouble.make(d), bFacets);
}
protected static Property newProperty(int n, String string, BFacets bFacets) {
return BComplex.newProperty(n, BString.make(string), bFacets);
}
protected static Property newProperty(int n, BValue bValue) {
return BComplex.newProperty(n, bValue, null);
}
protected static Property newProperty(int n, boolean bl) {
return BComplex.newProperty(n, BBoolean.make(bl), null);
}
protected static Property newProperty(int n, int n2) {
return BComplex.newProperty(n, BInteger.make(n2), null);
}
protected static Property newProperty(int n, long l) {
return BComplex.newProperty(n, BLong.make(l), null);
}
protected static Property newProperty(int n, float f) {
return BComplex.newProperty(n, BFloat.make(f), null);
}
protected static Property newProperty(int n, double d) {
return BComplex.newProperty(n, BDouble.make(d), null);
}
protected static Property newProperty(int n, String string) {
return BComplex.newProperty(n, BString.make(string), null);
}
public Object fw(int n, Object object, Object object2, Object object3, Object object4) {
if (n == 1) {
return this.slotMap;
}
return super.fw(n, object, object2, object3, object4);
}
final ComplexSlotMap getSlotMap() {
return this.slotMap;
}
public Type getType() {
return TYPE;
}
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());
}
}
BComplex() {
ComplexType complexType = (ComplexType)this.getType();
if (complexType.getTypeClass() != this.getClass() && !this.getClass().getName().startsWith("auto.")) {
throw new TypeIntrospectionException(this.getClass(), "Class does override the getType() method");
}
this.slotMap = complexType.newSlotMap();
this.slotMap.init(complexType, this);
}
static {
BComplex.copyHintsDefault.defaultOnClone = true;
BComplex.copyHintsExact.defaultOnClone = false;
Class clazz = class$javax$baja$sys$BComplex;
if (clazz == null) {
clazz = class$javax$baja$sys$BComplex = BComplex.class("[Ljavax.baja.sys.BComplex;", false);
}
TYPE = Sys.loadType(clazz);
}
}
@@ -0,0 +1,952 @@
/*
* Decompiled with CFR 0.152.
*/
package javax.baja.sys;
import com.tridium.sys.Nre;
import com.tridium.sys.engine.EngineUtil;
import com.tridium.sys.schema.ComponentSlotMap;
import com.tridium.sys.schema.NAction;
import com.tridium.sys.schema.NTopic;
import com.tridium.util.PxUtil;
import java.lang.reflect.Array;
import java.util.HashMap;
import javax.baja.agent.AgentInfo;
import javax.baja.agent.AgentList;
import javax.baja.agent.BAbstractPxView;
import javax.baja.category.BCategoryMask;
import javax.baja.category.BICategorizable;
import javax.baja.naming.BHost;
import javax.baja.naming.BISession;
import javax.baja.naming.BOrd;
import javax.baja.naming.OrdTarget;
import javax.baja.naming.SlotPath;
import javax.baja.naming.UnresolvedException;
import javax.baja.nav.BINavNode;
import javax.baja.registry.Registry;
import javax.baja.registry.TypeInfo;
import javax.baja.security.BIProtected;
import javax.baja.security.BPassword;
import javax.baja.security.BPermissions;
import javax.baja.security.BPermissionsMap;
import javax.baja.space.BComponentSpace;
import javax.baja.space.BISpaceNode;
import javax.baja.space.BSpace;
import javax.baja.sys.Action;
import javax.baja.sys.ActionInvokeException;
import javax.baja.sys.BComplex;
import javax.baja.sys.BConversionLink;
import javax.baja.sys.BFacets;
import javax.baja.sys.BIPropertyContainer;
import javax.baja.sys.BIcon;
import javax.baja.sys.BLink;
import javax.baja.sys.BObject;
import javax.baja.sys.BRelTime;
import javax.baja.sys.BValue;
import javax.baja.sys.Context;
import javax.baja.sys.Flags;
import javax.baja.sys.Knob;
import javax.baja.sys.LinkCheck;
import javax.baja.sys.NoSuchSlotException;
import javax.baja.sys.Property;
import javax.baja.sys.Slot;
import javax.baja.sys.SlotCursor;
import javax.baja.sys.Subscriber;
import javax.baja.sys.Sys;
import javax.baja.sys.Topic;
import javax.baja.sys.Type;
import javax.baja.util.BConverter;
import javax.baja.util.BFolder;
import javax.baja.util.BFormat;
import javax.baja.util.BNameMap;
import javax.baja.util.IFuture;
/*
* Illegal identifiers - consider using --renameillegalidents true
*/
public class BComponent
extends BComplex
implements BISpaceNode,
BIProtected,
BICategorizable,
BIPropertyContainer {
public static final Type TYPE;
private static final BIcon icon;
static /* synthetic */ Class class$javax$baja$sys$BComponent;
public Object fw(int n, Object object, Object object2, Object object3, Object object4) {
if (n == 404) {
BISession bISession = this.getSession();
if (bISession != null && bISession instanceof BObject) {
return ((BObject)((Object)bISession)).fw(n, object, object2, object3, object4);
}
return null;
}
return super.fw(n, object, object2, object3, object4);
}
public Object getHandle() {
return this.slotMap.getHandle();
}
public SlotPath getSlotPath() {
return this.slotMap.getSlotPath();
}
public void clearHandles() {
if (this.isMounted()) {
throw new IllegalStateException("Component is mounted");
}
((ComponentSlotMap)this.slotMap).setHandle(null);
BComponent[] bComponentArray = this.getChildComponents();
int n = 0;
while (n < bComponentArray.length) {
bComponentArray[n].clearHandles();
++n;
}
}
public Type getType() {
return TYPE;
}
public final boolean isRunning() {
return this.slotMap.isRunning();
}
public final void start() {
this.slotMap.start();
}
public final void stop() {
this.slotMap.stop();
}
public void started() throws Exception {
}
public void descendantsStarted() throws Exception {
}
public void stopped() throws Exception {
}
public void descendantsStopped() throws Exception {
}
public void stationStarted() throws Exception {
}
public void atSteadyState() throws Exception {
}
public void clockChanged(BRelTime bRelTime) throws Exception {
}
public final boolean isSubscribed() {
return this.slotMap.isSubscribed();
}
public final Subscriber[] getSubscribers() {
return this.slotMap.getSubscribers();
}
public void subscribed() {
}
public void unsubscribed() {
}
public final boolean isPermanentlySubscribed() {
return this.slotMap.isPermanentlySubscribed();
}
protected final void setPermanentlySubscribed(boolean bl) {
this.slotMap.setPermanentlySubscribed(bl);
}
public final long getLeaseExpiration() {
return Nre.leaseManager.getLeaseExpiration(this);
}
public final void lease() {
this.lease(0, this.getDefaultLeaseTime());
}
public final void lease(int n) {
this.lease(n, this.getDefaultLeaseTime());
}
public final void lease(int n, long l) {
Nre.leaseManager.lease(this, n, l);
}
public static void lease(BComponent[] bComponentArray, int n) {
BComponentSpace bComponentSpace;
BComponent bComponent;
long l = 60000L;
if (bComponentArray != null && bComponentArray.length > 0 && (bComponent = bComponentArray[0]) != null && (bComponentSpace = bComponent.getComponentSpace()) != null) {
l = bComponentSpace.getDefaultLeaseTime();
}
BComponent.lease(bComponentArray, n, l);
}
public static void lease(BComponent[] bComponentArray, int n, long l) {
Nre.leaseManager.lease(bComponentArray, n, l);
}
private final long getDefaultLeaseTime() {
BComponentSpace bComponentSpace = this.getComponentSpace();
if (bComponentSpace != null) {
return bComponentSpace.getDefaultLeaseTime();
}
return 60000L;
}
public final boolean isMounted() {
BComponentSpace bComponentSpace = this.getComponentSpace();
if (bComponentSpace == null) {
return false;
}
return bComponentSpace.isMounted();
}
public final BHost getHost() {
BComponentSpace bComponentSpace = this.getComponentSpace();
if (bComponentSpace != null) {
return bComponentSpace.getHost();
}
return null;
}
public final BISession getSession() {
BComponentSpace bComponentSpace = this.getComponentSpace();
if (bComponentSpace != null) {
return bComponentSpace.getSession();
}
return null;
}
public final BSpace getSpace() {
return this.getComponentSpace();
}
public final BComponentSpace getComponentSpace() {
return this.slotMap == null ? null : this.slotMap.getSpace();
}
public boolean isComponentReadonly() {
BComponentSpace bComponentSpace = this.getComponentSpace();
if (bComponentSpace == null) {
return false;
}
return bComponentSpace.isSpaceReadonly();
}
public BOrd getAbsoluteOrd() {
BComponentSpace bComponentSpace = this.getComponentSpace();
if (bComponentSpace == null) {
return null;
}
BOrd bOrd = bComponentSpace.getAbsoluteOrd();
if (bOrd == null) {
return null;
}
return BOrd.make(bOrd, this.getOrdInSpace());
}
public BOrd getOrdInHost() {
BComponentSpace bComponentSpace = this.getComponentSpace();
if (bComponentSpace == null) {
return null;
}
BOrd bOrd = bComponentSpace.getOrdInHost();
if (bOrd == null) {
return null;
}
return BOrd.make(bOrd, this.getOrdInSpace());
}
public BOrd getOrdInSession() {
BComponentSpace bComponentSpace = this.getComponentSpace();
if (bComponentSpace == null) {
return null;
}
BOrd bOrd = bComponentSpace.getOrdInSession();
if (bOrd == null) {
return null;
}
return BOrd.make(bOrd, this.getOrdInSpace());
}
public BOrd getOrdInSpace() {
return this.getHandleOrd();
}
public BOrd getHandleOrd() {
Object object = this.getHandle();
if (object == null) {
return null;
}
return BOrd.make("h:" + object);
}
public BOrd getSlotPathOrd() {
SlotPath slotPath = this.getSlotPath();
if (slotPath == null) {
return null;
}
return BOrd.make(slotPath);
}
public final boolean isPendingMove() {
return this.slotMap.isPendingMove();
}
public void setPendingMove(boolean bl) {
this.slotMap.setPendingMove(bl);
}
public String toPathString() {
SlotPath slotPath = this.getSlotPath();
if (slotPath == null) {
return "?" + this.getType() + '?';
}
return slotPath.getBody();
}
public String toDisplayPathString(Context context) {
SlotPath slotPath = this.getSlotPath();
if (slotPath == null) {
return "?" + this.getType() + '?';
}
return slotPath.toDisplayString();
}
public String getNavName() {
String string = this.getName();
if (string != null) {
return string;
}
BComponentSpace bComponentSpace = this.getComponentSpace();
if (bComponentSpace != null && bComponentSpace.getRootComponent() == this) {
return bComponentSpace.getNavName();
}
return null;
}
public String getNavDisplayName(Context context) {
return this.getDisplayName(context);
}
public BINavNode getNavParent() {
BComponent bComponent = (BComponent)this.getParent();
if (bComponent != null) {
return bComponent;
}
return this.getComponentSpace();
}
public boolean hasNavChildren() {
return true;
}
public BINavNode getNavChild(String string) {
BValue bValue = this.get(string);
if (bValue instanceof BINavNode) {
return (BINavNode)((Object)bValue);
}
return null;
}
public BINavNode resolveNavChild(String string) {
BINavNode bINavNode = this.getNavChild(string);
if (bINavNode != null) {
return bINavNode;
}
throw new UnresolvedException(string);
}
public BINavNode[] getNavChildren() {
BINavNode[] bINavNodeArray;
this.loadSlots();
BComponent[] bComponentArray = new BComponent[this.getSlotCount()];
SlotCursor slotCursor = this.getProperties();
int n = 0;
while (slotCursor.nextComponent()) {
bINavNodeArray = (BComponent)slotCursor.get();
if (Flags.isHidden(this, slotCursor.property()) || !bINavNodeArray.isNavChild()) continue;
bComponentArray[n++] = bINavNodeArray;
}
bINavNodeArray = new BComponent[n];
System.arraycopy(bComponentArray, 0, bINavNodeArray, 0, n);
return bINavNodeArray;
}
public boolean isNavChild() {
return true;
}
public String getNavDescription(Context context) {
return this.getType().toString();
}
public BOrd getNavOrd() {
BComponentSpace bComponentSpace = this.getComponentSpace();
if (bComponentSpace == null) {
return null;
}
BOrd bOrd = bComponentSpace.getAbsoluteOrd();
if (bOrd == null) {
return null;
}
SlotPath slotPath = this.getSlotPath();
if (slotPath == null) {
return null;
}
return BOrd.make(bOrd, slotPath);
}
public BIcon getNavIcon() {
return this.getIcon();
}
public final Property add(String string, BValue bValue, int n, BFacets bFacets, Context context) {
return this.slotMap.add(string, n, bValue, bValue.getSlotMap(), bFacets, context, null);
}
public final Property add(String string, BValue bValue, int n, Context context) {
return this.slotMap.add(string, n, bValue, bValue.getSlotMap(), null, context, null);
}
public final Property add(String string, BValue bValue, int n) {
return this.slotMap.add(string, n, bValue, bValue.getSlotMap(), null, null, null);
}
public final Property add(String string, BValue bValue, Context context) {
return this.slotMap.add(string, 0, bValue, bValue.getSlotMap(), null, context, null);
}
public final Property add(String string, BValue bValue) {
return this.slotMap.add(string, 0, bValue, bValue.getSlotMap(), null, null, null);
}
public final void remove(String string, Context context) {
Property property = this.getProperty(string);
if (property == null) {
throw new NoSuchSlotException(string);
}
this.remove(property, context);
}
public final void remove(Property property, Context context) {
this.slotMap.remove(property, context);
}
public final void remove(String string) {
this.remove(string, null);
}
public final void remove(Property property) {
this.slotMap.remove(property, null);
}
public final void remove(BComplex bComplex) {
if (bComplex.getParent() != this) {
throw new IllegalArgumentException("Not my child");
}
this.slotMap.remove(bComplex.getPropertyInParent(), null);
}
public final void removeAll(Context context) {
Property[] propertyArray = ((ComponentSlotMap)this.slotMap).getPropertiesArray();
int n = 0;
while (n < propertyArray.length) {
if (!propertyArray[n].isFrozen()) {
this.remove(propertyArray[n], context);
}
++n;
}
}
public final void removeAll() {
this.removeAll(null);
}
public final void rename(Property property, String string, Context context) {
this.slotMap.rename(property, string, context);
}
public final void rename(Property property, String string) {
this.slotMap.rename(property, string, null);
}
public BFormat getDisplayNameFormat(Property property) {
BNameMap bNameMap = (BNameMap)this.get("displayNames");
if (bNameMap == null) {
return null;
}
return bNameMap.get(property.getName());
}
public final void setDisplayName(Property property, BFormat bFormat, Context context) {
BNameMap bNameMap = (BNameMap)this.get("displayNames");
HashMap<String, BFormat> hashMap = new HashMap<String, BFormat>();
if (bNameMap != null) {
String[] stringArray = bNameMap.list();
int n = 0;
while (n < stringArray.length) {
hashMap.put(stringArray[n], bNameMap.get(stringArray[n]));
++n;
}
}
if (bFormat == null || bFormat.getFormat().length() == 0) {
hashMap.remove(property.getName());
} else {
hashMap.put(property.getName(), bFormat);
}
if (hashMap.size() == 0) {
if (bNameMap != null) {
this.remove("displayNames", context);
}
} else {
boolean bl = false;
if (bNameMap == null) {
bl = true;
}
boolean bl2 = bl;
bNameMap = BNameMap.make(hashMap);
if (bl2) {
this.add("displayNames", bNameMap, 4, context);
} else {
this.set("displayNames", (BValue)bNameMap, context);
}
}
}
public final void reorder(Property[] propertyArray, Context context) {
this.slotMap.reorder(propertyArray, context);
}
public final void reorder(Property[] propertyArray) {
this.slotMap.reorder(propertyArray, null);
}
public final void reorderToTop(Property property, Context context) {
this.slotMap.reorderToTop(property, context);
}
public final void reorderToTop(Property property) {
this.slotMap.reorderToTop(property, null);
}
public final void reorderToBottom(Property property, Context context) {
this.slotMap.reorderToBottom(property, context);
}
public final void reorderToBottom(Property property) {
this.slotMap.reorderToBottom(property, null);
}
public BValue getActionParameterDefault(Action action) {
return action.getParameterDefault();
}
public final BValue invoke(Action action, BValue bValue, Context context) throws ActionInvokeException {
return this.slotMap.invoke(action, bValue, context);
}
public final BValue invoke(Action action, BValue bValue) throws ActionInvokeException {
return this.slotMap.invoke(action, bValue, null);
}
public IFuture post(Action action, BValue bValue, Context context) {
Nre.engineManager.enqueueAction(this, action, bValue);
return null;
}
public void doInvoke(Action action, BValue bValue, Context context) throws ActionInvokeException {
EngineUtil.doInvoke(this, action, bValue, context);
}
public final void fire(Topic topic, BValue bValue, Context context) {
this.slotMap.fire(topic, bValue, context);
}
public final void fire(Topic topic, BValue bValue) {
this.slotMap.fire(topic, bValue, null);
}
public void checkAdd(String string, BValue bValue, int n, BFacets bFacets, Context context) {
}
public void checkRemove(Property property, Context context) {
}
public void checkRename(Property property, String string, Context context) {
}
public void checkReorder(Property[] propertyArray, Context context) {
}
public void checkSetFlags(Slot slot, int n, Context context) {
}
public void checkSetFacets(Slot slot, BFacets bFacets, Context context) {
}
public boolean isParentLegal(BComponent bComponent) {
return true;
}
public boolean isChildLegal(BComponent bComponent) {
return true;
}
public void changed(Property property, Context context) {
}
public void added(Property property, Context context) {
}
public void removed(Property property, BValue bValue, Context context) {
}
public void renamed(Property property, String string, Context context) {
}
public void reordered(Context context) {
}
public void flagsChanged(Slot slot, Context context) {
}
public void facetsChanged(Slot slot, Context context) {
}
public void recategorized(Context context) {
}
public void childParented(Property property, BValue bValue, Context context) {
}
public void childUnparented(Property property, BValue bValue, Context context) {
}
public void knobAdded(Knob knob, Context context) {
}
public void knobRemoved(Knob knob, Context context) {
}
public synchronized BComponent[] getChildComponents() {
BComponent[] bComponentArray = new BComponent[this.getSlotCount()];
SlotCursor slotCursor = this.getProperties();
int n = 0;
while (slotCursor.nextComponent()) {
bComponentArray[n++] = (BComponent)slotCursor.get();
}
BComponent[] bComponentArray2 = new BComponent[n];
System.arraycopy(bComponentArray, 0, bComponentArray2, 0, n);
return bComponentArray2;
}
public synchronized Object[] getChildren(Class clazz) {
Object[] objectArray = new Object[this.getSlotCount()];
SlotCursor slotCursor = this.getProperties();
int n = 0;
while (slotCursor.next(clazz)) {
objectArray[n++] = slotCursor.get();
}
Object[] objectArray2 = (Object[])Array.newInstance(clazz, n);
System.arraycopy(objectArray, 0, objectArray2, 0, n);
return objectArray2;
}
public BValue getMixIn(Type type) {
return this.get(type.toString().replace(':', '_'));
}
public final LinkCheck checkLink(BComponent bComponent, Slot slot, Slot slot2, Context context) {
Object object;
if (slot2 != null && slot2.isProperty() && ((object = slot2.asProperty()).getType().is(BPassword.TYPE) || object.getType().is(BPermissionsMap.TYPE))) {
return LinkCheck.makeInvalid("Invalid link target.");
}
if (slot != null && slot.isProperty() && ((object = slot.asProperty()).getType().is(BPassword.TYPE) || object.getType().is(BPermissionsMap.TYPE))) {
return LinkCheck.makeInvalid("Invalid link source.");
}
object = LinkCheck.make(bComponent, slot, this, slot2, context);
if (((LinkCheck)object).isValid()) {
object = this.doCheckLink(bComponent, slot, slot2, context);
}
return object;
}
protected LinkCheck doCheckLink(BComponent bComponent, Slot slot, Slot slot2, Context context) {
return LinkCheck.makeValid();
}
public BLink makeLink(BComponent bComponent, Slot slot, Slot slot2, Context context) {
BOrd bOrd = bComponent.getHandleOrd();
Type type = null;
if (slot.isAction()) {
type = slot.asAction().getParameterType();
} else if (slot.isTopic()) {
type = slot.asTopic().getEventType();
} else if (slot.isProperty()) {
type = slot.asProperty().getType();
}
Type type2 = null;
if (slot2.isAction()) {
type2 = slot2.asAction().getParameterType();
} else if (slot2.isTopic()) {
type2 = slot2.asTopic().getEventType();
} else if (slot2.isProperty()) {
type2 = slot2.asProperty().getType();
}
if (type != null && type2 != null && !type.is(type2)) {
Registry registry = Sys.getRegistry();
TypeInfo[] typeInfoArray = registry.getAdapters(type.getTypeInfo(), type2.getTypeInfo());
int n = typeInfoArray.length - 1;
while (n >= 0) {
if (registry.isAgent(typeInfoArray[n], BConversionLink.TYPE.getTypeInfo())) {
return new BConversionLink(bOrd, slot.getName(), slot2.getName(), true, (BConverter)typeInfoArray[n].getInstance());
}
--n;
}
}
return new BLink(bOrd, slot.getName(), slot2.getName(), true);
}
public synchronized BLink[] getLinks() {
Object object;
this.loadSlots();
BLink[] bLinkArray = new BLink[this.getSlotCount()];
int n = 0;
SlotCursor slotCursor = this.slotMap.getProperties();
while (slotCursor.nextObject()) {
object = slotCursor.get();
if (!(object instanceof BLink)) continue;
bLinkArray[n++] = (BLink)object;
}
object = new BLink[n];
System.arraycopy(bLinkArray, 0, object, 0, n);
return object;
}
public synchronized BLink[] getLinks(Slot slot) {
Object object;
this.loadSlots();
String string = slot.getName();
BLink[] bLinkArray = new BLink[this.getSlotCount()];
int n = 0;
SlotCursor slotCursor = this.slotMap.getProperties();
while (slotCursor.nextObject()) {
BLink bLink;
object = slotCursor.get();
if (!(object instanceof BLink) || !(bLink = (BLink)object).getTargetSlotName().equals(string)) continue;
bLinkArray[n++] = (BLink)object;
}
object = new BLink[n];
System.arraycopy(bLinkArray, 0, object, 0, n);
return object;
}
public synchronized int getKnobCount() {
return this.slotMap.getKnobCount();
}
public synchronized Knob[] getKnobs() {
return this.slotMap.getKnobs();
}
public synchronized Knob[] getKnobs(Slot slot) {
return this.slotMap.getKnobs(slot);
}
public synchronized boolean isLinkTarget(Slot slot) {
boolean bl = false;
if (this.getLinks(slot).length > 0) {
bl = true;
}
return bl;
}
public BLink linkTo(BComponent bComponent, Slot slot, Slot slot2) {
return this.linkTo(null, bComponent, slot, slot2);
}
public BLink linkTo(String string, BComponent bComponent, Slot slot, Slot slot2) {
BLink bLink = new BLink(bComponent, slot, slot2);
this.add(string, (BValue)bLink, 2);
bLink.activate();
return bLink;
}
public BCategoryMask getAppliedCategoryMask() {
return this.slotMap.getAppliedCategoryMask();
}
public BCategoryMask getCategoryMask() {
return this.slotMap.getCategoryMask();
}
public void setCategoryMask(BCategoryMask bCategoryMask, Context context) {
this.slotMap.setCategoryMask(bCategoryMask, context);
}
public BPermissions getPermissions(Context context) {
BPermissions bPermissions = this.slotMap.getCachedPermissions();
if (bPermissions == null) {
bPermissions = context != null && context.getUser() != null ? context.getUser().getPermissionsFor(this) : BPermissions.all;
}
return bPermissions;
}
public boolean canRead(OrdTarget ordTarget) {
if (ordTarget.getComponent() != this) {
throw new IllegalStateException();
}
Slot slot = ordTarget.getSlotInComponent();
BPermissions bPermissions = ordTarget.getPermissionsForTarget();
if (slot == null) {
return bPermissions.has(1);
}
if (Flags.isOperator(this, slot)) {
return bPermissions.has(1);
}
return bPermissions.has(16);
}
public boolean canWrite(OrdTarget ordTarget) {
if (ordTarget.getComponent() != this) {
throw new IllegalStateException();
}
Slot slot = ordTarget.getSlotInComponent();
BPermissions bPermissions = ordTarget.getPermissionsForTarget();
if (slot == null) {
return bPermissions.has(2);
}
if (Flags.isReadonly(this, slot)) {
return false;
}
if (Flags.isOperator(this, slot)) {
return bPermissions.has(2);
}
return bPermissions.has(32);
}
public boolean canInvoke(OrdTarget ordTarget) {
if (ordTarget.getComponent() != this) {
throw new IllegalStateException();
}
Slot slot = ordTarget.getSlotInComponent();
BPermissions bPermissions = ordTarget.getPermissionsForTarget();
if (slot == null) {
return bPermissions.has(4);
}
if (Flags.isOperator(this, slot)) {
return bPermissions.has(4);
}
return bPermissions.has(64);
}
public AgentList getAgents(Context context) {
AgentList agentList = super.getAgents(context);
int n = agentList.indexOf("workbench:PropertySheet");
int n2 = agentList.indexOf("wiresheet:WireSheet");
if (n >= 0 && n2 >= 0) {
if (this instanceof BFolder) {
if (n < n2) {
agentList.swap(n, n2);
}
} else if (n2 < n) {
agentList.swap(n, n2);
}
}
agentList.toBottom("wbutil:CategorySheet");
agentList.toBottom("workbench:SlotSheet");
agentList.toBottom("workbench:LinkSheet");
agentList.toBottom("pxEditor:PxEditor");
int n3 = 0;
while (n3 < agentList.size()) {
AgentInfo agentInfo = agentList.get(n3);
if (agentInfo.getAgentType().is(BAbstractPxView.TYPE)) {
agentList.toTop(agentInfo);
}
++n3;
}
Property[] propertyArray = this.getPropertiesArray();
int n4 = propertyArray.length - 1;
while (n4 >= 0) {
BValue bValue;
if (propertyArray[n4].getTypeAccess() == 7 && (bValue = this.get(propertyArray[n4])) instanceof AgentInfo) {
agentList.add((AgentInfo)((Object)bValue));
}
--n4;
}
PxUtil.explode(agentList);
return agentList;
}
public BIcon getIcon() {
BValue bValue = this.get("icon");
if (bValue instanceof BIcon) {
return (BIcon)bValue;
}
return icon;
}
protected static Action newAction(int n, BValue bValue, BFacets bFacets) {
if (bFacets == null) {
bFacets = BFacets.NULL;
}
return new NAction(n, bValue, bFacets);
}
protected static Action newAction(int n, BValue bValue) {
return BComponent.newAction(n, bValue, null);
}
protected static Action newAction(int n, BFacets bFacets) {
return BComponent.newAction(n, null, bFacets);
}
protected static Action newAction(int n) {
return BComponent.newAction(n, null, null);
}
protected static Topic newTopic(int n, BFacets bFacets) {
if (bFacets == null) {
bFacets = BFacets.NULL;
}
return new NTopic(n, bFacets);
}
protected static Topic newTopic(int n) {
return BComponent.newTopic(n, 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());
}
}
static {
Class clazz = class$javax$baja$sys$BComponent;
if (clazz == null) {
clazz = class$javax$baja$sys$BComponent = BComponent.class("[Ljavax.baja.sys.BComponent;", false);
}
TYPE = Sys.loadType(clazz);
icon = BIcon.std("object.png");
}
}
@@ -0,0 +1,145 @@
/*
* Decompiled with CFR 0.152.
*/
package javax.baja.sys;
import javax.baja.sys.BComponent;
import javax.baja.sys.BStruct;
import javax.baja.sys.BValue;
import javax.baja.sys.Context;
import javax.baja.sys.Knob;
import javax.baja.sys.Slot;
import javax.baja.sys.Sys;
import javax.baja.sys.Type;
/*
* Illegal identifiers - consider using --renameillegalidents true
*/
public final class BComponentEvent
extends BStruct {
public static final int PROPERTY_CHANGED = 0;
public static final int PROPERTY_ADDED = 1;
public static final int PROPERTY_REMOVED = 2;
public static final int PROPERTY_RENAMED = 3;
public static final int PROPERTIES_REORDERED = 4;
public static final int TOPIC_FIRED = 5;
public static final int FLAGS_CHANGED = 6;
public static final int FACETS_CHANGED = 7;
public static final int KNOB_ADDED = 8;
public static final int KNOB_REMOVED = 9;
public static final int RECATEGORIZED = 10;
public static final int COMPONENT_PARENTED = 11;
public static final int COMPONENT_UNPARENTED = 12;
public static final int COMPONENT_RENAMED = 13;
public static final int COMPONENT_REORDERED = 14;
public static final int COMPONENT_FLAGS_CHANGED = 15;
public static final int COMPONENT_FACETS_CHANGED = 16;
public static final int COMPONENT_STARTED = 19;
public static final int COMPONENT_STOPPED = 20;
private static String[] ID_STRINGS = new String[]{"changed", "added", "removed", "renamed", "reordered", "topicFired", "flagsChanged", "facetsChanged", "knobAdded", "knobRemoved", "recategorized", "componentParented", "componentUnparented", "componentRenamed", "componentReordered", "componentFlagsChanged", "componentFacetsChanged", "componentKnobAdded", "componentKnobRemoved", "componentStarted", "componentStopped"};
private static String[] DISPLAY_STRINGS = new String[]{"property_changed", "property_added", "property_removed", "property_renamed", "property_reordered", "property_topic_fired", "property_flags_changed", "property_facets_changed", "property_knobAdded", "property_knobRemoved", "property_recategorized", "component_parented", "component_unparented", "component_renamed", "component_reordered", "component_flags_changed", "component_facets_changed", "component_knob_added", "component_knob_removed", "component_started", "component_stopped"};
public static final Type TYPE;
private int id;
private String slotName;
private int slotFlags;
private BValue value;
private BComponent component;
private Slot slot;
private Knob knob;
static /* synthetic */ Class class$javax$baja$sys$BComponentEvent;
public final int getId() {
return this.id;
}
public final String getSlotName() {
return this.slotName;
}
public final int getSlotFlags() {
return this.slotFlags;
}
public final BValue getValue() {
return this.value;
}
public final BComponent getSourceComponent() {
return this.component;
}
public final Slot getSlot() {
return this.slot;
}
public final Knob getKnob() {
return this.knob;
}
public final String toString(Context context) {
String string = this.knob != null ? this.knob.toString() : "." + this.slotName + "\": " + String.valueOf(this.value);
return DISPLAY_STRINGS[this.id] + " \"" + (this.component != null ? this.component.toDebugString() : "null") + string;
}
public final Object clone() {
BComponentEvent bComponentEvent = new BComponentEvent();
bComponentEvent.id = this.id;
bComponentEvent.slotName = this.slotName;
bComponentEvent.slotFlags = this.slotFlags;
bComponentEvent.value = this.value;
bComponentEvent.component = this.component;
bComponentEvent.slot = this.slot;
bComponentEvent.knob = this.knob;
return bComponentEvent;
}
public final Type getType() {
return TYPE;
}
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());
}
}
public BComponentEvent(int n, BComponent bComponent, Slot slot, BValue bValue) {
this.id = n;
this.component = bComponent;
if (slot != null) {
this.slotName = slot.getName();
this.slotFlags = bComponent.getFlags(slot);
this.slot = slot;
}
if (bValue != null) {
this.value = bValue;
}
}
public BComponentEvent(int n, BComponent bComponent, Knob knob) {
this.id = n;
this.component = bComponent;
this.knob = knob;
this.slot = knob.getSourceSlot();
this.slotName = knob.getSourceSlotName();
}
public BComponentEvent() {
}
static {
Class clazz = class$javax$baja$sys$BComponentEvent;
if (clazz == null) {
clazz = class$javax$baja$sys$BComponentEvent = BComponentEvent.class("[Ljavax.baja.sys.BComponentEvent;", false);
}
TYPE = Sys.loadType(clazz);
}
}
@@ -0,0 +1,222 @@
/*
* Decompiled with CFR 0.152.
*/
package javax.baja.sys;
import java.io.DataInput;
import java.io.DataOutput;
import java.io.IOException;
import java.lang.reflect.Field;
import javax.baja.sys.BBitString;
import javax.baja.sys.BObject;
import javax.baja.sys.Context;
import javax.baja.sys.Sys;
import javax.baja.sys.Type;
/*
* Illegal identifiers - consider using --renameillegalidents true
*/
public final class BComponentEventMask
extends BBitString {
public static final BComponentEventMask PROPERTY_EVENTS = new BComponentEventMask(2047);
public static final BComponentEventMask SELF_EVENTS = new BComponentEventMask(1701888);
public static final BComponentEventMask EMPTY = new BComponentEventMask(0);
public static final BComponentEventMask ALL = new BComponentEventMask(-1);
public static final BComponentEventMask DEFAULT = EMPTY;
public static final Type TYPE;
private static BBitString.Support support;
private int bits;
static /* synthetic */ Class class$javax$baja$sys$BComponentEventMask;
static /* synthetic */ Class class$javax$baja$sys$BComponentEvent;
public static final BComponentEventMask make() {
return EMPTY;
}
public static final BComponentEventMask make(int n) {
return new BComponentEventMask(n);
}
public static final BComponentEventMask make(int[] nArray) {
int n = 0;
int n2 = 0;
while (n2 < nArray.length) {
n |= 1 << nArray[n2];
++n2;
}
if (n == BComponentEventMask.EMPTY.bits) {
return EMPTY;
}
return new BComponentEventMask(n);
}
public static final BComponentEventMask make(BComponentEventMask bComponentEventMask, BComponentEventMask bComponentEventMask2, boolean bl) {
if (bl) {
return new BComponentEventMask(bComponentEventMask.bits | bComponentEventMask2.bits);
}
return new BComponentEventMask(bComponentEventMask.bits & ~bComponentEventMask2.bits);
}
public final boolean includes(int n) {
boolean bl = false;
if ((1 << n & this.bits) != 0) {
bl = true;
}
return bl;
}
public final int getBits() {
return this.bits;
}
public final boolean getBit(int n) {
boolean bl = false;
if ((this.bits & n) != 0) {
bl = true;
}
return bl;
}
public final boolean getBit(String string) {
return this.getBit(this.tagToOrdinal(string));
}
public final int[] getOrdinals() {
return support.getOrdinals();
}
public final boolean isOrdinal(int n) {
return support.isOrdinal(n);
}
public final String getTag(int n) {
return support.getTag(n);
}
public final String getDisplayTag(int n, Context context) {
return support.getDisplayTag(n, context);
}
public final BBitString getInstance(int[] nArray) {
int n = 0;
int n2 = 0;
while (n2 < nArray.length) {
n |= nArray[n2];
++n2;
}
return BComponentEventMask.make(n);
}
public final boolean isTag(String string) {
return support.isTag(string);
}
public final int tagToOrdinal(String string) {
return support.tagToOrdinal(string);
}
public final boolean isEmpty() {
boolean bl = false;
if (this.bits == 0) {
bl = true;
}
return bl;
}
public final String getEmptyTag() {
return "none";
}
public final boolean isNull() {
boolean bl = false;
if (this.bits == 0) {
bl = true;
}
return bl;
}
public final int hashCode() {
return this.bits;
}
public final boolean equals(Object object) {
if (object instanceof BComponentEventMask) {
boolean bl = false;
if (((BComponentEventMask)object).bits == this.bits) {
bl = true;
}
return bl;
}
return false;
}
public final void encode(DataOutput dataOutput) throws IOException {
dataOutput.writeInt(this.bits);
}
public final BObject decode(DataInput dataInput) throws IOException {
return BComponentEventMask.make(dataInput.readInt());
}
public final String encodeToString() {
return Integer.toHexString(this.bits);
}
public final BObject decodeFromString(String string) throws IOException {
try {
return BComponentEventMask.make(Integer.parseInt(string, 16));
}
catch (Exception exception) {
throw new IOException("Invalid bits: " + string);
}
}
public final Type getType() {
return TYPE;
}
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 BComponentEventMask(int n) {
this.bits = n;
}
static {
Class clazz = class$javax$baja$sys$BComponentEventMask;
if (clazz == null) {
clazz = class$javax$baja$sys$BComponentEventMask = BComponentEventMask.class("[Ljavax.baja.sys.BComponentEventMask;", false);
}
TYPE = Sys.loadType(clazz);
support = new BBitString.Support(DEFAULT);
try {
Class clazz2 = class$javax$baja$sys$BComponentEvent;
if (clazz2 == null) {
clazz2 = class$javax$baja$sys$BComponentEvent = BComponentEventMask.class("[Ljavax.baja.sys.BComponentEvent;", false);
}
Class clazz3 = clazz2;
Field field = clazz3.getDeclaredField("ID_STRINGS");
field.setAccessible(true);
String[] stringArray = (String[])field.get(null);
int n = 0;
while (n < stringArray.length) {
support.add(n, stringArray[n]);
++n;
}
}
catch (Exception exception) {
exception.printStackTrace();
}
}
}
@@ -0,0 +1,176 @@
/*
* Decompiled with CFR 0.152.
*/
package javax.baja.sys;
import javax.baja.naming.BOrd;
import javax.baja.sys.Action;
import javax.baja.sys.BBoolean;
import javax.baja.sys.BComponent;
import javax.baja.sys.BDouble;
import javax.baja.sys.BFacets;
import javax.baja.sys.BFloat;
import javax.baja.sys.BInteger;
import javax.baja.sys.BLink;
import javax.baja.sys.BLong;
import javax.baja.sys.BString;
import javax.baja.sys.BValue;
import javax.baja.sys.Property;
import javax.baja.sys.Slot;
import javax.baja.sys.Sys;
import javax.baja.sys.Type;
import javax.baja.util.BConverter;
import javax.baja.util.BNullConverter;
/*
* Illegal identifiers - consider using --renameillegalidents true
*/
public class BConversionLink
extends BLink {
public static final Property converter = BConversionLink.newProperty(0, new BNullConverter(), BFacets.NULL);
public static final Type TYPE;
static /* synthetic */ Class class$javax$baja$sys$BConversionLink;
public final BConverter getConverter() {
return (BConverter)this.get(converter);
}
public final void setConverter(BConverter bConverter) {
this.set(converter, (BValue)bConverter, null);
}
public Type getType() {
return TYPE;
}
public void propagate(BValue bValue) {
if (this.getTargetComponent() == this.getSourceComponent() && this.getTargetSlot() == this.getSourceSlot()) {
System.out.println("WARNING: Infinite link: " + this);
return;
}
Slot slot = this.getSourceSlot();
Slot slot2 = this.getTargetSlot();
if (slot.isAction()) {
if (slot2.asAction().getParameterType() != null) {
bValue = (BValue)this.getConverter().convert(bValue, slot2.asAction().getParameterDefault());
}
if (slot2.isAction()) {
this.propagateActionToAction(bValue);
return;
}
if (slot2.isTopic()) {
this.propagateActionToTopic(bValue);
return;
}
} else if (slot.isTopic()) {
if (slot2.isAction()) {
this.propagateTopicToAction(bValue);
return;
}
if (slot2.isTopic()) {
this.propagateTopicToTopic(bValue);
return;
}
} else if (slot.isProperty()) {
if (slot2.isAction()) {
this.propagatePropertyToAction();
return;
}
if (slot2.isProperty()) {
this.propagatePropertyToProperty();
return;
}
}
throw new IllegalStateException("Invalid link config");
}
public void propagatePropertyToAction() {
Slot slot = this.getTargetSlot();
Action action = slot.asAction();
BValue bValue = null;
if (action.getParameterType() != null) {
bValue = (BValue)this.getConverter().convert(this.getSourceComponent().get(this.getSourceSlot().asProperty()), slot.asAction().getParameterDefault());
}
this.getTargetComponent().invoke(action, bValue);
}
public void propagatePropertyToProperty() {
BComponent bComponent = this.getTargetComponent();
BComponent bComponent2 = this.getSourceComponent();
Property property = this.getSourceSlot().asProperty();
Property property2 = this.getTargetSlot().asProperty();
BValue bValue = (BValue)this.getConverter().convert(bComponent2.get(property), bComponent.get(property2));
switch (property2.getTypeAccess()) {
case 0: {
bComponent.setBoolean(property2, ((BBoolean)bValue).getBoolean(), null);
break;
}
case 2: {
bComponent.setInt(property2, ((BInteger)bValue).getInt(), null);
break;
}
case 3: {
bComponent.setLong(property2, ((BLong)bValue).getLong(), null);
break;
}
case 4: {
bComponent.setFloat(property2, ((BFloat)bValue).getFloat(), null);
break;
}
case 5: {
bComponent.setDouble(property2, ((BDouble)bValue).getDouble(), null);
break;
}
case 6: {
bComponent.setString(property2, ((BString)bValue).getString(), null);
break;
}
case 7: {
if (bValue.isSimple()) {
bComponent.set(property2, bValue, null);
break;
}
bComponent.get(property2).asComplex().copyFrom(bValue.asComplex());
break;
}
default: {
throw new IllegalStateException("Unexpected link source type: " + property.getType() + " (" + property.getTypeAccess() + ')');
}
}
}
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());
}
}
public BConversionLink() {
}
public BConversionLink(BOrd bOrd, String string, String string2, boolean bl, BConverter bConverter) {
super(bOrd, string, string2, bl);
this.setConverter(bConverter);
}
public BConversionLink(BComponent bComponent, Slot slot, Slot slot2, BConverter bConverter) {
super(bComponent, slot, slot2);
this.setConverter(bConverter);
}
static {
Class clazz = class$javax$baja$sys$BConversionLink;
if (clazz == null) {
clazz = class$javax$baja$sys$BConversionLink = BConversionLink.class("[Ljavax.baja.sys.BConversionLink;", false);
}
TYPE = Sys.loadType(clazz);
}
}
@@ -0,0 +1,393 @@
/*
* Decompiled with CFR 0.152.
*/
package javax.baja.sys;
import java.io.DataInput;
import java.io.DataOutput;
import java.io.IOException;
import javax.baja.log.Log;
import javax.baja.sys.BAbsTime;
import javax.baja.sys.BIComparable;
import javax.baja.sys.BIDate;
import javax.baja.sys.BMonth;
import javax.baja.sys.BObject;
import javax.baja.sys.BSimple;
import javax.baja.sys.BWeekday;
import javax.baja.sys.BajaRuntimeException;
import javax.baja.sys.Context;
import javax.baja.sys.Sys;
import javax.baja.sys.Type;
import javax.baja.timezone.BTimeZone;
/*
* Illegal identifiers - consider using --renameillegalidents true
*/
public final class BDate
extends BSimple
implements BIDate,
BIComparable {
public static final BDate DEFAULT;
public static final BDate NULL;
public static final Type TYPE;
private final int year;
private final BMonth month;
private final int day;
private int hashCode;
static /* synthetic */ Class class$javax$baja$sys$BDate;
public static final BDate make() {
return BDate.make(BAbsTime.now());
}
public static final BDate today() {
return BDate.make(BAbsTime.now());
}
public static final BDate make(BAbsTime bAbsTime) {
return new BDate(bAbsTime.getYear(), bAbsTime.getMonth(), bAbsTime.getDay());
}
public static final BDate make(BAbsTime bAbsTime, BTimeZone bTimeZone) {
BAbsTime bAbsTime2 = BAbsTime.make(bAbsTime, bTimeZone);
return new BDate(bAbsTime2.getYear(), bAbsTime2.getMonth(), bAbsTime2.getDay());
}
public static final BDate make(int n, BMonth bMonth, int n2) {
return new BDate(n, bMonth, n2);
}
public static final BDate makeDayOfYear(int n, int n2) {
int n3 = BAbsTime.getDaysInYear(n);
if (n2 > n3) {
throw new IllegalArgumentException(n2 + " > " + n3);
}
if (n2 < 1) {
throw new IllegalArgumentException(n2 + " < 1");
}
BMonth bMonth = BMonth.january;
int n4 = BAbsTime.getDaysInMonth(n, bMonth);
while (n2 > n4) {
n2 -= n4;
bMonth = bMonth.next();
n4 = BAbsTime.getDaysInMonth(n, bMonth);
}
return BDate.make(n, bMonth, n2);
}
public static final BDate make(String string) throws IOException {
return (BDate)DEFAULT.decodeFromString(string);
}
public final int compareTo(Object object) {
BDate bDate = (BDate)object;
if (this.year != bDate.year) {
return this.year - bDate.year;
}
if (this.month.getMonthOfYear() != bDate.month.getMonthOfYear()) {
return this.month.getMonthOfYear() - bDate.month.getMonthOfYear();
}
if (this.day != bDate.day) {
return this.day - bDate.day;
}
return 0;
}
public final boolean isBefore(BDate bDate) {
boolean bl = false;
if (this.compareTo(bDate) < 0) {
bl = true;
}
return bl;
}
public final boolean isAfter(BDate bDate) {
boolean bl = false;
if (this.compareTo(bDate) > 0) {
bl = true;
}
return bl;
}
public final int hashCode() {
try {
if (this.hashCode == -1) {
this.hashCode = this.encodeToString().hashCode();
}
return this.hashCode;
}
catch (Exception exception) {
Log.getLog("sys").warning("Could not create hashCode for '" + this + "'.", exception);
return System.identityHashCode(this);
}
}
public final boolean equals(Object object) {
if (object instanceof BDate) {
BDate bDate = (BDate)object;
boolean bl = false;
if (this.year == bDate.year && this.month.getMonthOfYear() == bDate.month.getMonthOfYear() && this.day == bDate.day) {
bl = true;
}
return bl;
}
return false;
}
public final String toString(Context context) {
return this.encodeToString();
}
public final void encode(DataOutput dataOutput) throws IOException {
dataOutput.writeInt(this.year);
dataOutput.writeInt(this.month.getMonthOfYear());
dataOutput.writeInt(this.day);
}
public final BObject decode(DataInput dataInput) throws IOException {
return new BDate(dataInput.readInt(), BMonth.make(dataInput.readInt() - 1), dataInput.readInt());
}
public final String encodeToString() {
StringBuffer stringBuffer = new StringBuffer(32);
stringBuffer.append(this.year).append('-');
int n = this.month.getOrdinal() + 1;
if (n < 10) {
stringBuffer.append('0');
}
stringBuffer.append(n).append('-');
if (this.day < 10) {
stringBuffer.append('0');
}
stringBuffer.append(this.day);
return stringBuffer.toString();
}
public final BObject decodeFromString(String string) throws IOException {
if (string.length() != 10) {
throw new BajaRuntimeException("Invalid date '" + string + '\'');
}
char[] cArray = string.toCharArray();
int n = (cArray[0] - 48) * 1000 + (cArray[1] - 48) * 100 + (cArray[2] - 48) * 10 + (cArray[3] - 48);
if (cArray[4] != '-') {
throw new BajaRuntimeException("Invalid date '" + string + '\'');
}
int n2 = (cArray[5] - 48) * 10 + (cArray[6] - 48);
if (cArray[7] != '-') {
throw new BajaRuntimeException("Invalid date '" + string + '\'');
}
int n3 = (cArray[8] - 48) * 10 + (cArray[9] - 48);
return new BDate(n, BMonth.make(n2 - 1), n3);
}
public final boolean isNull() {
return this.equals(NULL);
}
public final int getYear() {
return this.year;
}
public final BMonth getMonth() {
return this.month;
}
public final int getDay() {
return this.day;
}
public final BWeekday getWeekday() {
return BAbsTime.getWeekday(this.year, this.month, this.day);
}
public final int getDayOfYear() {
int n = 0;
BMonth bMonth = BMonth.january;
while (bMonth != this.month) {
n += BAbsTime.getDaysInMonth(this.year, bMonth);
bMonth = bMonth.next();
}
return n += this.day;
}
public final boolean isLeapDay() {
boolean bl = false;
if (this.month == BMonth.february && this.day == 29) {
bl = true;
}
return bl;
}
/*
* Unable to fully structure code
*/
public final BDate add(int var1_1) {
block3: {
if (var1_1 == 0) {
return this;
}
var2_2 = this.getDayOfYear() + var1_1;
var3_3 = this.year;
if (var1_1 <= 0) ** GOTO lbl12
while (var2_2 > BAbsTime.getDaysInYear(var3_3)) {
var2_2 -= BAbsTime.getDaysInYear(var3_3);
++var3_3;
}
break block3;
lbl-1000:
// 1 sources
{
var2_2 += BAbsTime.getDaysInYear(--var3_3);
lbl12:
// 2 sources
** while (var2_2 < 1)
}
}
return BDate.makeDayOfYear(var3_3, var2_2);
}
public final BDate subtract(int n) {
return this.add(-n);
}
public final int delta(BDate bDate) {
int n = this.compareTo(bDate);
if (n == 0) {
return 0;
}
BDate bDate2 = this;
int n2 = 1;
if (n > 0) {
bDate2 = bDate;
bDate = this;
n2 = -1;
}
int n3 = bDate2.getYear();
int n4 = bDate.getYear();
int n5 = bDate2.getDayOfYear();
int n6 = bDate.getDayOfYear();
if (n3 == n4) {
return n2 * (n6 - n5);
}
int n7 = 0;
int n8 = n3 + 1;
while (n8 < n4) {
n7 += BAbsTime.getDaysInYear(n8);
++n8;
}
return n2 * (n7 + n6 + (BAbsTime.getDaysInYear(n3) - n5));
}
public final BDate nextDay() {
return this.add(1);
}
public final BDate prevDay() {
return this.add(-1);
}
public final BDate nextMonth() {
int n = this.getYear();
int n2 = this.getMonth().getOrdinal();
int n3 = this.getDay();
if (n2 == 11) {
n2 = 0;
++n;
} else if (n3 == BAbsTime.getDaysInMonth(n, BMonth.make(n2))) {
n3 = BAbsTime.getDaysInMonth(n, BMonth.make(++n2));
} else if (n3 > BAbsTime.getDaysInMonth(n, BMonth.make(++n2))) {
n3 = BAbsTime.getDaysInMonth(n, BMonth.make(n2));
}
return BDate.make(n, BMonth.make(n2), n3);
}
public final BDate prevMonth() {
int n = this.getYear();
int n2 = this.getMonth().getOrdinal();
int n3 = this.getDay();
if (n2 == 0) {
n2 = 11;
--n;
} else if (n3 == BAbsTime.getDaysInMonth(n, BMonth.make(n2))) {
n3 = BAbsTime.getDaysInMonth(n, BMonth.make(--n2));
} else if (n3 > BAbsTime.getDaysInMonth(n, BMonth.make(--n2))) {
n3 = BAbsTime.getDaysInMonth(n, BMonth.make(n2));
}
return BDate.make(n, BMonth.make(n2), n3);
}
public final BDate nextYear() {
int n = this.getDay();
if (this.isLeapDay()) {
n = 28;
}
return BDate.make(this.getYear() + 1, this.getMonth(), n);
}
public final BDate prevYear() {
int n = this.getDay();
if (this.isLeapDay()) {
n = 28;
}
return BDate.make(this.getYear() - 1, this.getMonth(), n);
}
public final BDate next(BWeekday bWeekday) {
BDate bDate = this.nextDay();
while (bDate.getWeekday() != bWeekday) {
bDate = bDate.nextDay();
}
return bDate;
}
public final BDate prev(BWeekday bWeekday) {
BDate bDate = this.prevDay();
while (bDate.getWeekday() != bWeekday) {
bDate = bDate.prevDay();
}
return bDate;
}
public final Type getType() {
return TYPE;
}
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.hashCode = -1;
}
private BDate(int n, BMonth bMonth, int n2) {
this.this();
if (n2 < 1 || n2 > BAbsTime.getDaysInMonth(n, bMonth)) {
throw new IllegalArgumentException("day '" + n2 + "' is invalid, in year '" + n + "', month '" + bMonth + "'.");
}
this.year = n;
this.month = bMonth;
this.day = n2;
}
static {
NULL = DEFAULT = new BDate(1970, BMonth.january, 1);
Class clazz = class$javax$baja$sys$BDate;
if (clazz == null) {
clazz = class$javax$baja$sys$BDate = BDate.class("[Ljavax.baja.sys.BDate;", false);
}
TYPE = Sys.loadType(clazz);
}
}
@@ -0,0 +1,292 @@
/*
* Decompiled with CFR 0.152.
*/
package javax.baja.sys;
import com.tridium.sys.Nre;
import java.io.DataInput;
import java.io.DataOutput;
import java.io.IOException;
import java.text.DecimalFormat;
import java.text.ParsePosition;
import java.util.HashMap;
import java.util.Locale;
import javax.baja.sys.BNumber;
import javax.baja.sys.BObject;
import javax.baja.sys.BSimple;
import javax.baja.sys.Context;
import javax.baja.sys.Sys;
import javax.baja.sys.Type;
import javax.baja.units.BUnit;
import javax.baja.units.BUnitConversion;
/*
* Illegal identifiers - consider using --renameillegalidents true
*/
public final class BDouble
extends BNumber {
public static final BDouble POSITIVE_INFINITY = new BDouble(Double.POSITIVE_INFINITY);
public static final BDouble NEGATIVE_INFINITY = new BDouble(Double.NEGATIVE_INFINITY);
public static final BDouble NaN = new BDouble(Double.NaN);
public static final BDouble DEFAULT = new BDouble(0.0);
public static final Type TYPE;
private static HashMap formatters;
private static DecimalFormat fSN;
private static final long MAX_LONG_PREC = 0x20000000000000L;
private double value;
static /* synthetic */ Class class$javax$baja$sys$BDouble;
public static final BDouble make(double d) {
if (d == 0.0) {
return DEFAULT;
}
if (d == Double.NEGATIVE_INFINITY) {
return NEGATIVE_INFINITY;
}
if (d == Double.POSITIVE_INFINITY) {
return POSITIVE_INFINITY;
}
if (Double.isNaN(d)) {
return NaN;
}
return new BDouble(d);
}
public static final BDouble make(String string) {
return BDouble.make(BDouble.decode(string));
}
public final int getInt() {
return (int)this.value;
}
public final float getFloat() {
return (float)this.value;
}
public final long getLong() {
return (long)this.value;
}
public final double getDouble() {
return this.value;
}
public final int hashCode() {
long l = Double.doubleToLongBits(this.value);
return (int)(l ^ l >>> 32);
}
public final boolean equals(Object object) {
if (object instanceof BDouble) {
double d = ((BDouble)object).value;
if (d == this.value) {
return true;
}
if (Double.isNaN(d) && Double.isNaN(this.value)) {
return true;
}
}
return false;
}
public static final boolean equals(double d, double d2) {
if (d == d2) {
return true;
}
return Double.isNaN(d) && Double.isNaN(d2);
}
public final int compareTo(Object object) {
double d = this.value;
double d2 = ((BNumber)object).getDouble();
if (d == d2) {
return 0;
}
if (Double.isNaN(d) && Double.isNaN(d2)) {
return 0;
}
if (d < d2) {
return -1;
}
return 1;
}
public final String toString(Context context) {
return BDouble.toString(this.value, context);
}
public final void encode(DataOutput dataOutput) throws IOException {
dataOutput.writeDouble(this.value);
}
public final BObject decode(DataInput dataInput) throws IOException {
return BDouble.make(dataInput.readDouble());
}
public final String encodeToString() throws IOException {
return BDouble.encode(this.value);
}
public final BObject decodeFromString(String string) throws IOException {
try {
return BDouble.make(string);
}
catch (RuntimeException runtimeException) {
throw new IOException("Invalid double: " + string + '\n' + runtimeException.toString());
}
}
public static final String encode(double d) {
if (d == Double.POSITIVE_INFINITY) {
return "+inf";
}
if (d == Double.NEGATIVE_INFINITY) {
return "-inf";
}
if (Double.isNaN(d)) {
return "nan";
}
return String.valueOf(d);
}
public static final double decode(String string) {
if (string.equals("+inf")) {
return Double.POSITIVE_INFINITY;
}
if (string.equals("-inf")) {
return Double.NEGATIVE_INFINITY;
}
if (string.equals("nan")) {
return Double.NaN;
}
try {
return Double.parseDouble(string);
}
catch (Exception exception) {
try {
ParsePosition parsePosition = new ParsePosition(0);
Number number = fSN.parse(string, parsePosition);
if (parsePosition.getIndex() != string.length()) {
System.out.println("WARNING: BDouble '" + string + "' appears to have a localized encoding. Will try localized decode:");
Locale[] localeArray = DecimalFormat.getAvailableLocales();
int n = 0;
while (n < localeArray.length) {
parsePosition.setIndex(0);
DecimalFormat decimalFormat = (DecimalFormat)DecimalFormat.getInstance(localeArray[n]);
decimalFormat.applyPattern(fSN.toPattern());
System.out.print(" Trying locale: " + localeArray[n].getCountry() + " (" + localeArray[n].getDisplayCountry() + ") - " + decimalFormat.toLocalizedPattern());
number = decimalFormat.parse(string, parsePosition);
if (parsePosition.getIndex() == string.length()) {
System.out.println(" Success!");
return number.doubleValue();
}
System.out.println(" Failed.");
++n;
}
}
}
catch (Exception exception2) {
exception.printStackTrace();
}
}
throw new IllegalStateException("Unable to decode BDouble: " + string);
}
public static final String toString(double d, Context context) {
BSimple bSimple;
Object object;
int n = 2;
BUnit bUnit = null;
int n2 = 10;
int n3 = Nre.unitConversion;
boolean bl = true;
boolean bl2 = false;
boolean bl3 = false;
if (context != null) {
object = (BNumber)context.getFacet("precision");
if (object != null) {
n = ((BNumber)object).getInt();
}
if ((bUnit = (BUnit)context.getFacet("units")) != null && bUnit.isNull()) {
bUnit = null;
}
if ((bSimple = (BNumber)context.getFacet("radix")) != null) {
n2 = ((BNumber)bSimple).getInt();
}
n3 = context.getFacets().geti("unitConversion", n3);
bl = context.getFacets().getb("showUnits", bl);
bl2 = context.getFacets().getb("showSeparators", bl2);
bl3 = context.getFacets().getb("forceSign", bl3);
}
if (n3 != 0 && bUnit != null && (bSimple = ((BUnitConversion)(object = BUnitConversion.make(n3))).getDesiredUnit(bUnit)) != bUnit) {
d = bUnit.convertTo((BUnit)bSimple, d);
bUnit = bSimple;
}
Object object2 = object = bl3 && d > 0.0 ? "+" : "";
if (bl && bUnit != null && bUnit.getIsPrefix()) {
object = (String)object + bUnit.getSymbol() + ' ';
}
object = n2 != 10 ? (n2 == 2 ? Integer.toBinaryString((int)d) : (n2 == 8 ? Integer.toOctalString((int)d) : (n2 == 16 ? Integer.toHexString((int)d) : Integer.toString((int)d, n2)))) : (d == Double.POSITIVE_INFINITY ? "+inf" : (d == Double.NEGATIVE_INFINITY ? "-inf" : (Double.isNaN(d) ? "nan" : (Math.IEEEremainder(d, 1.0) == 0.0 ? ((long)Math.abs(d) >= 0x20000000000000L ? (String)object + fSN.format(d) : (String)object + BDouble.getFormatter(n, bl2).format(d)) : (String)object + BDouble.getFormatter(n, bl2).format(d)))));
if (bl && bUnit != null && !bUnit.getIsPrefix()) {
object = (String)object + ' ' + bUnit.getSymbol();
}
return object;
}
static final DecimalFormat getFormatter(int n, boolean bl) {
String string = "" + n + bl;
DecimalFormat decimalFormat = (DecimalFormat)formatters.get(string);
if (decimalFormat == null) {
StringBuffer stringBuffer = new StringBuffer(16);
if (bl) {
stringBuffer.append("#,##0");
} else {
stringBuffer.append("#0");
}
if (n > 0) {
stringBuffer.append('.');
int n2 = 0;
while (n2 < n) {
stringBuffer.append('0');
++n2;
}
}
decimalFormat = new DecimalFormat(stringBuffer.toString());
formatters.put(string, decimalFormat);
}
return decimalFormat;
}
public final Type getType() {
return TYPE;
}
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 BDouble(double d) {
this.value = d;
}
static {
Class clazz = class$javax$baja$sys$BDouble;
if (clazz == null) {
clazz = class$javax$baja$sys$BDouble = BDouble.class("[Ljavax.baja.sys.BDouble;", false);
}
TYPE = Sys.loadType(clazz);
formatters = new HashMap();
fSN = new DecimalFormat("0.###############E0");
}
}
@@ -0,0 +1,207 @@
/*
* Decompiled with CFR 0.152.
*/
package javax.baja.sys;
import java.io.DataInput;
import java.io.DataOutput;
import java.io.IOException;
import javax.baja.data.BIDataValue;
import javax.baja.sys.BBoolean;
import javax.baja.sys.BEnum;
import javax.baja.sys.BEnumRange;
import javax.baja.sys.BFrozenEnum;
import javax.baja.sys.BObject;
import javax.baja.sys.Context;
import javax.baja.sys.Sys;
import javax.baja.sys.Type;
/*
* Illegal identifiers - consider using --renameillegalidents true
*/
public final class BDynamicEnum
extends BEnum
implements BIDataValue {
public static final BDynamicEnum DEFAULT = BDynamicEnum.make(0);
public static final Type TYPE;
private int ordinal;
private BEnumRange range;
private String string;
private int hashCode;
static /* synthetic */ Class class$javax$baja$sys$BDynamicEnum;
public static final BDynamicEnum make(int n, BEnumRange bEnumRange) {
if (bEnumRange == null) {
bEnumRange = BEnumRange.NULL;
}
return (BDynamicEnum)new BDynamicEnum(n, bEnumRange).intern();
}
public static final BDynamicEnum make(int n) {
return BDynamicEnum.make(n, BEnumRange.NULL);
}
public static final BDynamicEnum make(BEnum bEnum) {
if (bEnum instanceof BDynamicEnum) {
return (BDynamicEnum)bEnum;
}
if (bEnum instanceof BFrozenEnum) {
BFrozenEnum bFrozenEnum = (BFrozenEnum)bEnum;
if (bFrozenEnum.asDynamic == null) {
bFrozenEnum.asDynamic = BDynamicEnum.make(bEnum.getOrdinal(), bEnum.getRange());
}
return bFrozenEnum.asDynamic;
}
if (bEnum instanceof BBoolean) {
BBoolean bBoolean = (BBoolean)bEnum;
if (bBoolean.asDynamic == null) {
bBoolean.asDynamic = BDynamicEnum.make(bEnum.getOrdinal(), bEnum.getRange());
}
return bBoolean.asDynamic;
}
throw new IllegalStateException();
}
public final boolean isActive() {
boolean bl = false;
if (this.ordinal != 0) {
bl = true;
}
return bl;
}
public final int getOrdinal() {
return this.ordinal;
}
public final String getTag() {
return this.range.getTag(this.ordinal);
}
public final String getDisplayTag(Context context) {
return this.range.getDisplayTag(this.ordinal, context);
}
public final BEnumRange getRange() {
return this.range;
}
public final String toString(Context context) {
BEnumRange bEnumRange;
if (context != null && (bEnumRange = (BEnumRange)context.getFacet("range")) != null) {
return bEnumRange.getDisplayTag(this.ordinal, context);
}
return this.getDisplayTag(context);
}
public final int hashCode() {
try {
if (this.hashCode == -1) {
this.hashCode = this.encodeToString().hashCode();
}
return this.hashCode;
}
catch (Exception exception) {
return System.identityHashCode(this);
}
}
public final boolean equals(Object object) {
if (object instanceof BDynamicEnum) {
BDynamicEnum bDynamicEnum = (BDynamicEnum)object;
if (this.ordinal != bDynamicEnum.ordinal) {
return false;
}
return this.range.equals(bDynamicEnum.range);
}
return false;
}
public final void encode(DataOutput dataOutput) throws IOException {
dataOutput.writeUTF(this.encodeToString());
}
public final BObject decode(DataInput dataInput) throws IOException {
return this.decodeFromString(dataInput.readUTF());
}
public final String encodeToString() throws IOException {
if (this.string == null) {
StringBuffer stringBuffer = new StringBuffer();
stringBuffer.append(this.ordinal);
if (!this.range.isNull()) {
stringBuffer.append('@');
stringBuffer.append(this.range.encodeToString());
}
this.string = stringBuffer.toString();
}
return this.string;
}
public final BObject decodeFromString(String string) throws IOException {
try {
String string2 = string;
String string3 = null;
int n = string.indexOf(64);
if (n > 0) {
string2 = string.substring(0, n);
string3 = string.substring(n + 1);
}
int n2 = Integer.parseInt(string2);
BEnumRange bEnumRange = BEnumRange.NULL;
if (string3 != null) {
bEnumRange = (BEnumRange)bEnumRange.decodeFromString(string3);
}
BDynamicEnum bDynamicEnum = BDynamicEnum.make(n2, bEnumRange);
bDynamicEnum.string = string;
return bDynamicEnum;
}
catch (IOException iOException) {
throw iOException;
}
catch (Exception exception) {
exception.printStackTrace();
throw new IOException(string);
}
}
public final BIDataValue toDataValue() {
return this;
}
public final Type getType() {
return TYPE;
}
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.hashCode = -1;
}
private BDynamicEnum(int n, BEnumRange bEnumRange) {
this.this();
this.ordinal = n;
this.range = bEnumRange;
}
static {
Class clazz = class$javax$baja$sys$BDynamicEnum;
if (clazz == null) {
clazz = class$javax$baja$sys$BDynamicEnum = BDynamicEnum.class("[Ljavax.baja.sys.BDynamicEnum;", false);
}
TYPE = Sys.loadType(clazz);
}
}
@@ -0,0 +1,75 @@
/*
* Decompiled with CFR 0.152.
*/
package javax.baja.sys;
import javax.baja.sys.BEnumRange;
import javax.baja.sys.BFacets;
import javax.baja.sys.BIComparable;
import javax.baja.sys.BIEnum;
import javax.baja.sys.BSimple;
import javax.baja.sys.Context;
import javax.baja.sys.Sys;
import javax.baja.sys.Type;
/*
* Illegal identifiers - consider using --renameillegalidents true
*/
public abstract class BEnum
extends BSimple
implements BIEnum,
BIComparable {
public static final Type TYPE;
static /* synthetic */ Class class$javax$baja$sys$BEnum;
public final BEnum getEnum() {
return this;
}
public final BFacets getEnumFacets() {
return BFacets.make("range", this.getRange());
}
public final int compareTo(Object object) {
return this.getOrdinal() - ((BEnum)object).getOrdinal();
}
public abstract boolean isActive();
public abstract int getOrdinal();
public abstract String getTag();
public abstract String getDisplayTag(Context var1);
public abstract BEnumRange getRange();
public Type getType() {
return TYPE;
}
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());
}
}
BEnum() {
}
static {
Class clazz = class$javax$baja$sys$BEnum;
if (clazz == null) {
clazz = class$javax$baja$sys$BEnum = BEnum.class("[Ljavax.baja.sys.BEnum;", false);
}
TYPE = Sys.loadType(clazz);
}
}
@@ -0,0 +1,481 @@
/*
* Decompiled with CFR 0.152.
*
* Could not load the following classes:
* javax.baja.nre.util.IntHashMap
*/
package javax.baja.sys;
import com.tridium.sys.schema.EnumType;
import java.io.DataInput;
import java.io.DataOutput;
import java.io.IOException;
import java.util.HashMap;
import java.util.StringTokenizer;
import javax.baja.data.BIDataValue;
import javax.baja.log.Log;
import javax.baja.naming.SlotPath;
import javax.baja.nre.util.IntHashMap;
import javax.baja.sys.BBoolean;
import javax.baja.sys.BDynamicEnum;
import javax.baja.sys.BEnum;
import javax.baja.sys.BFacets;
import javax.baja.sys.BObject;
import javax.baja.sys.BSimple;
import javax.baja.sys.Context;
import javax.baja.sys.InvalidEnumException;
import javax.baja.sys.ModuleNotFoundException;
import javax.baja.sys.Sys;
import javax.baja.sys.Type;
import javax.baja.util.Lexicon;
/*
* Illegal identifiers - consider using --renameillegalidents true
*/
public final class BEnumRange
extends BSimple
implements BIDataValue {
static int[] noDynamic = new int[0];
static String[] noTags = new String[0];
static IntHashMap noByOrdinal = new IntHashMap();
static HashMap noByTag = new HashMap();
public static final BEnumRange NULL;
public static final BEnumRange DEFAULT;
public static final Type TYPE;
static final BEnumRange BOOLEAN_RANGE;
private EnumType frozen;
private int[] dynamic;
private IntHashMap byOrdinal;
private HashMap byTag;
private String string;
private BFacets options;
private String lexicon;
BFacets asFacets;
private int hashCode;
static /* synthetic */ Class class$javax$baja$sys$BEnumRange;
public static final BEnumRange make(Type type) {
return BEnumRange.make(type, null, null, 0);
}
public static final BEnumRange make(String[] stringArray) {
int[] nArray = new int[stringArray.length];
int n = 0;
while (n < nArray.length) {
nArray[n] = n;
++n;
}
return BEnumRange.make(null, nArray, stringArray, nArray.length);
}
public static final BEnumRange make(int[] nArray, String[] stringArray) {
return BEnumRange.make(null, nArray, stringArray, nArray.length);
}
public static final BEnumRange make(Type type, int[] nArray, String[] stringArray) {
return BEnumRange.make(type, nArray, stringArray, nArray.length);
}
public static final BEnumRange make(Type type, int[] nArray, String[] stringArray, int n) {
return BEnumRange.make(type, nArray, stringArray, n, null);
}
public static final BEnumRange make(Type type, int[] nArray, String[] stringArray, int n, BFacets bFacets) {
if (bFacets == null) {
bFacets = BFacets.DEFAULT;
}
if (nArray == null) {
nArray = noDynamic;
}
if (stringArray == null) {
stringArray = noTags;
}
EnumType enumType = null;
if (type instanceof EnumType) {
enumType = (EnumType)type;
} else if (type != null) {
throw new IllegalArgumentException("frozen type is not baja:FrozenEnum - " + type);
}
if (n == 0 && bFacets.isNull()) {
if (enumType == null) {
return DEFAULT;
}
if (enumType.getRange(false) != null) {
return enumType.getRange(false);
}
return (BEnumRange)new BEnumRange(enumType, noDynamic, noByOrdinal, noByTag, bFacets).intern();
}
IntHashMap intHashMap = new IntHashMap();
HashMap<String, Integer> hashMap = new HashMap<String, Integer>();
int n2 = 0;
int[] nArray2 = new int[n];
int n3 = 0;
while (n3 < n) {
int n4 = nArray[n3];
String string = stringArray[n3];
SlotPath.verifyValidName(string);
if (enumType != null && enumType.isOrdinal(n4)) {
Log.getLog("sys").warning("Ignoring dynamic enumeration " + n4 + ':' + string + " in fixed enum " + type.getTypeName());
} else {
if (intHashMap.get(n4) != null) {
throw new IllegalArgumentException("Duplicate ordinal: " + string + '=' + n4);
}
if (hashMap.get(string) != null) {
throw new IllegalArgumentException("Duplicate tag: " + string + '=' + n4);
}
intHashMap.put(n4, (Object)string);
hashMap.put(string, new Integer(n4));
nArray2[n2++] = n4;
}
++n3;
}
int[] nArray3 = new int[n2];
System.arraycopy(nArray2, 0, nArray3, 0, n2);
return (BEnumRange)new BEnumRange(enumType, nArray3, intHashMap, hashMap, bFacets).intern();
}
public final int[] getOrdinals() {
int[] nArray = noDynamic;
if (this.frozen != null) {
nArray = this.frozen.getOrdinals();
}
int[] nArray2 = new int[nArray.length + this.dynamic.length];
System.arraycopy(nArray, 0, nArray2, 0, nArray.length);
System.arraycopy(this.dynamic, 0, nArray2, nArray.length, this.dynamic.length);
return nArray2;
}
public final boolean isOrdinal(int n) {
if (this.frozen != null && this.frozen.isOrdinal(n)) {
return true;
}
boolean bl = false;
if (this.byOrdinal.get(n) != null) {
bl = true;
}
return bl;
}
public final String getTag(int n) {
String string = (String)this.byOrdinal.get(n);
if (string != null) {
return string;
}
if (this.frozen != null && this.frozen.isOrdinal(n)) {
return this.frozen.getTag(n);
}
return String.valueOf(n);
}
public final String getDisplayTag(int n, Context context) {
if (this.frozen != null && this.frozen.isOrdinal(n)) {
return this.frozen.get(n).getDisplayTag(context);
}
String string = (String)this.byOrdinal.get(n);
if (string != null) {
String string2;
if (this.lexicon != null && (string2 = Lexicon.make(this.lexicon, context).get(string, null)) != null) {
return string2;
}
if (string != null) {
return SlotPath.unescape(string);
}
}
return String.valueOf(n);
}
public final boolean isTag(String string) {
if (this.frozen != null && this.frozen.isTag(string)) {
return true;
}
boolean bl = false;
if (this.byTag.get(string) != null) {
bl = true;
}
return bl;
}
public final int tagToOrdinal(String string) {
if (this.frozen != null && this.frozen.isTag(string)) {
return this.frozen.tagToOrdinal(string);
}
Integer n = (Integer)this.byTag.get(string);
if (n != null) {
return n;
}
throw new InvalidEnumException(string);
}
public final BEnum get(int n) {
return this.get(n, true);
}
public final BEnum get(int n, boolean bl) {
if (this == BOOLEAN_RANGE) {
return n == 0 ? BBoolean.FALSE : BBoolean.TRUE;
}
if (this.frozen != null && this.frozen.isOrdinal(n)) {
return this.frozen.get(n);
}
if (bl) {
return BDynamicEnum.make(n, this);
}
throw new InvalidEnumException(n);
}
public final BEnum get(String string) {
if (this == BOOLEAN_RANGE) {
return string.equals("false") ? BBoolean.FALSE : BBoolean.TRUE;
}
if (this.frozen != null && this.frozen.isTag(string)) {
return this.frozen.get(string);
}
if (this.byTag.get(string) != null) {
return BDynamicEnum.make((Integer)this.byTag.get(string), this);
}
throw new InvalidEnumException(string);
}
public final boolean isFrozenOrdinal(int n) {
boolean bl = false;
if (this.frozen != null && this.frozen.isOrdinal(n)) {
bl = true;
}
return bl;
}
public final boolean isDynamicOrdinal(int n) {
boolean bl = false;
if (this.byOrdinal.get(n) != null) {
bl = true;
}
return bl;
}
public final Type getFrozenType() {
return this.frozen;
}
public final BFacets getOptions() {
return this.options;
}
public final boolean isNull() {
boolean bl = false;
if (this.frozen == null && this.dynamic.length == 0) {
bl = true;
}
return bl;
}
public final int hashCode() {
try {
if (this.hashCode == -1) {
this.hashCode = this.encodeToString().hashCode();
}
return this.hashCode;
}
catch (Exception exception) {
return System.identityHashCode(this);
}
}
public final boolean equals(Object object) {
if (object instanceof BEnumRange) {
EnumType enumType;
BEnumRange bEnumRange = (BEnumRange)object;
EnumType enumType2 = this.frozen == null ? null : this.frozen;
EnumType enumType3 = enumType = bEnumRange.frozen == null ? null : bEnumRange.frozen;
if (enumType2 != enumType) {
return false;
}
return this.byOrdinal.equals((Object)bEnumRange.byOrdinal);
}
return false;
}
public final void encode(DataOutput dataOutput) throws IOException {
dataOutput.writeUTF(this.encodeToString());
}
public final BObject decode(DataInput dataInput) throws IOException {
return this.decodeFromString(dataInput.readUTF());
}
public final String encodeToString() throws IOException {
if (this.string == null) {
StringBuffer stringBuffer = new StringBuffer();
if (this.frozen != null) {
stringBuffer.append(this.frozen.getModule().getModuleName()).append(':').append(this.frozen.getTypeName());
}
if (this.dynamic.length > 0 || this.frozen == null) {
if (stringBuffer.length() > 0) {
stringBuffer.append('+');
}
stringBuffer.append('{');
int n = 0;
while (n < this.dynamic.length) {
int n2 = this.dynamic[n];
String string = (String)this.byOrdinal.get(n2);
if (n > 0) {
stringBuffer.append(',');
}
stringBuffer.append(string).append('=').append(n2);
++n;
}
stringBuffer.append('}');
}
if (!this.options.isNull()) {
stringBuffer.append('?').append(this.options.encodeToString());
}
this.string = stringBuffer.toString();
}
return this.string;
}
public final String encodeToStringExpanded() throws IOException {
if (this.frozen == null) {
return this.encodeToString();
}
StringBuffer stringBuffer = new StringBuffer();
int[] nArray = this.getOrdinals();
stringBuffer.append('{');
int n = 0;
while (n < nArray.length) {
int n2 = nArray[n];
String string = this.getTag(n2);
if (n > 0) {
stringBuffer.append(',');
}
stringBuffer.append(string).append('=').append(n2);
++n;
}
stringBuffer.append('}');
return stringBuffer.toString();
}
public final BObject decodeFromString(String string) throws IOException {
try {
if (string.equals("{}")) {
return DEFAULT;
}
BFacets bFacets = null;
int n = string.indexOf(63);
if (n > 0) {
bFacets = BFacets.make(string.substring(n + 1));
string = string.substring(0, n);
}
String[] stringArray = BEnumRange.splitFrozenDynamic(string);
String string2 = stringArray[0];
String string3 = stringArray[1];
Type type = null;
if (string2 != null) {
try {
type = Sys.getType(string2);
}
catch (ModuleNotFoundException moduleNotFoundException) {
return NULL;
}
}
if (string3 == null) {
return BEnumRange.make(type, null, null, 0, bFacets);
}
if (string3.charAt(0) != '{') {
throw new IOException();
}
if (string3.charAt(string3.length() - 1) != '}') {
throw new IOException();
}
string3 = string3.substring(1, string3.length() - 1);
int n2 = string3.length() / 4 + 1;
int[] nArray = new int[n2];
String[] stringArray2 = new String[n2];
n2 = BEnumRange.parseDynamic(string3, nArray, stringArray2);
return BEnumRange.make(type, nArray, stringArray2, n2, bFacets);
}
catch (IOException iOException) {
throw iOException;
}
catch (Exception exception) {
exception.printStackTrace();
throw new IOException(string);
}
}
static final String[] splitFrozenDynamic(String string) {
String string2 = null;
String string3 = null;
int n = string.indexOf(43);
if (n < 0) {
if (string.startsWith("{")) {
string3 = string;
} else {
string2 = string;
}
} else if (string.startsWith("{")) {
string3 = string.substring(0, n);
string2 = string.substring(n + 1);
} else {
string2 = string.substring(0, n);
string3 = string.substring(n + 1);
}
return new String[]{string2, string3};
}
static final int parseDynamic(String string, int[] nArray, String[] stringArray) throws Exception {
int n = 0;
StringTokenizer stringTokenizer = new StringTokenizer(string, "=,");
while (stringTokenizer.hasMoreTokens()) {
stringArray[n] = stringTokenizer.nextToken();
nArray[n] = Integer.parseInt(stringTokenizer.nextToken());
++n;
}
return n;
}
public final BIDataValue toDataValue() {
return this;
}
public final Type getType() {
return TYPE;
}
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.hashCode = -1;
}
private BEnumRange(EnumType enumType, int[] nArray, IntHashMap intHashMap, HashMap hashMap, BFacets bFacets) {
this.this();
this.frozen = enumType;
this.dynamic = nArray;
this.byOrdinal = intHashMap;
this.byTag = hashMap;
this.options = bFacets;
this.lexicon = bFacets.gets("lexicon", null);
}
static {
DEFAULT = NULL = new BEnumRange(null, noDynamic, noByOrdinal, noByTag, BFacets.DEFAULT);
Class clazz = class$javax$baja$sys$BEnumRange;
if (clazz == null) {
clazz = class$javax$baja$sys$BEnumRange = BEnumRange.class("[Ljavax.baja.sys.BEnumRange;", false);
}
TYPE = Sys.loadType(clazz);
BOOLEAN_RANGE = BEnumRange.make(new String[]{"false", "true"});
}
}
@@ -0,0 +1,705 @@
/*
* Decompiled with CFR 0.152.
*
* Could not load the following classes:
* javax.baja.nre.util.Array
* javax.baja.nre.util.IntHashMap
*/
package javax.baja.sys;
import java.io.DataInput;
import java.io.DataOutput;
import java.io.IOException;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.Map;
import java.util.StringTokenizer;
import javax.baja.data.BIDataValue;
import javax.baja.data.DataUtil;
import javax.baja.naming.SlotPath;
import javax.baja.nre.util.Array;
import javax.baja.nre.util.IntHashMap;
import javax.baja.sys.BBoolean;
import javax.baja.sys.BDouble;
import javax.baja.sys.BEnum;
import javax.baja.sys.BEnumRange;
import javax.baja.sys.BInteger;
import javax.baja.sys.BLong;
import javax.baja.sys.BNumber;
import javax.baja.sys.BObject;
import javax.baja.sys.BSimple;
import javax.baja.sys.BString;
import javax.baja.sys.BajaRuntimeException;
import javax.baja.sys.Context;
import javax.baja.sys.Sys;
import javax.baja.sys.Type;
import javax.baja.units.BUnit;
import javax.baja.user.BUser;
/*
* Illegal identifiers - consider using --renameillegalidents true
*/
public final class BFacets
extends BSimple
implements Context {
public static final String MIN = "min";
public static final String MAX = "max";
public static final String TRUE_TEXT = "trueText";
public static final String FALSE_TEXT = "falseText";
public static final String PRECISION = "precision";
public static final String UNITS = "units";
public static final String RADIX = "radix";
public static final String RANGE = "range";
public static final String SHOW_DATE = "showDate";
public static final String SHOW_TIME = "showTime";
public static final String SHOW_SECONDS = "showSeconds";
public static final String SHOW_MILLISECONDS = "showMilliseconds";
public static final String SHOW_TIME_ZONE = "showTimeZone";
public static final String TIME_ZONE = "TimeZone";
public static final String MULTI_LINE = "multiLine";
public static final String FIELD_WIDTH = "fieldWidth";
public static final String ALLOW_NULL = "allowNull";
public static final String ORD_RELATIVIZE = "ordRelativize";
public static final String FIELD_EDITOR = "fieldEditor";
public static final String INPLACE_EDITOR = "inplaceEditor";
public static final String CELL_EDITOR = "cellEditor";
public static final String TARGET_TYPE = "targetType";
public static final String UNIT_CONVERSION = "unitConversion";
public static final String REALMS = "realms";
public static final String SHOW_UNITS = "showUnits";
public static final String SHOW_SEPARATORS = "showSeparators";
public static final String FORCE_SIGN = "forceSign";
public static final String MAX_OVERRIDE_DURATION = "maxOverrideDuration";
private static final String[] BOOLEAN_KEYS;
private static final BString TRUE_STRING;
private static final BString FALSE_STRING;
private static final String[] NUMERIC_KEYS;
private static final String[] INT_KEYS;
private static final String[] ENUM_KEYS;
public static final BFacets NULL;
public static final BFacets DEFAULT;
public static final Type TYPE;
private static final boolean internDisabled;
private static final String defaultExcludedFacetKeys = "sourceName;historyId;lastTimestamp;firstTimestamp;startTime;endTime;foxSessionId;historyCursorPreRec;historyCursorPostRec";
private static final Array noInternFacetKeys;
private String[] keys;
private BIDataValue[] values;
private String encodeStr;
private Object pickle;
static /* synthetic */ Class class$javax$baja$sys$BFacets;
static /* synthetic */ Class class$java$lang$String;
public static final BFacets makeBoolean(BString bString, BString bString2) {
return BFacets.factory(BOOLEAN_KEYS, new BIDataValue[]{bString, bString2});
}
public static final BFacets makeBoolean(String string, String string2) {
return BFacets.makeBoolean(BString.make(string), BString.make(string2));
}
public static final BFacets makeBoolean() {
return BFacets.makeBoolean(TRUE_STRING, FALSE_STRING);
}
public static final BFacets makeNumeric(BUnit bUnit, BInteger bInteger, BNumber bNumber, BNumber bNumber2) {
if (bUnit == null) {
bUnit = BUnit.NULL;
}
return BFacets.factory(NUMERIC_KEYS, new BIDataValue[]{bUnit, bInteger, bNumber, bNumber2});
}
public static final BFacets makeNumeric() {
return BFacets.makeNumeric(null, BInteger.make(1), BDouble.NEGATIVE_INFINITY, BDouble.POSITIVE_INFINITY);
}
public static final BFacets makeNumeric(int n) {
return BFacets.makeNumeric(null, BInteger.make(n), BDouble.NEGATIVE_INFINITY, BDouble.POSITIVE_INFINITY);
}
public static final BFacets makeNumeric(BUnit bUnit, int n) {
return BFacets.makeNumeric(bUnit, BInteger.make(n), BDouble.NEGATIVE_INFINITY, BDouble.POSITIVE_INFINITY);
}
public static final BFacets makeNumeric(BUnit bUnit, BNumber bNumber, BNumber bNumber2) {
return BFacets.makeNumeric(bUnit, BInteger.make(1), bNumber, bNumber2);
}
public static final BFacets makeNumeric(BUnit bUnit, int n, double d, double d2) {
return BFacets.makeNumeric(bUnit, BInteger.make(n), BDouble.make(d), BDouble.make(d2));
}
public static final BFacets makeInt(BUnit bUnit, int n, int n2, int n3) {
if (bUnit == null) {
bUnit = BUnit.NULL;
}
return BFacets.factory(INT_KEYS, new BIDataValue[]{bUnit, BInteger.make(n), BInteger.make(n2), BInteger.make(n3)});
}
public static final BFacets makeInt(BUnit bUnit, int n, int n2) {
return BFacets.makeInt(bUnit, n, n2, 10);
}
public static final BFacets makeInt(BUnit bUnit) {
return BFacets.makeInt(bUnit, Integer.MIN_VALUE, Integer.MAX_VALUE, 10);
}
public static final BFacets makeInt(int n, int n2) {
return BFacets.makeInt(null, n, n2, 10);
}
public static final BFacets makeInt() {
return BFacets.makeInt(null, Integer.MIN_VALUE, Integer.MAX_VALUE, 10);
}
public static final BFacets makeEnum(BEnumRange bEnumRange) {
if (bEnumRange == null) {
bEnumRange = BEnumRange.NULL;
}
if (bEnumRange.asFacets == null) {
bEnumRange.asFacets = BFacets.factory(ENUM_KEYS, new BIDataValue[]{bEnumRange});
}
return bEnumRange.asFacets;
}
public static final BFacets makeEnum() {
return BFacets.makeEnum(null);
}
public static final BFacets make(String string, boolean bl) {
return BFacets.make(string, BBoolean.make(bl));
}
public static final BFacets make(String string, int n) {
return BFacets.make(string, BInteger.make(n));
}
public static final BFacets make(String string, long l) {
return BFacets.make(string, BLong.make(l));
}
public static final BFacets make(String string, String string2) {
return BFacets.make(string, BString.make(string2));
}
public static final BFacets make(String string, BIDataValue bIDataValue) {
if (string.equals(RANGE) && bIDataValue instanceof BEnumRange) {
return BFacets.makeEnum((BEnumRange)bIDataValue);
}
SlotPath.verifyValidName(string);
BFacets.verifyValue(bIDataValue);
return BFacets.factory(new String[]{string}, new BIDataValue[]{bIDataValue});
}
public static final BFacets make(String string, BIDataValue bIDataValue, String string2, BIDataValue bIDataValue2) {
SlotPath.verifyValidName(string);
BFacets.verifyValue(bIDataValue);
SlotPath.verifyValidName(string2);
BFacets.verifyValue(bIDataValue2);
return BFacets.factory(new String[]{string, string2}, new BIDataValue[]{bIDataValue, bIDataValue2});
}
public static final BFacets make(String string, BIDataValue bIDataValue, String string2, BIDataValue bIDataValue2, String string3, BIDataValue bIDataValue3) {
SlotPath.verifyValidName(string);
BFacets.verifyValue(bIDataValue);
SlotPath.verifyValidName(string2);
BFacets.verifyValue(bIDataValue2);
SlotPath.verifyValidName(string3);
BFacets.verifyValue(bIDataValue3);
return BFacets.factory(new String[]{string, string2, string3}, new BIDataValue[]{bIDataValue, bIDataValue2, bIDataValue3});
}
public static final BFacets make(String string) throws IOException {
return (BFacets)DEFAULT.decodeFromString(string);
}
public static final BFacets tryMake(String string) {
try {
return BFacets.make(string);
}
catch (IOException iOException) {
return NULL;
}
}
public static final BFacets make(Map map) {
if (map.size() == 0) {
return NULL;
}
String[] stringArray = new String[map.size()];
BIDataValue[] bIDataValueArray = new BIDataValue[map.size()];
Iterator iterator = map.keySet().iterator();
int n = 0;
while (iterator.hasNext()) {
String string = (String)iterator.next();
SlotPath.verifyValidName(string);
BIDataValue bIDataValue = (BIDataValue)map.get(string);
BFacets.verifyValue(bIDataValue);
stringArray[n] = string;
bIDataValueArray[n] = bIDataValue;
++n;
}
return BFacets.factory(stringArray, bIDataValueArray);
}
public static final BFacets make(String[] stringArray, BIDataValue[] bIDataValueArray) {
if (stringArray.length != bIDataValueArray.length) {
throw new IllegalArgumentException();
}
int n = 0;
while (n < bIDataValueArray.length) {
SlotPath.verifyValidName(stringArray[n]);
BFacets.verifyValue(bIDataValueArray[n]);
++n;
}
return BFacets.factory((String[])stringArray.clone(), (BIDataValue[])bIDataValueArray.clone());
}
public static final BFacets make(BFacets bFacets, String string, BIDataValue bIDataValue) {
SlotPath.verifyValidName(string);
BFacets.verifyValue(bIDataValue);
int n = bFacets.indexOf(string);
if (n >= 0) {
if (bFacets.values[n].equals(bIDataValue)) {
return bFacets;
}
BIDataValue[] bIDataValueArray = (BIDataValue[])bFacets.values.clone();
bIDataValueArray[n] = bIDataValue;
return BFacets.factory(bFacets.keys, bIDataValueArray);
}
int n2 = bFacets.keys.length;
String[] stringArray = new String[n2 + 1];
BIDataValue[] bIDataValueArray = new BIDataValue[n2 + 1];
System.arraycopy(bFacets.keys, 0, stringArray, 0, n2);
System.arraycopy(bFacets.values, 0, bIDataValueArray, 0, n2);
stringArray[n2] = string;
bIDataValueArray[n2] = bIDataValue;
return BFacets.factory(stringArray, bIDataValueArray);
}
public static final BFacets makeRemove(BFacets bFacets, String string) {
int n = bFacets.indexOf(string);
if (n < 0) {
return bFacets;
}
if (bFacets.keys.length == 1) {
return NULL;
}
int n2 = bFacets.keys.length;
String[] stringArray = new String[n2 - 1];
System.arraycopy(bFacets.keys, 0, stringArray, 0, n);
System.arraycopy(bFacets.keys, n + 1, stringArray, n, n2 - n - 1);
BIDataValue[] bIDataValueArray = new BIDataValue[n2 - 1];
System.arraycopy(bFacets.values, 0, bIDataValueArray, 0, n);
System.arraycopy(bFacets.values, n + 1, bIDataValueArray, n, n2 - n - 1);
return BFacets.factory(stringArray, bIDataValueArray);
}
public static final BFacets makeRemove(BFacets bFacets, String[] stringArray) {
if (bFacets.keys.length == 0) {
return NULL;
}
IntHashMap intHashMap = new IntHashMap();
int n = 0;
while (n < stringArray.length) {
int n2 = bFacets.indexOf(stringArray[n]);
if (n2 >= 0) {
intHashMap.put(n2, (Object)stringArray[n]);
}
++n;
}
if (intHashMap.isEmpty()) {
return bFacets;
}
n = bFacets.keys.length;
String[] stringArray2 = new String[n - intHashMap.size()];
BIDataValue[] bIDataValueArray = new BIDataValue[n - intHashMap.size()];
int n3 = 0;
int n4 = 0;
while (n4 < n) {
if (intHashMap.get(n4) == null) {
stringArray2[n3] = bFacets.keys[n4];
bIDataValueArray[n3] = bFacets.values[n4];
++n3;
}
++n4;
}
return BFacets.factory(stringArray2, bIDataValueArray);
}
public static final BFacets make(BFacets bFacets, BFacets bFacets2) {
if (bFacets == null || bFacets.isNull()) {
return bFacets2 == null ? NULL : bFacets2;
}
if (bFacets2 == null || bFacets2.isNull()) {
return bFacets == null ? NULL : bFacets;
}
int n = bFacets.keys.length + bFacets2.keys.length;
String[] stringArray = new String[n];
BIDataValue[] bIDataValueArray = new BIDataValue[n];
System.arraycopy(bFacets.keys, 0, stringArray, 0, bFacets.keys.length);
System.arraycopy(bFacets.values, 0, bIDataValueArray, 0, bFacets.values.length);
int n2 = bFacets.keys.length;
int n3 = 0;
while (n3 < bFacets2.keys.length) {
int n4 = bFacets.indexOf(bFacets2.keys[n3]);
if (n4 == -1) {
stringArray[n2] = bFacets2.keys[n3];
bIDataValueArray[n2++] = bFacets2.values[n3];
} else {
bIDataValueArray[n4] = bFacets2.values[n3];
}
++n3;
}
if (n2 != n) {
String[] stringArray2 = new String[n2];
BIDataValue[] bIDataValueArray2 = new BIDataValue[n2];
System.arraycopy(stringArray, 0, stringArray2, 0, n2);
System.arraycopy(bIDataValueArray, 0, bIDataValueArray2, 0, n2);
return BFacets.factory(stringArray2, bIDataValueArray2);
}
return BFacets.factory(stringArray, bIDataValueArray);
}
public static final BFacets make(BFacets bFacets) {
if (bFacets == null) {
return NULL;
}
return bFacets;
}
public static final BFacets makePickle(BFacets bFacets, Object object) {
BFacets bFacets2 = new BFacets(bFacets.keys, bFacets.values, bFacets.encodeStr);
bFacets2.pickle = object;
return bFacets2;
}
private static final BFacets factory(String[] stringArray, BIDataValue[] bIDataValueArray) {
return (BFacets)new BFacets(stringArray, bIDataValueArray, null).intern();
}
private static final String encode(String[] stringArray, BIDataValue[] bIDataValueArray) {
StringBuffer stringBuffer = new StringBuffer();
int n = 0;
while (n < stringArray.length) {
String string = stringArray[n];
BObject bObject = (BObject)((Object)bIDataValueArray[n]);
if (n > 0) {
stringBuffer.append('|');
}
try {
stringBuffer.append(string).append('=').append(DataUtil.marshal(bObject));
}
catch (Exception exception) {
throw new BajaRuntimeException(exception);
}
++n;
}
return stringBuffer.toString();
}
public final String[] list() {
return (String[])this.keys.clone();
}
private final int indexOf(String string) {
int n = 0;
while (n < this.keys.length) {
if (this.keys[n].equals(string)) {
return n;
}
++n;
}
return -1;
}
public final BObject get(String string) {
int n = 0;
while (n < this.keys.length) {
if (this.keys[n].equals(string)) {
return (BObject)((Object)this.values[n]);
}
++n;
}
return null;
}
public final BObject get(String string, BObject bObject) {
int n = 0;
while (n < this.keys.length) {
if (this.keys[n].equals(string)) {
return (BObject)((Object)this.values[n]);
}
++n;
}
return bObject;
}
public final boolean getb(String string, boolean bl) {
BObject bObject = this.get(string);
if (bObject instanceof BBoolean) {
return ((BBoolean)bObject).getBoolean();
}
return bl;
}
public final int geti(String string, int n) {
BObject bObject = this.get(string);
if (bObject instanceof BNumber) {
return ((BNumber)bObject).getInt();
}
if (bObject instanceof BEnum) {
return ((BEnum)bObject).getOrdinal();
}
return n;
}
public final long getl(String string, long l) {
BObject bObject = this.get(string);
if (bObject instanceof BNumber) {
return ((BNumber)bObject).getLong();
}
if (bObject instanceof BEnum) {
return ((BEnum)bObject).getOrdinal();
}
return l;
}
public final float getf(String string, float f) {
BObject bObject = this.get(string);
if (bObject instanceof BNumber) {
return ((BNumber)bObject).getFloat();
}
return f;
}
public final double getd(String string, double d) {
BObject bObject = this.get(string);
if (bObject instanceof BNumber) {
return ((BNumber)bObject).getDouble();
}
return d;
}
public final String gets(String string, String string2) {
BObject bObject = this.get(string);
if (bObject == null) {
return string2;
}
return bObject.toString();
}
public final Context getBase() {
return null;
}
public final BUser getUser() {
return null;
}
public final BObject getFacet(String string) {
return this.get(string);
}
public final String getLanguage() {
return Sys.getLanguage();
}
public final BFacets getFacets() {
return this;
}
public final boolean isNull() {
boolean bl = false;
if (this.keys.length == 0) {
bl = true;
}
return bl;
}
public final boolean equals(Object object) {
if (!(object instanceof BFacets)) {
return false;
}
BFacets bFacets = this;
BFacets bFacets2 = (BFacets)object;
if (bFacets.keys.length != bFacets2.keys.length) {
return false;
}
int n = 0;
while (n < bFacets.keys.length) {
String string = bFacets.keys[n];
BObject bObject = bFacets.get(string);
BObject bObject2 = bFacets2.get(string);
if (bObject2 == null || !((Object)bObject).equals(bObject2)) {
return false;
}
++n;
}
return true;
}
public final String toString(Context context) {
StringBuffer stringBuffer = new StringBuffer();
int n = 0;
while (n < this.keys.length) {
if (n > 0) {
stringBuffer.append(',');
}
stringBuffer.append(this.keys[n]).append('=').append(this.values[n].toString(context));
++n;
}
return stringBuffer.toString();
}
public final int hashCode() {
try {
return this.encodeToString().hashCode();
}
catch (Exception exception) {
return System.identityHashCode(this);
}
}
public final void encode(DataOutput dataOutput) throws IOException {
dataOutput.writeUTF(this.encodeToString());
}
public final BObject decode(DataInput dataInput) throws IOException {
return this.decodeFromString(dataInput.readUTF());
}
public final BIDataValue toDataValue() {
try {
return BString.make(this.encodeToString());
}
catch (Exception exception) {
exception.printStackTrace();
return BString.make(this.toString());
}
}
public final String encodeToString() throws IOException {
if (this.encodeStr == null) {
this.encodeStr = BFacets.encode(this.keys, this.values);
}
return this.encodeStr;
}
public final BObject decodeFromString(String string) throws IOException {
if (string == null || string.length() == 0) {
return NULL;
}
try {
Object object;
ArrayList<String> arrayList = new ArrayList<String>();
ArrayList<BObject> arrayList2 = new ArrayList<BObject>();
StringTokenizer stringTokenizer = new StringTokenizer(string, "|");
while (stringTokenizer.hasMoreTokens()) {
object = stringTokenizer.nextToken();
int n = ((String)object).indexOf(61);
String string2 = ((String)object).substring(0, n);
SlotPath.verifyValidName(string2);
BObject bObject = DataUtil.unmarshal(((String)object).substring(n + 1));
arrayList.add(string2);
arrayList2.add(bObject);
}
if (arrayList.size() == 0) {
return NULL;
}
object = BFacets.factory(arrayList.toArray(new String[arrayList.size()]), arrayList2.toArray(new BIDataValue[arrayList2.size()]));
return object;
}
catch (IOException iOException) {
throw iOException;
}
catch (Exception exception) {
exception.printStackTrace();
throw new IOException(exception.toString());
}
}
private static final void verifyValue(BIDataValue bIDataValue) {
if (bIDataValue == null) {
throw new NullPointerException();
}
}
public final Object getPickle() {
return this.pickle;
}
public final void setPickle(Object object) {
this.pickle = object;
}
public final Object fw(int n, Object object, Object object2, Object object3, Object object4) {
if (n == 116) {
int n2 = 0;
while (n2 < noInternFacetKeys.size()) {
if (this.get((String)noInternFacetKeys.get(n2)) != null) {
return Boolean.TRUE;
}
++n2;
}
return null;
}
return super.fw(n, object, object2, object3, object4);
}
public final Type getType() {
return TYPE;
}
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 BFacets(String[] stringArray, BIDataValue[] bIDataValueArray, String string) {
this.keys = stringArray;
this.values = bIDataValueArray;
this.encodeStr = string;
}
static {
String string;
BOOLEAN_KEYS = new String[]{TRUE_TEXT, FALSE_TEXT};
TRUE_STRING = BString.make("true");
FALSE_STRING = BString.make("false");
NUMERIC_KEYS = new String[]{UNITS, PRECISION, MIN, MAX};
INT_KEYS = new String[]{UNITS, MIN, MAX, RADIX};
ENUM_KEYS = new String[]{RANGE};
DEFAULT = NULL = BFacets.factory(new String[0], new BIDataValue[0]);
Class clazz = class$javax$baja$sys$BFacets;
if (clazz == null) {
clazz = class$javax$baja$sys$BFacets = BFacets.class("[Ljavax.baja.sys.BFacets;", false);
}
TYPE = Sys.loadType(clazz);
internDisabled = Boolean.getBoolean("niagara.intern.disabled");
Class clazz2 = class$java$lang$String;
if (clazz2 == null) {
clazz2 = class$java$lang$String = BFacets.class("[Ljava.lang.String;", false);
}
noInternFacetKeys = new Array(clazz2);
if (!internDisabled && (string = System.getProperty("niagara.intern.excludedFacetKeys", defaultExcludedFacetKeys)) != null) {
StringTokenizer stringTokenizer = new StringTokenizer(string, ";");
while (stringTokenizer.hasMoreTokens()) {
try {
noInternFacetKeys.add((Object)stringTokenizer.nextToken());
}
catch (Exception exception) {
exception.printStackTrace();
}
}
}
}
}
@@ -0,0 +1,188 @@
/*
* Decompiled with CFR 0.152.
*/
package javax.baja.sys;
import java.io.DataInput;
import java.io.DataOutput;
import java.io.IOException;
import javax.baja.sys.BDouble;
import javax.baja.sys.BNumber;
import javax.baja.sys.BObject;
import javax.baja.sys.Context;
import javax.baja.sys.Sys;
import javax.baja.sys.Type;
/*
* Illegal identifiers - consider using --renameillegalidents true
*/
public final class BFloat
extends BNumber {
public static final BFloat POSITIVE_INFINITY = new BFloat(Float.POSITIVE_INFINITY);
public static final BFloat NEGATIVE_INFINITY = new BFloat(Float.NEGATIVE_INFINITY);
public static final BFloat NaN = new BFloat(Float.NaN);
public static final BFloat DEFAULT = new BFloat(0.0f);
public static final Type TYPE;
private float value;
static /* synthetic */ Class class$javax$baja$sys$BFloat;
public static final BFloat make(float f) {
if (f == 0.0f) {
return DEFAULT;
}
if (f == Float.NEGATIVE_INFINITY) {
return NEGATIVE_INFINITY;
}
if (f == Float.POSITIVE_INFINITY) {
return POSITIVE_INFINITY;
}
if (Float.isNaN(f)) {
return NaN;
}
return new BFloat(f);
}
public static final BFloat make(String string) {
return BFloat.make(BFloat.decode(string));
}
public final int getInt() {
return (int)this.value;
}
public final long getLong() {
return (long)this.value;
}
public final float getFloat() {
return this.value;
}
public final double getDouble() {
return this.value;
}
public final int hashCode() {
return Float.floatToIntBits(this.value);
}
public final boolean equals(Object object) {
if (object instanceof BFloat) {
float f = ((BFloat)object).value;
if (f == this.value) {
return true;
}
if (Float.isNaN(f) && Float.isNaN(this.value)) {
return true;
}
}
return false;
}
public static final boolean equals(float f, float f2) {
if (f == f2) {
return true;
}
return Float.isNaN(f) && Float.isNaN(f2);
}
public final int compareTo(Object object) {
float f = this.value;
float f2 = ((BNumber)object).getFloat();
if (f == f2) {
return 0;
}
if (Float.isNaN(f) && Float.isNaN(f2)) {
return 0;
}
if (f < f2) {
return -1;
}
return 1;
}
public final String toString(Context context) {
return BFloat.toString(this.value, context);
}
public final void encode(DataOutput dataOutput) throws IOException {
dataOutput.writeFloat(this.value);
}
public final BObject decode(DataInput dataInput) throws IOException {
return BFloat.make(dataInput.readFloat());
}
public final String encodeToString() throws IOException {
return BFloat.encode(this.value);
}
public final BObject decodeFromString(String string) throws IOException {
try {
return BFloat.make(string);
}
catch (RuntimeException runtimeException) {
throw new IOException("Invalid float: " + string);
}
}
public static final String encode(float f) {
if (f == Float.POSITIVE_INFINITY) {
return "+inf";
}
if (f == Float.NEGATIVE_INFINITY) {
return "-inf";
}
if (Float.isNaN(f)) {
return "nan";
}
return String.valueOf(f);
}
public static final float decode(String string) {
if (string.equals("+inf")) {
return Float.POSITIVE_INFINITY;
}
if (string.equals("-inf")) {
return Float.NEGATIVE_INFINITY;
}
if (string.equals("nan")) {
return Float.NaN;
}
return Float.parseFloat(string);
}
public static final String toString(float f, Context context) {
return BDouble.toString(f, context);
}
public final Type getType() {
return TYPE;
}
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 BFloat(float f) {
this.value = f;
}
static {
Class clazz = class$javax$baja$sys$BFloat;
if (clazz == null) {
clazz = class$javax$baja$sys$BFloat = BFloat.class("[Ljavax.baja.sys.BFloat;", false);
}
TYPE = Sys.loadType(clazz);
}
}
@@ -0,0 +1,113 @@
/*
* Decompiled with CFR 0.152.
*/
package javax.baja.sys;
import com.tridium.sys.schema.EnumType;
import java.io.DataInput;
import java.io.DataOutput;
import java.io.IOException;
import javax.baja.sys.BDynamicEnum;
import javax.baja.sys.BEnum;
import javax.baja.sys.BEnumRange;
import javax.baja.sys.BObject;
import javax.baja.sys.Context;
import javax.baja.sys.Sys;
import javax.baja.sys.Type;
/*
* Illegal identifiers - consider using --renameillegalidents true
*/
public abstract class BFrozenEnum
extends BEnum {
public static final Type TYPE;
private int ordinal;
BDynamicEnum asDynamic;
static /* synthetic */ Class class$javax$baja$sys$BFrozenEnum;
public boolean isActive() {
boolean bl = false;
if (this.ordinal != 0) {
bl = true;
}
return bl;
}
public final int getOrdinal() {
return this.ordinal;
}
public final String getTag() {
return ((EnumType)this.getType()).getTag(this.ordinal);
}
public String getDisplayTag(Context context) {
return ((EnumType)this.getType()).getDisplayTag(this.ordinal, context);
}
public final BEnumRange getRange() {
return ((EnumType)this.getType()).getRange(true);
}
public final int hashCode() {
return this.ordinal;
}
public final boolean equals(Object object) {
boolean bl = false;
if (this.getClass() == object.getClass() && this.ordinal == ((BFrozenEnum)object).ordinal) {
bl = true;
}
return bl;
}
public String toString(Context context) {
return this.getDisplayTag(context);
}
public final void encode(DataOutput dataOutput) throws IOException {
dataOutput.writeInt(this.ordinal);
}
public final BObject decode(DataInput dataInput) throws IOException {
return this.getRange().get(dataInput.readInt());
}
public final String encodeToString() throws IOException {
return this.getTag();
}
public final BObject decodeFromString(String string) throws IOException {
return this.getRange().get(string);
}
public Type getType() {
return TYPE;
}
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());
}
}
protected BFrozenEnum(int n) {
this.ordinal = n;
}
static {
Class clazz = class$javax$baja$sys$BFrozenEnum;
if (clazz == null) {
clazz = class$javax$baja$sys$BFrozenEnum = BFrozenEnum.class("[Ljavax.baja.sys.BFrozenEnum;", false);
}
TYPE = Sys.loadType(clazz);
}
}
@@ -0,0 +1,27 @@
/*
* Decompiled with CFR 0.152.
*/
package javax.baja.sys;
import javax.baja.sys.BFacets;
import javax.baja.sys.BIEnum;
import javax.baja.sys.Sys;
import javax.baja.sys.Type;
public interface BIBoolean
extends BIEnum {
public static final Type TYPE;
public boolean getBoolean();
public BFacets getBooleanFacets();
static {
Class clazz = 1.class$javax$baja$sys$BIBoolean;
if (clazz == null) {
clazz = 1.class$javax$baja$sys$BIBoolean = 1.class("[Ljavax.baja.sys.BIBoolean;", false);
}
TYPE = Sys.loadType(clazz);
}
}
@@ -0,0 +1,23 @@
/*
* Decompiled with CFR 0.152.
*/
package javax.baja.sys;
import javax.baja.sys.BInterface;
import javax.baja.sys.Sys;
import javax.baja.sys.Type;
public interface BIComparable
extends BInterface,
Comparable {
public static final Type TYPE;
static {
Class clazz = 1.class$javax$baja$sys$BIComparable;
if (clazz == null) {
clazz = 1.class$javax$baja$sys$BIComparable = 1.class("[Ljavax.baja.sys.BIComparable;", false);
}
TYPE = Sys.loadType(clazz);
}
}
@@ -0,0 +1,36 @@
/*
* Decompiled with CFR 0.152.
*/
package javax.baja.sys;
import javax.baja.sys.BInterface;
import javax.baja.sys.BMonth;
import javax.baja.sys.BWeekday;
import javax.baja.sys.Sys;
import javax.baja.sys.Type;
public interface BIDate
extends BInterface {
public static final Type TYPE;
public int getYear();
public BMonth getMonth();
public int getDay();
public BWeekday getWeekday();
public int getDayOfYear();
public boolean isLeapDay();
static {
Class clazz = 1.class$javax$baja$sys$BIDate;
if (clazz == null) {
clazz = 1.class$javax$baja$sys$BIDate = 1.class("[Ljavax.baja.sys.BIDate;", false);
}
TYPE = Sys.loadType(clazz);
}
}
@@ -0,0 +1,28 @@
/*
* Decompiled with CFR 0.152.
*/
package javax.baja.sys;
import javax.baja.sys.BEnum;
import javax.baja.sys.BFacets;
import javax.baja.sys.BInterface;
import javax.baja.sys.Sys;
import javax.baja.sys.Type;
public interface BIEnum
extends BInterface {
public static final Type TYPE;
public BEnum getEnum();
public BFacets getEnumFacets();
static {
Class clazz = 1.class$javax$baja$sys$BIEnum;
if (clazz == null) {
clazz = 1.class$javax$baja$sys$BIEnum = 1.class("[Ljavax.baja.sys.BIEnum;", false);
}
TYPE = Sys.loadType(clazz);
}
}
@@ -0,0 +1,25 @@
/*
* Decompiled with CFR 0.152.
*/
package javax.baja.sys;
import javax.baja.agent.BIAgent;
import javax.baja.sys.Context;
import javax.baja.sys.Sys;
import javax.baja.sys.Type;
public interface BIMixIn
extends BIAgent {
public static final Type TYPE;
public String getDisplayNameInParent(Context var1);
static {
Class clazz = 1.class$javax$baja$sys$BIMixIn;
if (clazz == null) {
clazz = 1.class$javax$baja$sys$BIMixIn = 1.class("[Ljavax.baja.sys.BIMixIn;", false);
}
TYPE = Sys.loadType(clazz);
}
}
@@ -0,0 +1,27 @@
/*
* Decompiled with CFR 0.152.
*/
package javax.baja.sys;
import javax.baja.sys.BFacets;
import javax.baja.sys.BInterface;
import javax.baja.sys.Sys;
import javax.baja.sys.Type;
public interface BINumeric
extends BInterface {
public static final Type TYPE;
public double getNumeric();
public BFacets getNumericFacets();
static {
Class clazz = 1.class$javax$baja$sys$BINumeric;
if (clazz == null) {
clazz = 1.class$javax$baja$sys$BINumeric = 1.class("[Ljavax.baja.sys.BINumeric;", false);
}
TYPE = Sys.loadType(clazz);
}
}
@@ -0,0 +1,93 @@
/*
* Decompiled with CFR 0.152.
*/
package javax.baja.sys;
import javax.baja.sys.BComplex;
import javax.baja.sys.BFacets;
import javax.baja.sys.BInterface;
import javax.baja.sys.BValue;
import javax.baja.sys.Context;
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;
public interface BIPropertyContainer
extends BInterface {
public static final Type TYPE;
public String getDisplayName(Context var1);
public String getDisplayName(Slot var1, Context var2);
public BFacets getSlotFacets(Slot var1);
public String propertyValueToString(Property var1, Context var2);
public Slot getSlot(String var1);
public Property getProperty(String var1);
public int getSlotCount();
public int getSlotCount(Class var1);
public Slot[] getSlotsArray();
public SlotCursor getSlots();
public Property[] getPropertiesArray();
public Property[] getFrozenPropertiesArray();
public Property[] getDynamicPropertiesArray();
public SlotCursor getProperties();
public BComplex loadSlots();
public void lease();
public void lease(int var1, long var2);
public BValue get(Property var1);
public BValue get(String var1);
public void set(Property var1, BValue var2, Context var3);
public void set(String var1, BValue var2);
public int getFlags(Slot var1);
public void setFlags(Slot var1, int var2, Context var3);
public Property add(String var1, BValue var2, int var3, BFacets var4, Context var5);
public void remove(String var1, Context var2);
public void remove(Property var1, Context var2);
public void removeAll(Context var1);
public void rename(Property var1, String var2, Context var3);
public void setFacets(Slot var1, BFacets var2, Context var3);
public void reorder(Property[] var1, Context var2);
public void reorderToTop(Property var1, Context var2);
public void reorderToBottom(Property var1, Context var2);
static {
Class clazz = 1.class$javax$baja$sys$BIPropertyContainer;
if (clazz == null) {
clazz = 1.class$javax$baja$sys$BIPropertyContainer = 1.class("[Ljavax.baja.sys.BIPropertyContainer;", false);
}
TYPE = Sys.loadType(clazz);
}
}
@@ -0,0 +1,40 @@
/*
* Decompiled with CFR 0.152.
*/
package javax.baja.sys;
import javax.baja.naming.BOrd;
import javax.baja.sys.BInterface;
import javax.baja.sys.BValue;
import javax.baja.sys.Context;
import javax.baja.sys.Cursor;
import javax.baja.sys.Sys;
import javax.baja.sys.Type;
public interface BIPropertySpace
extends BInterface {
public static final Type TYPE;
public Cursor findObjects(Type var1, BOrd var2, String var3, Context var4);
public Cursor findObjects(Type var1, BOrd var2, String var3, Type var4, Context var5);
public Cursor findObjects(Type var1, BOrd var2, String var3, BValue var4, Context var5);
public Cursor findDistinctValues(Type var1, BOrd var2, String var3, Context var4);
public Cursor findDistinctValues(Type var1, BOrd var2, String var3, Type var4, Context var5);
public boolean addIndex(String var1, Context var2);
public void removeIndex(String var1, Context var2);
static {
Class clazz = 1.class$javax$baja$sys$BIPropertySpace;
if (clazz == null) {
clazz = 1.class$javax$baja$sys$BIPropertySpace = 1.class("[Ljavax.baja.sys.BIPropertySpace;", false);
}
TYPE = Sys.loadType(clazz);
}
}
@@ -0,0 +1,28 @@
/*
* Decompiled with CFR 0.152.
*/
package javax.baja.sys;
import javax.baja.sys.BInterface;
import javax.baja.sys.Sys;
import javax.baja.sys.Type;
public interface BIService
extends BInterface {
public static final Type TYPE;
public Type[] getServiceTypes();
public void serviceStarted() throws Exception;
public void serviceStopped() throws Exception;
static {
Class clazz = 1.class$javax$baja$sys$BIService;
if (clazz == null) {
clazz = 1.class$javax$baja$sys$BIService = 1.class("[Ljavax.baja.sys.BIService;", false);
}
TYPE = Sys.loadType(clazz);
}
}
@@ -0,0 +1,32 @@
/*
* Decompiled with CFR 0.152.
*/
package javax.baja.sys;
import javax.baja.sys.BInterface;
import javax.baja.sys.Sys;
import javax.baja.sys.Type;
public interface BITime
extends BInterface {
public static final Type TYPE;
public int getHour();
public int getMinute();
public int getSecond();
public int getMillisecond();
public long getTimeOfDayMillis();
static {
Class clazz = 1.class$javax$baja$sys$BITime;
if (clazz == null) {
clazz = 1.class$javax$baja$sys$BITime = 1.class("[Ljavax.baja.sys.BITime;", false);
}
TYPE = Sys.loadType(clazz);
}
}
@@ -0,0 +1,148 @@
/*
* Decompiled with CFR 0.152.
*/
package javax.baja.sys;
import java.io.DataInput;
import java.io.DataOutput;
import java.io.IOException;
import java.util.HashMap;
import javax.baja.naming.BOrd;
import javax.baja.naming.BOrdList;
import javax.baja.sys.BObject;
import javax.baja.sys.BSimple;
import javax.baja.sys.Context;
import javax.baja.sys.Sys;
import javax.baja.sys.Type;
/*
* Illegal identifiers - consider using --renameillegalidents true
*/
public final class BIcon
extends BSimple {
public static final BIcon DEFAULT = new BIcon(BOrdList.NULL);
public static final Type TYPE;
private static HashMap cache;
private BOrdList ordList;
Object image;
static /* synthetic */ Class class$javax$baja$sys$BIcon;
public static final BIcon make(String string) {
return BIcon.make(BOrdList.make(string));
}
public static final BIcon make(BOrd bOrd) {
return BIcon.make(BOrdList.make(bOrd));
}
public static final BIcon make(BOrdList bOrdList) {
BIcon bIcon = (BIcon)cache.get(bOrdList.encodeToString());
if (bIcon == null) {
bIcon = new BIcon(bOrdList);
cache.put(bOrdList.encodeToString(), bIcon);
}
return bIcon;
}
public static final BIcon std(String string) {
return BIcon.make("module://icons/x16/" + string);
}
public static final BIcon make(BIcon bIcon, BIcon bIcon2) {
BOrdList bOrdList = bIcon.ordList;
BOrdList bOrdList2 = bIcon2.ordList;
int n = bOrdList.size();
int n2 = bOrdList2.size();
BOrd[] bOrdArray = new BOrd[n + n2];
int n3 = 0;
while (n3 < n) {
bOrdArray[n3] = bOrdList.get(n3);
++n3;
}
n3 = 0;
while (n3 < n2) {
bOrdArray[n3 + n] = bOrdList2.get(n3);
++n3;
}
return BIcon.make(BOrdList.make(bOrdArray));
}
public final BOrdList getOrdList() {
return this.ordList;
}
public final String toString(Context context) {
return this.ordList.toString(context);
}
public final int hashCode() {
return this.ordList.hashCode();
}
public final boolean equals(Object object) {
if (object instanceof BIcon) {
return this.ordList.equals(((BIcon)object).ordList);
}
return false;
}
public final void encode(DataOutput dataOutput) throws IOException {
dataOutput.writeUTF(this.ordList.encodeToString());
}
public final BObject decode(DataInput dataInput) throws IOException {
return BIcon.make(dataInput.readUTF());
}
public final String encodeToString() throws IOException {
return this.ordList.encodeToString();
}
public final BObject decodeFromString(String string) throws IOException {
return BIcon.make(string);
}
public final Object fw(int n, Object object, Object object2, Object object3, Object object4) {
switch (n) {
case 203: {
return this.image;
}
case 204: {
this.image = object;
return null;
}
}
return super.fw(n, object, object2, object3, object4);
}
public final Type getType() {
return TYPE;
}
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 BIcon(BOrdList bOrdList) {
this.ordList = bOrdList;
}
static {
Class clazz = class$javax$baja$sys$BIcon;
if (clazz == null) {
clazz = class$javax$baja$sys$BIcon = BIcon.class("[Ljavax.baja.sys.BIcon;", false);
}
TYPE = Sys.loadType(clazz);
cache = new HashMap();
}
}
@@ -0,0 +1,227 @@
/*
* Decompiled with CFR 0.152.
*/
package javax.baja.sys;
import com.tridium.sys.Nre;
import java.io.DataInput;
import java.io.DataOutput;
import java.io.IOException;
import java.text.DecimalFormat;
import javax.baja.sys.BNumber;
import javax.baja.sys.BObject;
import javax.baja.sys.Context;
import javax.baja.sys.Sys;
import javax.baja.sys.Type;
import javax.baja.units.BUnit;
import javax.baja.units.BUnitConversion;
/*
* Illegal identifiers - consider using --renameillegalidents true
*/
public final class BInteger
extends BNumber {
private static final BInteger ZERO = new BInteger(0);
private static final BInteger ONE = new BInteger(1);
private static final BInteger TWO = new BInteger(2);
private static final BInteger THREE = new BInteger(3);
private static final BInteger FOUR = new BInteger(4);
private static final BInteger FIVE = new BInteger(5);
public static final BInteger MIN = new BInteger(Integer.MIN_VALUE);
public static final BInteger MAX = new BInteger(Integer.MAX_VALUE);
public static final BInteger DEFAULT = ZERO;
public static final Type TYPE;
private static final DecimalFormat format;
private int value;
static /* synthetic */ Class class$javax$baja$sys$BInteger;
public static final BInteger make(int n) {
switch (n) {
case 0: {
return ZERO;
}
case 1: {
return ONE;
}
case 2: {
return TWO;
}
case 3: {
return THREE;
}
case 4: {
return FOUR;
}
case 5: {
return FIVE;
}
case -2147483648: {
return MIN;
}
case 0x7FFFFFFF: {
return MAX;
}
}
return new BInteger(n);
}
public static final BInteger make(String string) {
return BInteger.make(BInteger.decode(string));
}
public final int getInt() {
return this.value;
}
public final long getLong() {
return this.value;
}
public final float getFloat() {
return this.value;
}
public final double getDouble() {
return this.value;
}
public final int hashCode() {
return this.value;
}
public final boolean equals(Object object) {
if (object instanceof BInteger) {
boolean bl = false;
if (((BInteger)object).value == this.value) {
bl = true;
}
return bl;
}
return false;
}
public final int compareTo(Object object) {
int n = this.value;
int n2 = ((BNumber)object).getInt();
if (n == n2) {
return 0;
}
if (n < n2) {
return -1;
}
return 1;
}
public final String toString(Context context) {
return BInteger.toString(this.value, context);
}
public final void encode(DataOutput dataOutput) throws IOException {
dataOutput.writeInt(this.value);
}
public final BObject decode(DataInput dataInput) throws IOException {
return BInteger.make(dataInput.readInt());
}
public final String encodeToString() throws IOException {
return BInteger.encode(this.value);
}
public final BObject decodeFromString(String string) throws IOException {
try {
return BInteger.make(string);
}
catch (RuntimeException runtimeException) {
throw new IOException("Invalid integer: " + string);
}
}
public static final int decode(String string) {
if (string.equals("min")) {
return Integer.MIN_VALUE;
}
if (string.equals("max")) {
return Integer.MAX_VALUE;
}
return Integer.parseInt(string);
}
public static final String encode(int n) {
if (n == Integer.MIN_VALUE) {
return "min";
}
if (n == Integer.MAX_VALUE) {
return "max";
}
return String.valueOf(n);
}
public static final String toString(int n, Context context) {
BUnit bUnit;
Object object;
int n2 = 10;
BUnit bUnit2 = null;
int n3 = Nre.unitConversion;
boolean bl = true;
boolean bl2 = false;
boolean bl3 = false;
if (context != null) {
object = (BNumber)context.getFacet("radix");
if (object != null) {
n2 = ((BNumber)object).getInt();
}
if ((bUnit2 = (BUnit)context.getFacet("units")) != null && bUnit2.isNull()) {
bUnit2 = null;
}
n3 = context.getFacets().geti("unitConversion", n3);
bl = context.getFacets().getb("showUnits", bl);
bl2 = context.getFacets().getb("showSeparators", bl2);
bl3 = context.getFacets().getb("forceSign", bl3);
}
if (n3 != 0 && bUnit2 != null && (bUnit = ((BUnitConversion)(object = BUnitConversion.make(n3))).getDesiredUnit(bUnit2)) != bUnit2) {
n = (int)bUnit2.convertTo(bUnit, n);
bUnit2 = bUnit;
}
Object object2 = object = bl3 && n > 0 ? "+" : "";
if (bl && bUnit2 != null && bUnit2.getIsPrefix()) {
object = (String)object + bUnit2.getSymbol() + ' ';
}
object = n == Integer.MIN_VALUE ? "min" : (n == Integer.MAX_VALUE ? "max" : (n2 == 2 ? Integer.toBinaryString(n) : (n2 == 8 ? Integer.toOctalString(n) : (n2 == 16 ? Integer.toHexString(n) : (n2 != 10 ? Integer.toString(n, n2) : (bl2 ? (String)object + format.format(n) : (String)object + Integer.toString(n)))))));
if (bl && bUnit2 != null && !bUnit2.getIsPrefix()) {
object = (String)object + ' ' + bUnit2.getSymbol();
}
return object;
}
public final Type getType() {
return TYPE;
}
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 BInteger(int n) {
this.value = n;
}
static {
Class clazz = class$javax$baja$sys$BInteger;
if (clazz == null) {
clazz = class$javax$baja$sys$BInteger = BInteger.class("[Ljavax.baja.sys.BInteger;", false);
}
TYPE = Sys.loadType(clazz);
format = new DecimalFormat("#,##0");
}
}
@@ -0,0 +1,30 @@
/*
* Decompiled with CFR 0.152.
*/
package javax.baja.sys;
import javax.baja.sys.BObject;
import javax.baja.sys.Context;
import javax.baja.sys.Sys;
import javax.baja.sys.Type;
public interface BInterface {
public static final Type TYPE;
public BObject asObject();
public String toString(Context var1);
public boolean equivalent(Object var1);
public Type getType();
static {
Class clazz = 1.class$javax$baja$sys$BInterface;
if (clazz == null) {
clazz = 1.class$javax$baja$sys$BInterface = 1.class("[Ljavax.baja.sys.BInterface;", false);
}
TYPE = Sys.loadType(clazz);
}
}
@@ -0,0 +1,574 @@
/*
* Decompiled with CFR 0.152.
*/
package javax.baja.sys;
import com.tridium.dataRecovery.BDataRecoveryComponentRecorder;
import com.tridium.sys.metrics.Metrics;
import com.tridium.sys.schema.ComponentSlotMap;
import javax.baja.log.Log;
import javax.baja.naming.BOrd;
import javax.baja.naming.SlotPath;
import javax.baja.naming.UnresolvedException;
import javax.baja.security.BPassword;
import javax.baja.security.BPermissionsMap;
import javax.baja.sys.Action;
import javax.baja.sys.BComponent;
import javax.baja.sys.BFacets;
import javax.baja.sys.BIcon;
import javax.baja.sys.BObject;
import javax.baja.sys.BStruct;
import javax.baja.sys.BValue;
import javax.baja.sys.BajaRuntimeException;
import javax.baja.sys.Context;
import javax.baja.sys.Knob;
import javax.baja.sys.Property;
import javax.baja.sys.Slot;
import javax.baja.sys.SlotCursor;
import javax.baja.sys.Sys;
import javax.baja.sys.Topic;
import javax.baja.sys.Type;
/*
* Illegal identifiers - consider using --renameillegalidents true
*/
public class BLink
extends BStruct {
public static final Property sourceOrd = BLink.newProperty(0, BOrd.NULL, BFacets.make("targetType", "baja:Component"));
public static final Property sourceSlotName = BLink.newProperty(0, "");
public static final Property targetSlotName = BLink.newProperty(0, "");
public static final Property enabled = BLink.newProperty(0, true);
private static final BIcon icon = BIcon.std("link.png");
public static final Type TYPE;
private static final Log log;
private static final Context SKIP_CRITICAL_CX;
private BComponent direct;
private BComponent indirect;
private Slot sourceSlot;
private Slot targetSlot;
private boolean active;
private Knob knob;
private boolean fatalFault;
static /* synthetic */ Class class$javax$baja$sys$BLink;
public final BOrd getSourceOrd() {
return (BOrd)this.get(sourceOrd);
}
public final void setSourceOrd(BOrd bOrd) {
this.set(sourceOrd, (BValue)bOrd, null);
}
public final String getSourceSlotName() {
return this.getString(sourceSlotName);
}
public final void setSourceSlotName(String string) {
this.setString(sourceSlotName, string, null);
}
public final String getTargetSlotName() {
return this.getString(targetSlotName);
}
public final void setTargetSlotName(String string) {
this.setString(targetSlotName, string, null);
}
public final boolean isEnabled() {
return this.getBoolean(enabled);
}
public final boolean getEnabled() {
return this.getBoolean(enabled);
}
public final void setEnabled(boolean bl) {
this.setBoolean(enabled, bl, null);
}
public final boolean isDirect() {
boolean bl = false;
if (this.direct != null) {
bl = true;
}
return bl;
}
public final boolean isIndirect() {
boolean bl = false;
if (this.direct == null) {
bl = true;
}
return bl;
}
public final BComponent getSourceComponent() {
if (this.direct != null) {
return this.direct;
}
if (!this.active) {
throw new UnresolvedException();
}
return this.indirect;
}
public final Slot getSourceSlot() {
if (this.direct != null) {
return this.sourceSlot;
}
if (!this.active) {
throw new UnresolvedException();
}
return this.sourceSlot;
}
public final BComponent getTargetComponent() {
return (BComponent)this.getParent();
}
public final Slot getTargetSlot() {
if (this.direct != null) {
return this.targetSlot;
}
if (!this.active) {
throw new UnresolvedException();
}
return this.targetSlot;
}
public final boolean isActive() {
return this.active;
}
/*
* WARNING - Removed back jump from a try to a catch block - possible behaviour change.
* Unable to fully structure code
* Enabled aggressive block sorting
* Enabled unnecessary exception pruning
* Enabled aggressive exception aggregation
*/
public final void activate() {
block15: {
block14: {
if (BLink.runningInStation() && !Metrics.incrementLink()) {
this.fatalFault = true;
BLink.log.error("Exceeded link limit for globalCapacity");
}
if (this.active) {
return;
}
var1_1 = (BComponent)this.getParent();
if (var1_1 == null) {
throw new IllegalStateException("not mounted in component");
}
var2_2 = this.isDirect() != false ? this.direct : this.resolve();
var3_3 = var1_1.getSlot(this.getTargetSlotName());
if (var3_3 != null && var3_3.isProperty() && ((var4_4 = var3_3.asProperty()).getType().is(BPassword.TYPE) || var4_4.getType().is(BPermissionsMap.TYPE))) {
BLink.log.warning("Link target can not be a BPassword or BPermissionsMap");
if (this.getParent().isComponent() == false) return;
this.getParent().asComponent().remove(this.getPropertyInParent());
return;
}
var4_4 = var2_2.getSlot(this.getSourceSlotName());
if (var4_4 != null && var4_4.isProperty() && ((var5_5 = var4_4.asProperty()).getType().is(BPassword.TYPE) || var5_5.getType().is(BPermissionsMap.TYPE))) {
BLink.log.warning("Link source can not be a BPassword or BPermissionsMap");
if (this.getParent().isComponent() == false) return;
this.getParent().asComponent().remove(this.getPropertyInParent());
return;
}
try {
try {
this.active = true;
this.knob = ((ComponentSlotMap)var2_2.getSlotMap()).installKnob(this);
}
catch (RuntimeException var8_7) {
this.active = false;
throw var8_7;
}
}
catch (Throwable var5_6) {
var6_8 = null;
if (!this.active) {
this.recomputeSlotFlags(var1_1, var3_3);
throw var5_6;
}
try {
var1_1.setFlags(var3_3, var1_1.getFlags(var3_3) | 32768, BLink.SKIP_CRITICAL_CX);
throw var5_6;
}
catch (Exception var7_10) {
var7_10.printStackTrace();
throw var5_6;
}
}
{
var6_9 = null;
if (!this.active) break block14;
}
** try [egrp 2[TRYBLOCK] [2 : 326->345)] {
lbl45:
// 1 sources
var1_1.setFlags(var3_3, var1_1.getFlags(var3_3) | 32768, BLink.SKIP_CRITICAL_CX);
lbl47:
// 1 sources
catch (Exception var7_11) {
var7_11.printStackTrace();
}
break block15;
}
this.recomputeSlotFlags(var1_1, var3_3);
}
if (var4_4.isProperty() == false) return;
if (var3_3.isProperty() == false) return;
this.propagate(null);
}
/*
* WARNING - Removed back jump from a try to a catch block - possible behaviour change.
* Enabled aggressive block sorting
* Enabled unnecessary exception pruning
* Enabled aggressive exception aggregation
*/
public final void deactivate() {
if (!this.active) {
return;
}
BComponent bComponent = null;
Slot slot = null;
try {
try {
slot = this.getTargetSlot();
}
catch (Exception exception) {}
if (this.active) {
((ComponentSlotMap)this.getSourceComponent().getSlotMap()).uninstallKnob(this);
bComponent = this.getTargetComponent();
((ComponentSlotMap)bComponent.getSlotMap()).deactivating(this);
}
}
catch (Throwable throwable) {
Object var4_4 = null;
this.active = false;
this.knob = null;
if (this.indirect != null) {
this.indirect = null;
this.sourceSlot = null;
this.targetSlot = null;
}
this.recomputeSlotFlags(bComponent, slot);
throw throwable;
}
{
Object var4_5 = null;
this.active = false;
this.knob = null;
if (this.indirect != null) {
this.indirect = null;
this.sourceSlot = null;
this.targetSlot = null;
}
this.recomputeSlotFlags(bComponent, slot);
return;
}
}
private final void recomputeSlotFlags(BComponent bComponent, Slot slot) {
if (bComponent == null) {
return;
}
try {
if (slot != null) {
this.computeLinkTargetFlag(bComponent, slot);
} else {
SlotCursor slotCursor = bComponent.getSlots();
while (slotCursor.nextObject()) {
this.computeLinkTargetFlag(bComponent, slotCursor.slot());
}
}
}
catch (Throwable throwable) {
throwable.printStackTrace();
}
}
private final void computeLinkTargetFlag(BComponent bComponent, Slot slot) {
try {
int n = bComponent.getFlags(slot);
BLink[] bLinkArray = bComponent.getLinks(slot);
int n2 = 0;
if (bLinkArray != null) {
n2 = bLinkArray.length;
}
int n3 = n2;
boolean bl = false;
int n4 = 0;
while (n4 < n3) {
if (bLinkArray[n4].isActive()) {
bl = true;
break;
}
++n4;
}
if (bl) {
bComponent.setFlags(slot, n | 0x8000, SKIP_CRITICAL_CX);
} else {
bComponent.setFlags(slot, n & 0xFFFF7FFF, SKIP_CRITICAL_CX);
}
}
catch (Throwable throwable) {
throwable.printStackTrace();
}
}
public Knob getKnob() {
if (!this.active) {
throw new UnresolvedException();
}
return this.knob;
}
private final BComponent resolve() {
this.indirect = null;
try {
BObject bObject = this.getSourceOrd().resolve(this.getParentComponent()).get();
if (!(bObject instanceof BComponent)) {
throw new BajaRuntimeException("Source ord must resolve to a component");
}
this.indirect = (BComponent)bObject;
}
catch (UnresolvedException unresolvedException) {
throw new UnresolvedException("Cannot resolve source component");
}
this.sourceSlot = this.indirect.getSlot(this.getSourceSlotName());
if (this.sourceSlot == null) {
throw new UnresolvedException("Source slot does not exist");
}
this.targetSlot = this.getParent().getSlot(this.getTargetSlotName());
if (this.targetSlot == null) {
throw new UnresolvedException("Target slot does not exist");
}
return this.indirect;
}
public String toString(Context context) {
Object object;
String string = "null";
BComponent bComponent = this.getTargetComponent();
if (bComponent != null) {
object = bComponent.getSlotPath();
string = object == null ? bComponent.toString() : ((SlotPath)object).toString();
}
object = this.direct != null ? "Direct: " + this.direct.toDebugString() : "Indirect: " + this.getSourceOrd();
return (String)object + '.' + this.getSourceSlotName() + " -> " + string + '.' + this.getTargetSlotName();
}
public void propagate(BValue bValue) {
if (this.fatalFault) {
return;
}
if (this.getTargetComponent() == this.getSourceComponent() && this.getTargetSlot() == this.getSourceSlot()) {
System.out.println("WARNING: Infinite link: " + this);
return;
}
if (this.sourceSlot.isAction()) {
if (this.targetSlot.isAction()) {
this.propagateActionToAction(bValue);
return;
}
if (this.targetSlot.isTopic()) {
this.propagateActionToTopic(bValue);
return;
}
} else if (this.sourceSlot.isTopic()) {
if (this.targetSlot.isAction()) {
this.propagateTopicToAction(bValue);
return;
}
if (this.targetSlot.isTopic()) {
this.propagateTopicToTopic(bValue);
return;
}
} else if (this.sourceSlot.isProperty()) {
if (this.targetSlot.isAction()) {
this.propagatePropertyToAction();
return;
}
if (this.targetSlot.isProperty()) {
this.propagatePropertyToProperty();
return;
}
}
throw new IllegalStateException("Invalid link config");
}
public void propagatePropertyToAction() {
if (this.fatalFault) {
return;
}
Action action = this.getTargetSlot().asAction();
BValue bValue = null;
if (action.getParameterType() != null) {
bValue = this.getSourceComponent().get(this.getSourceSlot().asProperty());
}
this.getTargetComponent().invoke(action, bValue);
}
public void propagatePropertyToProperty() {
if (this.fatalFault) {
return;
}
BComponent bComponent = this.getSourceComponent();
BComponent bComponent2 = this.getTargetComponent();
Property property = this.sourceSlot.asProperty();
Property property2 = this.targetSlot.asProperty();
switch (property.getTypeAccess()) {
case 0: {
bComponent2.setBoolean(property2, bComponent.getBoolean(property), null);
break;
}
case 2: {
bComponent2.setInt(property2, bComponent.getInt(property), null);
break;
}
case 3: {
bComponent2.setLong(property2, bComponent.getLong(property), null);
break;
}
case 4: {
bComponent2.setFloat(property2, bComponent.getFloat(property), null);
break;
}
case 5: {
bComponent2.setDouble(property2, bComponent.getDouble(property), null);
break;
}
case 6: {
bComponent2.setString(property2, bComponent.getString(property), null);
break;
}
case 7: {
BValue bValue = bComponent.get(property);
if (bValue.isSimple()) {
bComponent2.set(property2, bValue, null);
break;
}
bComponent2.get(property2).asComplex().copyFrom(bValue.asComplex());
break;
}
default: {
throw new IllegalStateException();
}
}
}
public void propagateActionToAction(BValue bValue) {
if (this.fatalFault) {
return;
}
Action action = this.getTargetSlot().asAction();
this.getTargetComponent().invoke(action, bValue);
}
public void propagateActionToTopic(BValue bValue) {
if (this.fatalFault) {
return;
}
Topic topic = this.getTargetSlot().asTopic();
this.getTargetComponent().fire(topic, bValue);
}
public void propagateTopicToAction(BValue bValue) {
if (this.fatalFault) {
return;
}
Action action = this.getTargetSlot().asAction();
BValue bValue2 = null;
if (action.getParameterType() != null) {
bValue2 = bValue;
}
this.getTargetComponent().invoke(action, bValue2);
}
public void propagateTopicToTopic(BValue bValue) {
if (this.fatalFault) {
return;
}
Topic topic = this.getTargetSlot().asTopic();
this.getTargetComponent().fire(topic, bValue);
}
public boolean isFatalFault() {
return this.fatalFault;
}
private static final boolean runningInStation() {
boolean bl = false;
if (Sys.getStation() != null) {
bl = true;
}
return bl;
}
public BIcon getIcon() {
return icon;
}
public Type getType() {
return TYPE;
}
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.fatalFault = false;
}
public BLink(BOrd bOrd, String string, String string2, boolean bl) {
this.this();
this.setSourceOrd(bOrd);
this.setSourceSlotName(string);
this.setTargetSlotName(string2);
this.setEnabled(bl);
}
public BLink(BComponent bComponent, Slot slot, Slot slot2) {
this.this();
if (bComponent.getSlot(slot.getName()) == null) {
log.warning("No Such Slot: " + bComponent.getType() + '.' + slot.getName());
}
this.direct = bComponent;
this.setSourceSlotName(slot.getName());
this.setTargetSlotName(slot2.getName());
this.sourceSlot = slot;
this.targetSlot = slot2;
}
public BLink() {
this.this();
}
static {
Class clazz = class$javax$baja$sys$BLink;
if (clazz == null) {
clazz = class$javax$baja$sys$BLink = BLink.class("[Ljavax.baja.sys.BLink;", false);
}
TYPE = Sys.loadType(clazz);
log = Log.getLog("sys.link");
SKIP_CRITICAL_CX = BDataRecoveryComponentRecorder.SKIP_CRITICAL_CX;
}
}
@@ -0,0 +1,202 @@
/*
* Decompiled with CFR 0.152.
*/
package javax.baja.sys;
import com.tridium.sys.Nre;
import java.io.DataInput;
import java.io.DataOutput;
import java.io.IOException;
import java.text.DecimalFormat;
import javax.baja.sys.BNumber;
import javax.baja.sys.BObject;
import javax.baja.sys.Context;
import javax.baja.sys.Sys;
import javax.baja.sys.Type;
import javax.baja.units.BUnit;
import javax.baja.units.BUnitConversion;
/*
* Illegal identifiers - consider using --renameillegalidents true
*/
public final class BLong
extends BNumber {
private static final BLong ZERO = new BLong(0L);
public static final BLong MIN = new BLong(Long.MIN_VALUE);
public static final BLong MAX = new BLong(Long.MAX_VALUE);
public static final BLong DEFAULT = ZERO;
public static final Type TYPE;
private static final DecimalFormat format;
private long value;
static /* synthetic */ Class class$javax$baja$sys$BLong;
public static final BLong make(long l) {
if (l == 0L) {
return ZERO;
}
if (l == Long.MIN_VALUE) {
return MIN;
}
if (l == Long.MAX_VALUE) {
return MAX;
}
return new BLong(l);
}
public static final BLong make(String string) {
return BLong.make(BLong.decode(string));
}
public final long getLong() {
return this.value;
}
public final int getInt() {
return (int)this.value;
}
public final float getFloat() {
return this.value;
}
public final double getDouble() {
return this.value;
}
public final int hashCode() {
return (int)(this.value ^ this.value >>> 32);
}
public final boolean equals(Object object) {
if (object instanceof BLong) {
boolean bl = false;
if (((BLong)object).value == this.value) {
bl = true;
}
return bl;
}
return false;
}
public final int compareTo(Object object) {
long l = this.value;
long l2 = ((BNumber)object).getLong();
if (l == l2) {
return 0;
}
if (l < l2) {
return -1;
}
return 1;
}
public final String toString(Context context) {
return BLong.toString(this.value, context);
}
public final void encode(DataOutput dataOutput) throws IOException {
dataOutput.writeLong(this.value);
}
public final BObject decode(DataInput dataInput) throws IOException {
return BLong.make(dataInput.readLong());
}
public final String encodeToString() throws IOException {
return BLong.encode(this.value);
}
public final BObject decodeFromString(String string) throws IOException {
try {
return BLong.make(string);
}
catch (RuntimeException runtimeException) {
throw new IOException("Invalid long: " + string);
}
}
public static final long decode(String string) {
if (string.equals("min")) {
return Long.MIN_VALUE;
}
if (string.equals("max")) {
return Long.MAX_VALUE;
}
return Long.parseLong(string);
}
public static final String encode(long l) {
if (l == Long.MIN_VALUE) {
return "min";
}
if (l == Long.MAX_VALUE) {
return "max";
}
return String.valueOf(l);
}
public static final String toString(long l, Context context) {
BUnit bUnit;
Object object;
int n = 10;
BUnit bUnit2 = null;
int n2 = Nre.unitConversion;
boolean bl = true;
boolean bl2 = false;
boolean bl3 = false;
if (context != null) {
object = (BNumber)context.getFacet("radix");
if (object != null) {
n = ((BNumber)object).getInt();
}
if ((bUnit2 = (BUnit)context.getFacet("units")) != null && bUnit2.isNull()) {
bUnit2 = null;
}
n2 = context.getFacets().geti("unitConversion", n2);
bl = context.getFacets().getb("showUnits", bl);
bl2 = context.getFacets().getb("showSeparators", bl2);
bl3 = context.getFacets().getb("forceSign", bl3);
}
if (n2 != 0 && bUnit2 != null && (bUnit = ((BUnitConversion)(object = BUnitConversion.make(n2))).getDesiredUnit(bUnit2)) != bUnit2) {
l = (long)bUnit2.convertTo(bUnit, l);
bUnit2 = bUnit;
}
Object object2 = object = bl3 && l > 0L ? "+" : "";
object = l == Long.MIN_VALUE ? "min" : (l == Long.MAX_VALUE ? "max" : (n == 2 ? Long.toBinaryString(l) : (n == 8 ? Long.toOctalString(l) : (n == 16 ? Long.toHexString(l) : (n != 10 ? Long.toString(l, n) : (bl2 ? (String)object + format.format(l) : (String)object + Long.toString(l)))))));
if (bl && bUnit2 != null) {
object = (String)object + ' ' + bUnit2.getSymbol();
}
return object;
}
public final Type getType() {
return TYPE;
}
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 BLong(long l) {
this.value = l;
}
static {
Class clazz = class$javax$baja$sys$BLong;
if (clazz == null) {
clazz = class$javax$baja$sys$BLong = BLong.class("[Ljavax.baja.sys.BLong;", false);
}
TYPE = Sys.loadType(clazz);
format = new DecimalFormat("#,##0");
}
}
@@ -0,0 +1,189 @@
/*
* Decompiled with CFR 0.152.
*/
package javax.baja.sys;
import com.tridium.sys.module.BModuleTypesContainer;
import com.tridium.sys.module.NModule;
import java.net.URL;
import javax.baja.file.BIFile;
import javax.baja.file.FilePath;
import javax.baja.file.zip.BZipSpace;
import javax.baja.naming.BHost;
import javax.baja.naming.BISession;
import javax.baja.naming.BOrd;
import javax.baja.nav.BINavNode;
import javax.baja.registry.ModuleInfo;
import javax.baja.sys.BIcon;
import javax.baja.sys.BModuleSpace;
import javax.baja.sys.Context;
import javax.baja.sys.ModuleIncompatibleException;
import javax.baja.sys.Sys;
import javax.baja.sys.Type;
import javax.baja.sys.TypeException;
import javax.baja.sys.TypeNotFoundException;
import javax.baja.util.Lexicon;
import javax.baja.util.Version;
/*
* Illegal identifiers - consider using --renameillegalidents true
*/
public final class BModule
extends BZipSpace {
public static final Type TYPE;
private static final BIcon icon;
private static final BIcon synthIcon;
private NModule module;
static /* synthetic */ Class class$javax$baja$sys$BModule;
public final Type getType() {
return TYPE;
}
public final BHost getHost() {
return BModuleSpace.INSTANCE.getHost();
}
public final BISession getSession() {
return BModuleSpace.INSTANCE.getSession();
}
protected final BOrd appendFilePathToOrd(BOrd bOrd, FilePath filePath) {
if (bOrd == null) {
return null;
}
if (bOrd.toString().length() == 0) {
return BOrd.make(filePath);
}
return BOrd.make(bOrd.toString() + filePath.getBody());
}
public final BINavNode getNavParent() {
return BModuleSpace.INSTANCE;
}
public final BINavNode getNavChild(String string) {
if (string.equalsIgnoreCase("types")) {
return BModuleTypesContainer.get(this);
}
return super.getNavChild(string);
}
public final BINavNode[] getNavChildren() {
BIFile[] bIFileArray = this.listFiles();
BINavNode[] bINavNodeArray = new BINavNode[bIFileArray.length + 1];
System.arraycopy(bIFileArray, 0, bINavNodeArray, 1, bIFileArray.length);
bINavNodeArray[0] = BModuleTypesContainer.get(this);
return bINavNodeArray;
}
public final String getModuleName() {
return this.module.getModuleName();
}
public final String getPreferredSymbol() {
return this.module.getPreferredSymbol();
}
public final Version getBajaVersion() {
return this.module.getBajaVersion();
}
public final String getVendor() {
return this.module.getVendor();
}
public final Version getVendorVersion() {
return this.module.getVendorVersion();
}
public final BModule checkBajaVersion(Version version) throws ModuleIncompatibleException {
this.module.checkBajaVersion(version);
return this;
}
public final BModule checkVendor(String string, Version version) throws ModuleIncompatibleException {
this.module.checkVendor(string, version);
return this;
}
public final String getDescription() {
return this.module.getDescription();
}
public final ModuleInfo getModuleInfo() {
return Sys.getRegistry().getModule(this.getModuleName());
}
public final Type getType(String string) throws TypeNotFoundException, TypeException {
return this.module.getType(string);
}
public final Class loadClass(String string) throws ClassNotFoundException {
return this.module.loadClass(string);
}
public final URL getResource(String string) {
return this.module.getResource(string);
}
public final Lexicon getLexicon() {
return this.module.getLexicon();
}
public final Lexicon getLexicon(String string) {
return this.module.getLexicon(string);
}
public final boolean isSynthetic() {
return this.module.isSynthetic();
}
public final boolean isTransient() {
return this.module.isTransient();
}
public final String toString(Context context) {
return "Module \"" + this.getModuleName() + "\" [" + this.getVendor() + ' ' + this.getVendorVersion() + "] " + this.module.getFile().length() / 1024L + "kb";
}
public final Object fw(int n, Object object, Object object2, Object object3, Object object4) {
if (n == 405) {
return this.module;
}
return super.fw(n, object, object2, object3, object4);
}
public final BIcon getIcon() {
return this.isSynthetic() ? synthIcon : 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());
}
}
public BModule(Object object) {
super(BOrd.make("module://" + ((NModule)object).getModuleName()), ((NModule)object).getZipFile());
this.module = (NModule)object;
}
static {
Class clazz = class$javax$baja$sys$BModule;
if (clazz == null) {
clazz = class$javax$baja$sys$BModule = BModule.class("[Ljavax.baja.sys.BModule;", false);
}
TYPE = Sys.loadType(clazz);
icon = BIcon.std("module.png");
synthIcon = BIcon.make(BIcon.std("syntheticModule.png"), BIcon.std("badges/beaker.png"));
}
}
@@ -0,0 +1,116 @@
/*
* Decompiled with CFR 0.152.
*/
package javax.baja.sys;
import com.tridium.sys.module.BModuleNavNode;
import javax.baja.naming.BLocalHost;
import javax.baja.naming.BOrd;
import javax.baja.nav.BINavNode;
import javax.baja.registry.ModuleInfo;
import javax.baja.space.BSpace;
import javax.baja.sys.BIcon;
import javax.baja.sys.Sys;
import javax.baja.sys.Type;
import javax.baja.util.LexiconText;
/*
* Illegal identifiers - consider using --renameillegalidents true
*/
public class BModuleSpace
extends BSpace {
public static final Type TYPE;
public static final BModuleSpace INSTANCE;
private static final BIcon icon;
private BOrd ordInSession;
private Object loadLock;
private boolean loaded;
static /* synthetic */ Class class$javax$baja$sys$BModuleSpace;
public Type getType() {
return TYPE;
}
public BOrd getOrdInSession() {
return this.ordInSession;
}
public boolean hasNavChildren() {
return true;
}
public BINavNode getNavChild(String string) {
this.lazyLoad();
return super.getNavChild(string);
}
public BINavNode[] getNavChildren() {
this.lazyLoad();
return super.getNavChildren();
}
/*
* WARNING - Removed try catching itself - possible behaviour change.
* Enabled aggressive block sorting
* Enabled unnecessary exception pruning
* Enabled aggressive exception aggregation
*/
public void lazyLoad() {
if (this.loaded) {
return;
}
Object object = this.loadLock;
synchronized (object) {
if (this.loaded) {
return;
}
this.loaded = true;
ModuleInfo[] moduleInfoArray = Sys.getRegistry().getModules();
int n = 0;
while (n < moduleInfoArray.length) {
this.addNavChild(new BModuleNavNode(moduleInfoArray[n]));
++n;
}
return;
}
}
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() {
this.ordInSession = BOrd.make("module:");
this.loadLock = new Object();
}
private BModuleSpace() {
super("modules", LexiconText.make("baja", "nav.modules"));
this.this();
}
static {
Class clazz = class$javax$baja$sys$BModuleSpace;
if (clazz == null) {
clazz = class$javax$baja$sys$BModuleSpace = BModuleSpace.class("[Ljavax.baja.sys.BModuleSpace;", false);
}
TYPE = Sys.loadType(clazz);
INSTANCE = new BModuleSpace();
BLocalHost.INSTANCE.addNavChild(INSTANCE);
icon = BIcon.std("modules.png");
}
}
@@ -0,0 +1,105 @@
/*
* Decompiled with CFR 0.152.
*/
package javax.baja.sys;
import javax.baja.sys.BFrozenEnum;
import javax.baja.sys.Context;
import javax.baja.sys.Sys;
import javax.baja.sys.Type;
import javax.baja.util.Lexicon;
/*
* Illegal identifiers - consider using --renameillegalidents true
*/
public final class BMonth
extends BFrozenEnum {
public static final int JANUARY = 0;
public static final int FEBRUARY = 1;
public static final int MARCH = 2;
public static final int APRIL = 3;
public static final int MAY = 4;
public static final int JUNE = 5;
public static final int JULY = 6;
public static final int AUGUST = 7;
public static final int SEPTEMBER = 8;
public static final int OCTOBER = 9;
public static final int NOVEMBER = 10;
public static final int DECEMBER = 11;
public static final BMonth january = new BMonth(0);
public static final BMonth february = new BMonth(1);
public static final BMonth march = new BMonth(2);
public static final BMonth april = new BMonth(3);
public static final BMonth may = new BMonth(4);
public static final BMonth june = new BMonth(5);
public static final BMonth july = new BMonth(6);
public static final BMonth august = new BMonth(7);
public static final BMonth september = new BMonth(8);
public static final BMonth october = new BMonth(9);
public static final BMonth november = new BMonth(10);
public static final BMonth december = new BMonth(11);
public static final Type TYPE;
public static final BMonth DEFAULT;
static /* synthetic */ Class class$javax$baja$sys$BMonth;
public final Type getType() {
return TYPE;
}
public static final BMonth make(int n) {
return (BMonth)january.getRange().get(n, false);
}
public static final BMonth make(String string) {
return (BMonth)january.getRange().get(string);
}
public final int getMonthOfYear() {
return this.getOrdinal() + 1;
}
public final String getShortDisplayTag(Context context) {
return Lexicon.make(Sys.getBajaModule(), context).getText(this.getTag() + ".short");
}
public final BMonth next() {
int n = this.getOrdinal();
n = (n + 1) % 12;
return BMonth.make(n);
}
public final BMonth previous() {
int n = this.getOrdinal();
if (--n == -1) {
n = 11;
}
return BMonth.make(n);
}
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 BMonth(int n) {
super(n);
}
static {
Class clazz = class$javax$baja$sys$BMonth;
if (clazz == null) {
clazz = class$javax$baja$sys$BMonth = BMonth.class("[Ljavax.baja.sys.BMonth;", false);
}
TYPE = Sys.loadType(clazz);
DEFAULT = january;
}
}
@@ -0,0 +1,73 @@
/*
* Decompiled with CFR 0.152.
*/
package javax.baja.sys;
import javax.baja.data.BIDataValue;
import javax.baja.sys.BFacets;
import javax.baja.sys.BIComparable;
import javax.baja.sys.BINumeric;
import javax.baja.sys.BSimple;
import javax.baja.sys.Sys;
import javax.baja.sys.Type;
/*
* Illegal identifiers - consider using --renameillegalidents true
*/
public abstract class BNumber
extends BSimple
implements BIComparable,
BINumeric,
BIDataValue {
public static final Type TYPE;
static /* synthetic */ Class class$javax$baja$sys$BNumber;
public abstract int getInt();
public abstract long getLong();
public abstract float getFloat();
public abstract double getDouble();
public final double getNumeric() {
return this.getDouble();
}
public final BFacets getNumericFacets() {
return BFacets.NULL;
}
public final BIDataValue toDataValue() {
return this;
}
public Type getType() {
return TYPE;
}
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());
}
}
BNumber() {
}
static {
Class clazz = class$javax$baja$sys$BNumber;
if (clazz == null) {
clazz = class$javax$baja$sys$BNumber = BNumber.class("[Ljavax.baja.sys.BNumber;", false);
}
TYPE = Sys.loadType(clazz);
}
}
@@ -0,0 +1,193 @@
/*
* Decompiled with CFR 0.152.
*/
package javax.baja.sys;
import javax.baja.agent.AgentList;
import javax.baja.data.BIDataValue;
import javax.baja.spy.SpyWriter;
import javax.baja.sys.BComplex;
import javax.baja.sys.BComponent;
import javax.baja.sys.BIcon;
import javax.baja.sys.BSimple;
import javax.baja.sys.BString;
import javax.baja.sys.BStruct;
import javax.baja.sys.BValue;
import javax.baja.sys.Context;
import javax.baja.sys.Sys;
import javax.baja.sys.Type;
import javax.baja.util.Lexicon;
/*
* Illegal identifiers - consider using --renameillegalidents true
*/
public abstract class BObject {
public static final Type TYPE;
private static final BIcon icon;
static /* synthetic */ Class class$javax$baja$sys$BObject;
public final boolean isValue() {
return this instanceof BValue;
}
public final boolean isSimple() {
return this instanceof BSimple;
}
public final boolean isComplex() {
return this instanceof BComplex;
}
public final boolean isStruct() {
return this instanceof BStruct;
}
public final boolean isComponent() {
return this instanceof BComponent;
}
public final BObject asObject() {
return this;
}
public final BValue asValue() {
return (BValue)this;
}
public final BSimple asSimple() {
return (BSimple)this;
}
public final BComplex asComplex() {
return (BComplex)this;
}
public final BStruct asStruct() {
return (BStruct)this;
}
public final BComponent asComponent() {
return (BComponent)this;
}
public boolean equals(Object object) {
boolean bl = false;
if (this == object) {
bl = true;
}
return bl;
}
public boolean equivalent(Object object) {
return this.equals(object);
}
public boolean isNull() {
return false;
}
public BIDataValue toDataValue() {
return BString.make(this.toString());
}
public final AgentList getAgents() {
return this.getAgents(null);
}
public AgentList getAgents(Context context) {
return Sys.getRegistry().getAgents(this.getType().getTypeInfo());
}
public Lexicon getLexicon() {
return this.getType().getModule().getLexicon();
}
public String getTypeDisplayName(Context context) {
return this.getType().getDisplayName(context);
}
public BIcon getIcon() {
return icon;
}
public final String toString() {
return this.toString(null);
}
public String toString(Context context) {
if (this.getType() != null) {
return this.getTypeDisplayName(context);
}
return this.getClass().getName();
}
public String toDebugString() {
StringBuffer stringBuffer = new StringBuffer();
if (this.getType() != null) {
stringBuffer.append(this.getType().toString());
} else {
stringBuffer.append(this.getClass().getName());
}
int n = System.identityHashCode(this);
stringBuffer.append(':').append(Integer.toString(n, 36));
if (this.isComponent()) {
stringBuffer.append('[');
BComponent bComponent = this.asComponent();
if (bComponent.getComponentSpace() != null) {
stringBuffer.append("h:").append(bComponent.getHandle()).append(" \"").append(bComponent.toPathString()).append('\"');
} else {
stringBuffer.append("unmounted");
}
stringBuffer.append(']');
}
return stringBuffer.toString();
}
public void spy(SpyWriter spyWriter) throws Exception {
spyWriter.startProps();
spyWriter.trTitle("Object", 2);
spyWriter.prop((Object)"type", this.getType());
spyWriter.prop((Object)"class", this.getClass().getName());
spyWriter.prop((Object)"toString", this.toString());
spyWriter.prop((Object)"toDebugString", this.toDebugString());
spyWriter.endProps();
}
public Type getType() {
return TYPE;
}
public final Object fw(int n) {
return this.fw(n, null, null, null, null);
}
public Object fw(int n, Object object, Object object2, Object object3, Object object4) {
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());
}
}
protected BObject() {
}
static {
Class clazz = class$javax$baja$sys$BObject;
if (clazz == null) {
clazz = class$javax$baja$sys$BObject = BObject.class("[Ljavax.baja.sys.BObject;", false);
}
TYPE = Sys.loadType(clazz);
icon = BIcon.std("object.png");
}
}
@@ -0,0 +1,311 @@
/*
* Decompiled with CFR 0.152.
*/
package javax.baja.sys;
import java.io.DataInput;
import java.io.DataOutput;
import java.io.IOException;
import javax.baja.data.BIDataValue;
import javax.baja.sys.BBoolean;
import javax.baja.sys.BIComparable;
import javax.baja.sys.BObject;
import javax.baja.sys.BSimple;
import javax.baja.sys.Context;
import javax.baja.sys.Sys;
import javax.baja.sys.Type;
/*
* Illegal identifiers - consider using --renameillegalidents true
*/
public final class BRelTime
extends BSimple
implements BIDataValue,
BIComparable {
public static final BRelTime DEFAULT = new BRelTime(0L);
public static final Type TYPE;
public static final long MILLIS_IN_SECOND = 1000L;
public static final long MILLIS_IN_MINUTE = 60000L;
public static final long MILLIS_IN_HOUR = 3600000L;
public static final long MILLIS_IN_DAY = 86400000L;
public static final BRelTime SECOND;
public static final BRelTime MINUTE;
public static final BRelTime HOUR;
public static final BRelTime DAY;
public static final String SHOW_DAYS = "showDays";
public static final String SHOW_HOURS = "showHours";
public static final String SHOW_MINUTES = "showMinutes";
private long ms;
static /* synthetic */ Class class$javax$baja$sys$BRelTime;
public static final BRelTime make(long l) {
if (l == 0L) {
return DEFAULT;
}
return (BRelTime)new BRelTime(l).intern();
}
public static final BRelTime make(String string) throws IOException {
return (BRelTime)DEFAULT.decodeFromString(string);
}
public static final BRelTime makeDays(int n) {
return BRelTime.make(86400000L * (long)n);
}
public static final BRelTime makeHours(int n) {
return BRelTime.make(3600000L * (long)n);
}
public static final BRelTime makeMinutes(int n) {
return BRelTime.make(60000L * (long)n);
}
public static final BRelTime makeSeconds(int n) {
return BRelTime.make(1000L * (long)n);
}
public final long getMillis() {
return this.ms;
}
public final int getSeconds() {
return (int)(this.ms / 1000L);
}
public final int getMinutes() {
return (int)(this.ms / 60000L);
}
public final int getHours() {
return (int)(this.ms / 3600000L);
}
public final int getDays() {
return (int)(this.ms / 86400000L);
}
public final long getMillisPart() {
return this.ms % 1000L;
}
public final int getSecondsPart() {
return (int)((this.ms - this.getMillisPart()) % 60000L / 1000L);
}
public final int getMinutesPart() {
return (int)((this.ms - 1000L * (long)this.getSecondsPart()) % 3600000L / 60000L);
}
public final int getHoursPart() {
return (int)((this.ms - 60000L * (long)this.getMinutesPart()) % 86400000L / 3600000L);
}
public final int getDaysPart() {
return (int)((this.ms - 3600000L * (long)this.getHoursPart()) / 86400000L);
}
public final BRelTime abs() {
if (this.ms >= 0L) {
return this;
}
return BRelTime.make(Math.abs(this.ms));
}
public final int hashCode() {
return (int)(this.ms ^ this.ms >> 32);
}
public final boolean equals(Object object) {
if (object instanceof BRelTime) {
boolean bl = false;
if (((BRelTime)object).ms == this.ms) {
bl = true;
}
return bl;
}
return false;
}
public final int compareTo(Object object) {
BRelTime bRelTime = (BRelTime)object;
long l = this.getMillis() - bRelTime.getMillis();
if (l == 0L) {
return 0;
}
if (l < 0L) {
return -1;
}
return 1;
}
public static final String toString(long l) {
return BRelTime.toString(l, null);
}
public static final String toString(long l, Context context) {
long l2;
Comparable<StringBuffer> comparable;
BBoolean bBoolean;
BBoolean bBoolean2;
BBoolean bBoolean3;
BBoolean bBoolean4;
boolean bl = true;
if (context != null && (bBoolean4 = (BBoolean)context.getFacet("showMilliseconds")) != null) {
bl = bBoolean4.getBoolean();
}
boolean bl2 = true;
if (context != null && (bBoolean3 = (BBoolean)context.getFacet("showSeconds")) != null) {
bl2 = bBoolean3.getBoolean();
}
boolean bl3 = true;
if (context != null && (bBoolean2 = (BBoolean)context.getFacet(SHOW_MINUTES)) != null) {
bl3 = bBoolean2.getBoolean();
}
boolean bl4 = true;
if (context != null && (bBoolean = (BBoolean)context.getFacet(SHOW_HOURS)) != null) {
bl4 = bBoolean.getBoolean();
}
boolean bl5 = true;
if (context != null && (comparable = (BBoolean)context.getFacet(SHOW_DAYS)) != null) {
bl5 = ((BBoolean)comparable).getBoolean();
}
comparable = new StringBuffer();
if (l < 0L) {
((StringBuffer)comparable).append('-');
l = -l;
}
if (l < 1000L) {
if (bl2) {
if (bl) {
return ((StringBuffer)comparable).append(l).append("ms").toString();
}
return "0 sec";
}
if (bl3) {
return "0 minutes";
}
if (bl4) {
return "0 hours";
}
if (bl5) {
return "0 days";
}
}
if (l >= 86400000L && bl5) {
l2 = l / 86400000L;
l %= 86400000L;
((StringBuffer)comparable).append(l2).append(l2 == 1L ? "day " : "days ");
}
if (l >= 3600000L && bl4) {
l2 = l / 3600000L;
l %= 3600000L;
((StringBuffer)comparable).append(l2).append(l2 == 1L ? "hour " : "hours ");
}
if (l >= 60000L && bl3) {
l2 = l / 60000L;
l %= 60000L;
((StringBuffer)comparable).append(l2).append(l2 == 1L ? "min " : "mins ");
}
if (l > 0L && bl2) {
boolean bl6;
l2 = l / 1000L;
l %= 1000L;
((StringBuffer)comparable).append(l2);
boolean bl7 = false;
if (l2 != 1L) {
bl7 = bl6 = true;
}
if (bl && l > 0L) {
((StringBuffer)comparable).append('.');
if (l < 10L) {
((StringBuffer)comparable).append("00");
} else if (l < 100L) {
((StringBuffer)comparable).append('0');
}
((StringBuffer)comparable).append(l);
boolean bl8 = false;
if (bl6 || l != 0L) {
bl8 = true;
}
bl6 = bl8;
}
((StringBuffer)comparable).append(bl6 ? "secs" : "sec");
}
if (((StringBuffer)comparable).length() > 0 && ((StringBuffer)comparable).charAt(((StringBuffer)comparable).length() - 1) == ' ') {
((StringBuffer)comparable).setLength(((StringBuffer)comparable).length() - 1);
}
return ((StringBuffer)comparable).toString();
}
public final String toString(Context context) {
return BRelTime.toString(this.ms, context);
}
public final void encode(DataOutput dataOutput) throws IOException {
dataOutput.writeLong(this.ms);
}
public final BObject decode(DataInput dataInput) throws IOException {
return BRelTime.make(dataInput.readLong());
}
public final String encodeToString() {
return String.valueOf(this.ms);
}
public final BObject decodeFromString(String string) throws IOException {
if (string.equals("0")) {
return DEFAULT;
}
return (BRelTime)new BRelTime(new Long(string)).intern();
}
public final BIDataValue toDataValue() {
return this;
}
public final Object fw(int n, Object object, Object object2, Object object3, Object object4) {
if (n == 116) {
if (Math.abs(this.ms) > 1000L && this.getMillisPart() != 0L) {
return Boolean.TRUE;
}
return null;
}
return super.fw(n, object, object2, object3, object4);
}
public final Type getType() {
return TYPE;
}
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 BRelTime(long l) {
this.ms = l;
}
static {
Class clazz = class$javax$baja$sys$BRelTime;
if (clazz == null) {
clazz = class$javax$baja$sys$BRelTime = BRelTime.class("[Ljavax.baja.sys.BRelTime;", false);
}
TYPE = Sys.loadType(clazz);
SECOND = BRelTime.make(1000L);
MINUTE = BRelTime.make(60000L);
HOUR = BRelTime.make(3600000L);
DAY = BRelTime.make(86400000L);
}
}
@@ -0,0 +1,100 @@
/*
* Decompiled with CFR 0.152.
*/
package javax.baja.sys;
import com.tridium.sys.schema.SimpleType;
import java.io.DataInput;
import java.io.DataOutput;
import java.io.IOException;
import javax.baja.io.BIEncodable;
import javax.baja.sys.BObject;
import javax.baja.sys.BValue;
import javax.baja.sys.Context;
import javax.baja.sys.CopyHints;
import javax.baja.sys.Sys;
import javax.baja.sys.Type;
/*
* Illegal identifiers - consider using --renameillegalidents true
*/
public abstract class BSimple
extends BValue
implements BIEncodable {
public static final Type TYPE;
static /* synthetic */ Class class$javax$baja$sys$BSimple;
public String toString(Context context) {
try {
return this.encodeToString();
}
catch (IOException iOException) {
iOException.printStackTrace();
return iOException.toString();
}
}
public int hashCode() {
throw new UnsupportedOperationException(this.getClass().getName());
}
public abstract boolean equals(Object var1);
public final boolean equivalent(Object object) {
return this.equals(object);
}
public final BValue newCopy() {
return this;
}
public final BValue newCopy(boolean bl) {
return this;
}
public final BValue newCopy(CopyHints copyHints) {
return this;
}
public abstract void encode(DataOutput var1) throws IOException;
public abstract BObject decode(DataInput var1) throws IOException;
public abstract String encodeToString() throws IOException;
public abstract BObject decodeFromString(String var1) throws IOException;
public BSimple intern() {
SimpleType simpleType = (SimpleType)this.getType();
if (simpleType != null) {
return simpleType.intern(this);
}
return this;
}
public Type getType() {
return TYPE;
}
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());
}
}
static {
Class clazz = class$javax$baja$sys$BSimple;
if (clazz == null) {
clazz = class$javax$baja$sys$BSimple = BSimple.class("[Ljavax.baja.sys.BSimple;", false);
}
TYPE = Sys.loadType(clazz);
}
}
@@ -0,0 +1,46 @@
/*
* Decompiled with CFR 0.152.
*/
package javax.baja.sys;
import javax.baja.sys.BObject;
import javax.baja.sys.Sys;
import javax.baja.sys.Type;
/*
* Illegal identifiers - consider using --renameillegalidents true
*/
public abstract class BSingleton
extends BObject {
public static final Type TYPE;
static /* synthetic */ Class class$javax$baja$sys$BSingleton;
public Type getType() {
return TYPE;
}
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());
}
}
protected BSingleton() {
}
static {
Class clazz = class$javax$baja$sys$BSingleton;
if (clazz == null) {
clazz = class$javax$baja$sys$BSingleton = BSingleton.class("[Ljavax.baja.sys.BSingleton;", false);
}
TYPE = Sys.loadType(clazz);
}
}
@@ -0,0 +1,123 @@
/*
* Decompiled with CFR 0.152.
*/
package javax.baja.sys;
import com.tridium.sys.station.Station;
import javax.baja.agent.AgentList;
import javax.baja.sys.Action;
import javax.baja.sys.BComponent;
import javax.baja.sys.BFacets;
import javax.baja.sys.BIcon;
import javax.baja.sys.BString;
import javax.baja.sys.BValue;
import javax.baja.sys.Context;
import javax.baja.sys.Property;
import javax.baja.sys.Sys;
import javax.baja.sys.Type;
import javax.baja.util.BFormat;
/*
* Illegal identifiers - consider using --renameillegalidents true
*/
public final class BStation
extends BComponent {
public static final Property stationName = BStation.newProperty(3, "", null);
public static final Property sysInfo = BStation.newProperty(0, BFacets.DEFAULT, null);
public static final Action save = BStation.newAction(0, null);
public static final Type TYPE;
private static final BIcon icon;
static /* synthetic */ Class class$javax$baja$sys$BStation;
public final String getStationName() {
return this.getString(stationName);
}
public final void setStationName(String string) {
this.setString(stationName, string, null);
}
public final BFacets getSysInfo() {
return (BFacets)this.get(sysInfo);
}
public final void setSysInfo(BFacets bFacets) {
this.set(sysInfo, (BValue)bFacets, null);
}
public final void save() {
this.invoke(save, null, null);
}
public final Type getType() {
return TYPE;
}
public final void doSave(Context context) throws Exception {
Station.saveAsync(context);
}
public final String getStationDisplayName(Context context) {
BValue bValue = this.get("displayName");
if (bValue == null) {
return this.getStationName();
}
if (bValue instanceof BString) {
String string = ((BString)bValue).getString();
if (string.length() == 0) {
return null;
}
return string;
}
if (bValue instanceof BFormat) {
BFormat bFormat = (BFormat)bValue;
if (bFormat.getFormat().length() == 0) {
return null;
}
try {
String string = bFormat.format(this, context);
if (string.length() == 0) {
return null;
}
return string;
}
catch (Exception exception) {
return "Error: " + exception.getClass().getName() + ": " + exception.getMessage();
}
}
return "Error: displayName must be one of { BString, BFormat }";
}
public final BIcon getIcon() {
return icon;
}
public final AgentList getAgents(Context context) {
AgentList agentList = super.getAgents(context);
agentList.toBottom("wbutil:MetadataBrowser");
return agentList;
}
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());
}
}
static {
Class clazz = class$javax$baja$sys$BStation;
if (clazz == null) {
clazz = class$javax$baja$sys$BStation = BStation.class("[Ljavax.baja.sys.BStation;", false);
}
TYPE = Sys.loadType(clazz);
icon = BIcon.std("database.png");
}
}
@@ -0,0 +1,123 @@
/*
* Decompiled with CFR 0.152.
*/
package javax.baja.sys;
import java.io.DataInput;
import java.io.DataOutput;
import java.io.IOException;
import javax.baja.data.BIDataValue;
import javax.baja.sys.BIComparable;
import javax.baja.sys.BObject;
import javax.baja.sys.BSimple;
import javax.baja.sys.Context;
import javax.baja.sys.Sys;
import javax.baja.sys.Type;
/*
* Illegal identifiers - consider using --renameillegalidents true
*/
public final class BString
extends BSimple
implements BIComparable,
BIDataValue {
public static final BString DEFAULT = new BString("");
public static final Type TYPE;
private String value;
static /* synthetic */ Class class$javax$baja$sys$BString;
public static final BString make(String string) {
if (string.equals("")) {
return DEFAULT;
}
return new BString(string);
}
public final String getString() {
return this.value;
}
public final int hashCode() {
return this.value.hashCode();
}
public static final boolean equals(String string, String string2) {
if (string == null) {
boolean bl = false;
if (string2 == null) {
bl = true;
}
return bl;
}
if (string2 == null) {
return false;
}
return string.equals(string2);
}
public final boolean equals(Object object) {
if (object instanceof BString) {
return this.value.equals(((BString)object).value);
}
return false;
}
public final int compareTo(Object object) {
return this.value.compareTo(((BString)object).getString());
}
public final String toString(Context context) {
return this.value;
}
public final void encode(DataOutput dataOutput) throws IOException {
dataOutput.writeUTF(this.value);
}
public final BObject decode(DataInput dataInput) throws IOException {
String string = dataInput.readUTF();
return BString.make(string);
}
public final String encodeToString() throws IOException {
return this.value;
}
public final BObject decodeFromString(String string) throws IOException {
return BString.make(string);
}
public final BIDataValue toDataValue() {
return this;
}
public final Type getType() {
return TYPE;
}
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 BString(String string) {
this.value = string;
}
static {
Class clazz = class$javax$baja$sys$BString;
if (clazz == null) {
clazz = class$javax$baja$sys$BString = BString.class("[Ljavax.baja.sys.BString;", false);
}
TYPE = Sys.loadType(clazz);
}
}
@@ -0,0 +1,43 @@
/*
* Decompiled with CFR 0.152.
*/
package javax.baja.sys;
import javax.baja.sys.BComplex;
import javax.baja.sys.Sys;
import javax.baja.sys.Type;
/*
* Illegal identifiers - consider using --renameillegalidents true
*/
public class BStruct
extends BComplex {
public static final Type TYPE;
static /* synthetic */ Class class$javax$baja$sys$BStruct;
public Type getType() {
return TYPE;
}
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());
}
}
static {
Class clazz = class$javax$baja$sys$BStruct;
if (clazz == null) {
clazz = class$javax$baja$sys$BStruct = BStruct.class("[Ljavax.baja.sys.BStruct;", false);
}
TYPE = Sys.loadType(clazz);
}
}
@@ -0,0 +1,239 @@
/*
* Decompiled with CFR 0.152.
*/
package javax.baja.sys;
import com.tridium.util.TimeFormat;
import java.io.DataInput;
import java.io.DataOutput;
import java.io.IOException;
import javax.baja.sys.BAbsTime;
import javax.baja.sys.BIComparable;
import javax.baja.sys.BITime;
import javax.baja.sys.BObject;
import javax.baja.sys.BRelTime;
import javax.baja.sys.BSimple;
import javax.baja.sys.Context;
import javax.baja.sys.Sys;
import javax.baja.sys.Type;
/*
* Illegal identifiers - consider using --renameillegalidents true
*/
public final class BTime
extends BSimple
implements BITime,
BIComparable {
public static final BTime DEFAULT;
public static final BTime MIDNIGHT;
public static final Type TYPE;
private int bits;
static /* synthetic */ Class class$javax$baja$sys$BTime;
public static final BTime make(BAbsTime bAbsTime) {
return BTime.make(bAbsTime.getHour(), bAbsTime.getMinute(), bAbsTime.getSecond(), bAbsTime.getMillisecond());
}
public static final BTime make(BRelTime bRelTime) {
long l = bRelTime.getMillis();
int n = (int)((l %= 86400000L) / 3600000L);
int n2 = (int)((l %= 3600000L) / 60000L);
int n3 = (int)((l %= 60000L) / 1000L);
return BTime.make(n, n2, n3, (int)(l %= 1000L));
}
public static final BTime make(int n, int n2, int n3) {
return BTime.make(n, n2, n3, 0);
}
public static final BTime make(int n, int n2, int n3, int n4) {
if (n < 0 || n > 23 || n2 < 0 || n2 > 59 || n3 < 0 || n3 > 59 || n4 < 0 || n4 > 999) {
throw new IllegalArgumentException("Invalid field: " + n + ':' + n2 + ':' + n3 + '.' + n4);
}
if (n == 0 && n2 == 0 && n3 == 0 && n4 == 0) {
return DEFAULT;
}
return (BTime)new BTime(n, n2, n3, n4).intern();
}
public final int getHour() {
return this.bits >> 27 & 0x1F;
}
public final int getMinute() {
return this.bits >> 21 & 0x3F;
}
public final int getSecond() {
return this.bits >> 15 & 0x3F;
}
public final int getMillisecond() {
return this.bits & Short.MAX_VALUE;
}
public final long getTimeOfDayMillis() {
long l = (long)this.getHour() * 3600000L;
l += (long)this.getMinute() * 60000L;
l += (long)this.getSecond() * 1000L;
return l += (long)this.getMillisecond();
}
public final BTime add(BRelTime bRelTime) {
return BTime.make(BRelTime.make(bRelTime.getMillis() + this.getTimeOfDayMillis()));
}
public final String toString(Context context) {
return TimeFormat.format(this, context);
}
public final int compareTo(Object object) {
if (!(object instanceof BTime)) {
return 0;
}
long l = (long)this.bits & 0xFFFFFFFFFL;
long l2 = (long)((BTime)object).bits & 0xFFFFFFFFFL;
if (l < l2) {
return -1;
}
if (l == l2) {
return 0;
}
return 1;
}
public final boolean isBefore(BTime bTime) {
boolean bl = false;
if (this.compareTo(bTime) < 0) {
bl = true;
}
return bl;
}
public final boolean isAfter(BTime bTime) {
boolean bl = false;
if (this.compareTo(bTime) > 0) {
bl = true;
}
return bl;
}
public final int hashCode() {
return this.bits;
}
public final boolean equals(Object object) {
if (object instanceof BTime) {
boolean bl = false;
if (((BTime)object).bits == this.bits) {
bl = true;
}
return bl;
}
return false;
}
public final void encode(DataOutput dataOutput) throws IOException {
dataOutput.writeByte(this.getHour());
dataOutput.writeByte(this.getMinute());
dataOutput.writeByte(this.getSecond());
dataOutput.writeShort(this.getMillisecond());
}
public final BObject decode(DataInput dataInput) throws IOException {
return BTime.make(dataInput.readUnsignedByte(), dataInput.readUnsignedByte(), dataInput.readUnsignedByte(), dataInput.readUnsignedShort());
}
public final String encodeToString() {
StringBuffer stringBuffer = new StringBuffer(32);
int n = this.getHour();
if (n < 10) {
stringBuffer.append('0');
}
stringBuffer.append(n).append(':');
int n2 = this.getMinute();
if (n2 < 10) {
stringBuffer.append('0');
}
stringBuffer.append(n2).append(':');
int n3 = this.getSecond();
if (n3 < 10) {
stringBuffer.append('0');
}
stringBuffer.append(n3).append('.');
int n4 = this.getMillisecond();
if (n4 < 10) {
stringBuffer.append('0');
}
if (n4 < 100) {
stringBuffer.append('0');
}
stringBuffer.append(n4);
return stringBuffer.toString();
}
public final BObject decodeFromString(String string) throws IOException {
char[] cArray = string.toCharArray();
try {
int n = 0;
int n2 = (cArray[n++] - 48) * 10 + (cArray[n++] - 48);
if (cArray[n++] != ':') {
throw new Exception();
}
int n3 = (cArray[n++] - 48) * 10 + (cArray[n++] - 48);
if (cArray[n++] != ':') {
throw new Exception();
}
int n4 = (cArray[n++] - 48) * 10 + (cArray[n++] - 48);
if (cArray[n++] != '.') {
throw new Exception();
}
int n5 = (cArray[n++] - 48) * 100 + (cArray[n++] - 48) * 10 + (cArray[n++] - 48);
return BTime.make(n2, n3, n4, n5);
}
catch (Exception exception) {
throw new IOException("Invalid BTime: " + string);
}
}
public final Object fw(int n, Object object, Object object2, Object object3, Object object4) {
if (n == 116) {
if (this.getMillisecond() != 0) {
return Boolean.TRUE;
}
return null;
}
return super.fw(n, object, object2, object3, object4);
}
public final Type getType() {
return TYPE;
}
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 BTime(int n, int n2, int n3, int n4) {
this.bits = n << 27 | n2 << 21 | n3 << 15 | n4;
}
static {
MIDNIGHT = DEFAULT = new BTime(0, 0, 0, 0);
Class clazz = class$javax$baja$sys$BTime;
if (clazz == null) {
clazz = class$javax$baja$sys$BTime = BTime.class("[Ljavax.baja.sys.BTime;", false);
}
TYPE = Sys.loadType(clazz);
}
}
@@ -0,0 +1,57 @@
/*
* Decompiled with CFR 0.152.
*/
package javax.baja.sys;
import javax.baja.sys.BFacets;
import javax.baja.sys.BIcon;
import javax.baja.sys.BStruct;
import javax.baja.sys.Sys;
import javax.baja.sys.Type;
/*
* Illegal identifiers - consider using --renameillegalidents true
*/
public abstract class BTopic
extends BStruct {
public static final Type TYPE;
private static final BIcon icon;
static /* synthetic */ Class class$javax$baja$sys$BTopic;
public Type getType() {
return TYPE;
}
public abstract Type getEventType();
public BFacets getFacets() {
return BFacets.NULL;
}
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());
}
}
static {
Class clazz = class$javax$baja$sys$BTopic;
if (clazz == null) {
clazz = class$javax$baja$sys$BTopic = BTopic.class("[Ljavax.baja.sys.BTopic;", false);
}
TYPE = Sys.loadType(clazz);
icon = BIcon.std("shapes/circleGold.png");
}
}
@@ -0,0 +1,104 @@
/*
* Decompiled with CFR 0.152.
*/
package javax.baja.sys;
import com.tridium.sys.schema.ComplexSlotMap;
import javax.baja.space.BComponentSpace;
import javax.baja.sys.BComponent;
import javax.baja.sys.BObject;
import javax.baja.sys.CopyHints;
import javax.baja.sys.Sys;
import javax.baja.sys.Type;
/*
* Illegal identifiers - consider using --renameillegalidents true
*/
public abstract class BValue
extends BObject {
private static Object copySerialNumLock = new Object();
private static int copySerialNum = 0;
public static final Type TYPE;
static /* synthetic */ Class class$javax$baja$sys$BValue;
public abstract BValue newCopy();
public abstract BValue newCopy(boolean var1);
public abstract BValue newCopy(CopyHints var1);
public static BValue[] newCopy(BValue[] bValueArray, CopyHints copyHints) {
BValue[] bValueArray2;
Object object;
BComponentSpace bComponentSpace = null;
int n = 0;
while (n < bValueArray.length) {
if (bValueArray[n] instanceof BComponent) {
object = (BComponent)bValueArray[n];
BComponentSpace bComponentSpace2 = ((BComponent)object).getComponentSpace();
if (bComponentSpace != null && bComponentSpace != bComponentSpace2) {
throw new IllegalArgumentException("Components must be in same space");
}
bComponentSpace = bComponentSpace2;
}
++n;
}
if (bComponentSpace != null && (bValueArray2 = bComponentSpace.getLoadCallbacks().newCopy(bValueArray, copyHints)) != null) {
return bValueArray2;
}
int n2 = BValue.copySerialNum();
object = new BValue[bValueArray.length];
int n3 = 0;
while (n3 < bValueArray.length) {
object[n3] = ComplexSlotMap.newCopy(bValueArray[n3], copyHints, n2);
++n3;
}
return object;
}
/*
* WARNING - Removed try catching itself - possible behaviour change.
* Enabled aggressive block sorting
* Enabled unnecessary exception pruning
* Enabled aggressive exception aggregation
*/
static int copySerialNum() {
Object object = copySerialNumLock;
synchronized (object) {
return ++copySerialNum;
}
}
ComplexSlotMap getSlotMap() {
return null;
}
public Type getType() {
return TYPE;
}
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());
}
}
BValue() {
}
static {
Class clazz = class$javax$baja$sys$BValue;
if (clazz == null) {
clazz = class$javax$baja$sys$BValue = BValue.class("[Ljavax.baja.sys.BValue;", false);
}
TYPE = Sys.loadType(clazz);
}
}
@@ -0,0 +1,47 @@
/*
* Decompiled with CFR 0.152.
*/
package javax.baja.sys;
import javax.baja.sys.BComponent;
import javax.baja.sys.Sys;
import javax.baja.sys.Type;
/*
* Illegal identifiers - consider using --renameillegalidents true
*/
public class BVector
extends BComponent {
public static final Type TYPE;
static /* synthetic */ Class class$javax$baja$sys$BVector;
public boolean isNavChild() {
return false;
}
public Type getType() {
return TYPE;
}
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());
}
}
static {
Class clazz = class$javax$baja$sys$BVector;
if (clazz == null) {
clazz = class$javax$baja$sys$BVector = BVector.class("[Ljavax.baja.sys.BVector;", false);
}
TYPE = Sys.loadType(clazz);
}
}
@@ -0,0 +1,100 @@
/*
* Decompiled with CFR 0.152.
*/
package javax.baja.sys;
import javax.baja.sys.BFrozenEnum;
import javax.baja.sys.Context;
import javax.baja.sys.Sys;
import javax.baja.sys.Type;
import javax.baja.util.Lexicon;
/*
* Illegal identifiers - consider using --renameillegalidents true
*/
public final class BWeekday
extends BFrozenEnum {
public static final int SUNDAY = 0;
public static final int MONDAY = 1;
public static final int TUESDAY = 2;
public static final int WEDNESDAY = 3;
public static final int THURSDAY = 4;
public static final int FRIDAY = 5;
public static final int SATURDAY = 6;
public static final BWeekday sunday = new BWeekday(0);
public static final BWeekday monday = new BWeekday(1);
public static final BWeekday tuesday = new BWeekday(2);
public static final BWeekday wednesday = new BWeekday(3);
public static final BWeekday thursday = new BWeekday(4);
public static final BWeekday friday = new BWeekday(5);
public static final BWeekday saturday = new BWeekday(6);
public static final Type TYPE;
public static final BWeekday DEFAULT;
static /* synthetic */ Class class$javax$baja$sys$BWeekday;
public final Type getType() {
return TYPE;
}
public static final BWeekday make(int n) {
return (BWeekday)sunday.getRange().get(n, false);
}
public static final BWeekday make(String string) {
return (BWeekday)sunday.getRange().get(string);
}
public static final BWeekday getFirstDayOfWeek(Context context) {
Lexicon lexicon = Lexicon.make(TYPE.getModule(), context);
String string = lexicon.get("weekday.firstDayOfWeek", null);
if (string == null) {
return sunday;
}
return BWeekday.make(string);
}
public final String getShortDisplayTag(Context context) {
return Lexicon.make(Sys.getBajaModule(), context).getText(this.getTag() + ".short");
}
public final BWeekday next() {
int n = this.getOrdinal();
n = (n + 1) % 7;
return BWeekday.make(n);
}
public final BWeekday previous() {
int n = this.getOrdinal();
if (--n == -1) {
n = 6;
}
return BWeekday.make(n);
}
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 BWeekday(int n) {
super(n);
}
static {
Class clazz = class$javax$baja$sys$BWeekday;
if (clazz == null) {
clazz = class$javax$baja$sys$BWeekday = BWeekday.class("[Ljavax.baja.sys.BWeekday;", false);
}
TYPE = Sys.loadType(clazz);
DEFAULT = sunday;
}
}
@@ -0,0 +1,30 @@
/*
* Decompiled with CFR 0.152.
*/
package javax.baja.sys;
public class BajaException
extends Exception {
private Throwable cause;
public Throwable getCause() {
return this.cause;
}
public BajaException(String string, Throwable throwable) {
super(string);
this.cause = throwable;
}
public BajaException(Throwable throwable) {
this.cause = throwable;
}
public BajaException(String string) {
super(string);
}
public BajaException() {
}
}
@@ -0,0 +1,30 @@
/*
* Decompiled with CFR 0.152.
*/
package javax.baja.sys;
public class BajaRuntimeException
extends RuntimeException {
private Throwable cause;
public Throwable getCause() {
return this.cause;
}
public BajaRuntimeException(String string, Throwable throwable) {
super(string);
this.cause = throwable;
}
public BajaRuntimeException(Throwable throwable) {
this.cause = throwable;
}
public BajaRuntimeException(String string) {
super(string);
}
public BajaRuntimeException() {
}
}
@@ -0,0 +1,104 @@
/*
* Decompiled with CFR 0.152.
*/
package javax.baja.sys;
import javax.baja.sys.BFacets;
import javax.baja.sys.BObject;
import javax.baja.sys.Context;
import javax.baja.sys.Sys;
import javax.baja.user.BUser;
public class BasicContext
implements Context {
protected Context base;
protected BUser user;
protected BFacets facets;
protected String lang;
private final void invariant() {
if (this.facets == null) {
this.facets = BFacets.NULL;
}
if (this.lang == null) {
this.lang = this.user != null && !this.user.getLanguage().equals("") ? this.user.getLanguage() : Sys.getLanguage();
}
}
public BUser getUser() {
return this.user;
}
public BFacets getFacets() {
return this.facets;
}
public BObject getFacet(String string) {
return this.facets.getFacet(string);
}
public String getLanguage() {
return this.lang;
}
public Context getBase() {
return this.base;
}
public String toString() {
StringBuffer stringBuffer = new StringBuffer();
stringBuffer.append("BasicContext[facets=");
stringBuffer.append(this.facets);
stringBuffer.append(" lang=");
stringBuffer.append(this.lang);
stringBuffer.append(" user=");
stringBuffer.append(this.user);
stringBuffer.append("]");
return stringBuffer.toString();
}
public BasicContext(BUser bUser, BFacets bFacets) {
this.user = bUser;
this.facets = BFacets.make(bUser.getFacets(), bFacets);
this.invariant();
}
public BasicContext(BUser bUser) {
this.user = bUser;
this.facets = bUser != null ? bUser.getFacets() : BFacets.NULL;
this.invariant();
}
public BasicContext(BUser bUser, String string) {
this.user = bUser;
this.facets = bUser != null ? bUser.getFacets() : BFacets.NULL;
this.lang = string;
this.invariant();
}
public BasicContext(Context context) {
if (context != null) {
this.base = context;
this.user = context.getUser();
this.facets = context.getFacets();
this.lang = context.getLanguage();
}
this.invariant();
}
public BasicContext(Context context, BFacets bFacets) {
if (context != null) {
this.base = context;
this.user = context.getUser();
this.facets = context.getFacets();
this.lang = context.getLanguage();
}
this.facets = BFacets.make(this.facets, bFacets);
this.invariant();
}
public BasicContext() {
this.invariant();
}
}
@@ -0,0 +1,145 @@
/*
* Decompiled with CFR 0.152.
*
* Could not load the following classes:
* com.tridium.nre.util.PlatformUtil
*/
package javax.baja.sys;
import com.tridium.nre.util.PlatformUtil;
import com.tridium.sys.Nre;
import com.tridium.sys.NreLib;
import javax.baja.log.Log;
import javax.baja.sys.Action;
import javax.baja.sys.BAbsTime;
import javax.baja.sys.BComponent;
import javax.baja.sys.BRelTime;
import javax.baja.sys.BValue;
public class Clock {
private static Log log = Log.getLog("sys.clock");
private static Object timeLock = new Object();
private static long lastMillis;
private static BAbsTime lastTime;
public static final Ticket expiredTicket;
public static long ticks() {
return PlatformUtil.ticks();
}
public static long nanoTicks() {
try {
if (NreLib.nativesLoaded) {
return Clock.nanoTicks0();
}
}
catch (Throwable throwable) {
System.out.println("ERROR: Clock.nanoTicks(): " + throwable);
}
return System.currentTimeMillis() * 1000000L;
}
private static final native long nanoTicks0();
public static long millis() {
return System.currentTimeMillis();
}
/*
* WARNING - Removed try catching itself - possible behaviour change.
* Enabled aggressive block sorting
* Enabled unnecessary exception pruning
* Enabled aggressive exception aggregation
*/
public static BAbsTime time(int n) {
Object object = timeLock;
synchronized (object) {
long l = System.currentTimeMillis();
long l2 = l - lastMillis;
if (l2 > (long)n || -l2 > (long)n) {
lastMillis = l;
lastTime = BAbsTime.make(l);
}
return lastTime;
}
}
public static BAbsTime time() {
return Clock.time(100);
}
public static BAbsTime nextTopOfMinute() {
long l = System.currentTimeMillis();
BAbsTime bAbsTime = BAbsTime.make(l);
return BAbsTime.make(l + 60000L - (long)(bAbsTime.getSecond() * 1000) - (long)bAbsTime.getMillisecond());
}
public static void setTime(BAbsTime bAbsTime) {
log.message("Changing system time " + Clock.time(0) + " -> " + bAbsTime);
Clock.setTime0(bAbsTime.getMillis());
}
private static final native void setTime0(long var0);
public static Ticket schedule(BComponent bComponent, BRelTime bRelTime, Action action, BValue bValue) {
return Nre.engineManager.schedule(bComponent, bRelTime, action, bValue);
}
public static Ticket schedule(BComponent bComponent, BAbsTime bAbsTime, Action action, BValue bValue) {
return Nre.engineManager.schedule(bComponent, bAbsTime, action, bValue);
}
public static Ticket schedulePeriodically(BComponent bComponent, BRelTime bRelTime, Action action, BValue bValue) {
return Nre.engineManager.schedulePeriodically(bComponent, bRelTime, action, bValue);
}
public static Ticket schedulePeriodically(BComponent bComponent, BAbsTime bAbsTime, BRelTime bRelTime, Action action, BValue bValue) {
return Nre.engineManager.schedulePeriodically(bComponent, bAbsTime, bRelTime, action, bValue);
}
static {
expiredTicket = new ExpiredTicket();
}
private static class ExpiredTicket
implements Ticket {
public void cancel() {
}
public boolean isExpired() {
return true;
}
public BComponent getComponent() {
return null;
}
public Action getAction() {
return null;
}
public BValue getActionArgument() {
return null;
}
public String toString() {
return "Ticket: expired";
}
private ExpiredTicket() {
}
}
public static interface Ticket {
public void cancel();
public boolean isExpired();
public BComponent getComponent();
public Action getAction();
public BValue getActionArgument();
}
}
@@ -0,0 +1,80 @@
/*
* Decompiled with CFR 0.152.
*/
package javax.baja.sys;
import javax.baja.sys.BFacets;
import javax.baja.sys.BObject;
import javax.baja.sys.BasicContext;
import javax.baja.user.BUser;
public interface Context {
public static final Context decoding = new BasicContext(){
public final boolean equals(Object object) {
boolean bl = false;
if (this == object) {
bl = true;
}
return bl;
}
public final String toString() {
return "Context.decoding";
}
};
public static final Context copying = new BasicContext(){
public final boolean equals(Object object) {
boolean bl = false;
if (this == object) {
bl = true;
}
return bl;
}
public final String toString() {
return "Context.copying";
}
};
public static final Context commit = new BasicContext(){
public final boolean equals(Object object) {
boolean bl = false;
if (this == object) {
bl = true;
}
return bl;
}
public final String toString() {
return "Context.commit";
}
};
public static final Context encrypt = new BasicContext(BFacets.make("encodingMode", "encrypt")){
public final boolean equals(Object object) {
boolean bl = false;
if (this == object) {
bl = true;
}
return bl;
}
public final String toString() {
return "Context.encrypt";
}
};
public static final Context NULL = null;
public Context getBase();
public BUser getUser();
public BFacets getFacets();
public BObject getFacet(String var1);
public String getLanguage();
}
@@ -0,0 +1,30 @@
/*
* Decompiled with CFR 0.152.
*/
package javax.baja.sys;
import javax.baja.sys.Context;
/*
* Illegal identifiers - consider using --renameillegalidents true
*/
public class CopyHints {
public boolean defaultOnClone;
public boolean swizzleHandles;
public Context cx;
public String toString() {
return "CopyHints defaultOnClone=" + this.defaultOnClone + " swizzleHandles=" + this.swizzleHandles;
}
private final /* synthetic */ void this() {
this.defaultOnClone = true;
this.swizzleHandles = false;
this.cx = null;
}
public CopyHints() {
this.this();
}
}
@@ -0,0 +1,20 @@
/*
* Decompiled with CFR 0.152.
*/
package javax.baja.sys;
import javax.baja.sys.BObject;
import javax.baja.sys.Context;
public interface Cursor {
public Context getContext();
public boolean next();
public boolean nextComponent();
public boolean next(Class var1);
public BObject get();
}
@@ -0,0 +1,18 @@
/*
* Decompiled with CFR 0.152.
*/
package javax.baja.sys;
import javax.baja.sys.BajaRuntimeException;
public class CursorException
extends BajaRuntimeException {
public CursorException(String string, Throwable throwable) {
super(string, throwable);
}
public CursorException(String string) {
super(string);
}
}
@@ -0,0 +1,23 @@
/*
* Decompiled with CFR 0.152.
*/
package javax.baja.sys;
import javax.baja.sys.LocalizableRuntimeException;
import javax.baja.sys.Slot;
public class DuplicateSlotException
extends LocalizableRuntimeException {
public DuplicateSlotException(String string, String string2, Object[] objectArray, Throwable throwable) {
super(string, string2, objectArray, throwable);
}
public DuplicateSlotException(String string, String string2, Object[] objectArray) {
super(string, string2, objectArray, null);
}
public DuplicateSlotException(Slot slot) {
super("baja", "DuplicateSlotException.slot", new Object[]{slot.getName()});
}
}
@@ -0,0 +1,17 @@
/*
* Decompiled with CFR 0.152.
*/
package javax.baja.sys;
import javax.baja.sys.BajaRuntimeException;
public class ExpiredTicketException
extends BajaRuntimeException {
public ExpiredTicketException(String string) {
super(string);
}
public ExpiredTicketException() {
}
}
@@ -0,0 +1,360 @@
/*
* Decompiled with CFR 0.152.
*
* Could not load the following classes:
* javax.baja.nre.util.IntHashMap
*/
package javax.baja.sys;
import java.util.HashMap;
import javax.baja.nre.util.IntHashMap;
import javax.baja.sync.Transaction;
import javax.baja.sys.BComplex;
import javax.baja.sys.BComponent;
import javax.baja.sys.BValue;
import javax.baja.sys.BajaRuntimeException;
import javax.baja.sys.Context;
import javax.baja.sys.Property;
import javax.baja.sys.Slot;
import javax.baja.sys.Sys;
import javax.baja.util.Lexicon;
public final class Flags {
public static final int READONLY = 1;
public static final int TRANSIENT = 2;
public static final int HIDDEN = 4;
public static final int SUMMARY = 8;
public static final int ASYNC = 16;
public static final int NO_RUN = 32;
public static final int DEFAULT_ON_CLONE = 64;
public static final int CONFIRM_REQUIRED = 128;
public static final int OPERATOR = 256;
public static final int EXECUTE_ON_CHANGE = 512;
public static final int FAN_IN = 1024;
public static final int NO_AUDIT = 2048;
public static final int COMPOSITE = 4096;
public static final int REMOVE_ON_CLONE = 8192;
public static final int METADATA = 16384;
public static final int LINK_TARGET = 32768;
public static final int NON_CRITICAL = 65536;
public static final int USER_DEFINED_1 = 0x10000000;
public static final int USER_DEFINED_2 = 0x20000000;
public static final int USER_DEFINED_3 = 0x40000000;
public static final int USER_DEFINED_4 = Integer.MIN_VALUE;
private static final Flag[] FLAGS = new Flag[]{new Flag(1, 'r', "readonly"), new Flag(2, 't', "transient"), new Flag(4, 'h', "hidden"), new Flag(8, 's', "summary"), new Flag(16, 'a', "async"), new Flag(32, 'n', "noRun"), new Flag(64, 'd', "defaultOnClone"), new Flag(128, 'c', "confirmRequired"), new Flag(256, 'o', "operator"), new Flag(512, 'x', "executeOnChange"), new Flag(1024, 'f', "fanIn"), new Flag(2048, 'A', "noAudit"), new Flag(4096, 'p', "composite"), new Flag(8192, 'R', "removeOnClone"), new Flag(16384, 'm', "metadata"), new Flag(65536, 'N', "nonCritical"), new Flag(32768, 'L', "linkTarget"), new Flag(0x10000000, '1', "userDefined1"), new Flag(0x20000000, '2', "userDefined2"), new Flag(0x40000000, '3', "userDefined3"), new Flag(Integer.MIN_VALUE, '4', "userDefined4")};
private static final IntHashMap byBit = new IntHashMap();
private static final HashMap byName = new HashMap();
private static final Flag[] bySymbol = new Flag[128];
public static final Flag[] getFlags() {
return (Flag[])FLAGS.clone();
}
public static final Flag getByBit(int n) {
return (Flag)byBit.get(n);
}
public static final Flag getByName(String string) {
return (Flag)byName.get(string);
}
public static final Flag getBySymbol(char c) {
if (c < '\u0080') {
return bySymbol[c];
}
return null;
}
public static final boolean isTransient(BComplex bComplex, Slot slot) {
boolean bl = false;
if ((bComplex.getFlags(slot) & 2) != 0) {
bl = true;
}
return bl;
}
public static final boolean isReadonly(BComplex bComplex, Slot slot) {
boolean bl = false;
if ((bComplex.getFlags(slot) & 1) != 0) {
bl = true;
}
return bl;
}
public static final boolean isHidden(BComplex bComplex, Slot slot) {
boolean bl = false;
if ((bComplex.getFlags(slot) & 4) != 0) {
bl = true;
}
return bl;
}
public static final boolean isSummary(BComplex bComplex, Slot slot) {
boolean bl = false;
if ((bComplex.getFlags(slot) & 8) != 0) {
bl = true;
}
return bl;
}
public static final boolean isAsync(BComplex bComplex, Slot slot) {
boolean bl = false;
if ((bComplex.getFlags(slot) & 0x10) != 0) {
bl = true;
}
return bl;
}
public static final boolean isNoRun(BComplex bComplex, Slot slot) {
boolean bl = false;
if ((bComplex.getFlags(slot) & 0x20) != 0) {
bl = true;
}
return bl;
}
public static final boolean isDefaultOnClone(BComplex bComplex, Slot slot) {
boolean bl = false;
if ((bComplex.getFlags(slot) & 0x40) != 0) {
bl = true;
}
return bl;
}
public static final boolean isConfirmRequired(BComplex bComplex, Slot slot) {
boolean bl = false;
if ((bComplex.getFlags(slot) & 0x80) != 0) {
bl = true;
}
return bl;
}
public static final boolean isOperator(BComplex bComplex, Slot slot) {
boolean bl = false;
if ((bComplex.getFlags(slot) & 0x100) != 0) {
bl = true;
}
return bl;
}
public static final boolean isAdmin(BComplex bComplex, Slot slot) {
boolean bl = false;
if ((bComplex.getFlags(slot) & 0x100) == 0) {
bl = true;
}
return bl;
}
public static final boolean isExecuteOnChange(BComplex bComplex, Slot slot) {
boolean bl = false;
if ((bComplex.getFlags(slot) & 0x200) != 0) {
bl = true;
}
return bl;
}
public static final boolean isFanIn(BComplex bComplex, Slot slot) {
boolean bl = false;
if ((bComplex.getFlags(slot) & 0x400) != 0) {
bl = true;
}
return bl;
}
public static final boolean isNoAudit(BComplex bComplex, Slot slot) {
boolean bl = false;
if ((bComplex.getFlags(slot) & 0x800) != 0) {
bl = true;
}
return bl;
}
public static final boolean isComposite(BComplex bComplex, Slot slot) {
boolean bl = false;
if ((bComplex.getFlags(slot) & 0x1000) != 0) {
bl = true;
}
return bl;
}
public static final boolean isRemoveOnClone(BComplex bComplex, Slot slot) {
boolean bl = false;
if ((bComplex.getFlags(slot) & 0x2000) != 0) {
bl = true;
}
return bl;
}
public static final boolean isMetadata(BComplex bComplex, Slot slot) {
boolean bl = false;
if ((bComplex.getFlags(slot) & 0x4000) != 0) {
bl = true;
}
return bl;
}
public static final boolean isLinkTarget(BComplex bComplex, Slot slot) {
boolean bl = false;
if ((bComplex.getFlags(slot) & 0x8000) != 0) {
bl = true;
}
return bl;
}
public static final boolean isNonCritical(BComplex bComplex, Slot slot) {
boolean bl = false;
if ((bComplex.getFlags(slot) & 0x10000) != 0) {
bl = true;
}
return bl;
}
public static final boolean isUserDefined1(BComplex bComplex, Slot slot) {
boolean bl = false;
if ((bComplex.getFlags(slot) & 0x10000000) != 0) {
bl = true;
}
return bl;
}
public static final boolean isUserDefined2(BComplex bComplex, Slot slot) {
boolean bl = false;
if ((bComplex.getFlags(slot) & 0x20000000) != 0) {
bl = true;
}
return bl;
}
public static final boolean isUserDefined3(BComplex bComplex, Slot slot) {
boolean bl = false;
if ((bComplex.getFlags(slot) & 0x40000000) != 0) {
bl = true;
}
return bl;
}
public static final boolean isUserDefined4(BComplex bComplex, Slot slot) {
boolean bl = false;
if ((bComplex.getFlags(slot) & Integer.MIN_VALUE) != 0) {
bl = true;
}
return bl;
}
public static final void setAllReadonly(BComponent bComponent, boolean bl, Context context) {
Context context2 = Transaction.start(bComponent, context);
Property[] propertyArray = bComponent.getPropertiesArray();
int n = 0;
while (n < propertyArray.length) {
Property property = propertyArray[n];
BValue bValue = bComponent.get(property);
if (!(bValue instanceof BComponent)) {
int n2 = bComponent.getFlags(property);
if (bl) {
if ((n2 & 1) == 0) {
bComponent.setFlags(property, n2 | 1, context2);
}
} else if ((n2 & 1) != 0 && (property.isDynamic() || (property.getDefaultFlags() & 1) == 0)) {
bComponent.setFlags(property, n2 & 0xFFFFFFFE, context2);
}
}
++n;
}
try {
Transaction.end(bComponent, context2);
}
catch (Exception exception) {
throw new BajaRuntimeException("setAllReadonly failed", exception);
}
}
public static final String encodeToString(int n) {
StringBuffer stringBuffer = new StringBuffer(32);
int n2 = 0;
while (n2 < FLAGS.length) {
if ((Flags.FLAGS[n2].mask & n) != 0) {
stringBuffer.append(Flags.FLAGS[n2].symbol);
}
++n2;
}
return stringBuffer.toString();
}
public static final int decodeFromString(String string) {
int n = 0;
int n2 = 0;
while (n2 < string.length()) {
Flag flag = Flags.getBySymbol(string.charAt(n2));
if (flag != null) {
n |= flag.mask;
}
++n2;
}
return n;
}
public static final String toDisplayString(int n, Context context) {
if (n == 0) {
return Lexicon.make(Sys.getBajaModule(), context).getText("flag.none");
}
StringBuffer stringBuffer = new StringBuffer();
int n2 = 0;
while (n2 < FLAGS.length) {
Flag flag = FLAGS[n2];
if ((flag.mask & n) != 0) {
if (stringBuffer.length() > 0) {
stringBuffer.append(',').append(' ');
}
stringBuffer.append(flag.getDisplayName(context));
}
++n2;
}
return stringBuffer.toString();
}
static {
int n = 0;
while (n < FLAGS.length) {
Flag flag = FLAGS[n];
byBit.put(flag.mask, (Object)flag);
byName.put(flag.name, flag);
Flags.bySymbol[flag.symbol] = flag;
++n;
}
}
public static class Flag {
String name;
char symbol;
int mask;
String lexKey;
public int getMask() {
return this.mask;
}
public char getSymbol() {
return this.symbol;
}
public String getName() {
return this.name;
}
public String getDisplayName(Context context) {
return Lexicon.make(Sys.getBajaModule(), context).getText(this.lexKey);
}
public String toString() {
return this.name;
}
Flag(int n, char c, String string) {
this.mask = n;
this.symbol = c;
this.name = string;
this.lexKey = "flag." + string;
}
}
}
@@ -0,0 +1,19 @@
/*
* Decompiled with CFR 0.152.
*/
package javax.baja.sys;
import javax.baja.sys.BajaRuntimeException;
import javax.baja.sys.Slot;
public class FrozenSlotException
extends BajaRuntimeException {
public FrozenSlotException(String string) {
super(string);
}
public FrozenSlotException(Slot slot) {
super(String.valueOf(slot));
}
}
@@ -0,0 +1,18 @@
/*
* Decompiled with CFR 0.152.
*/
package javax.baja.sys;
import javax.baja.sys.LocalizableRuntimeException;
public class IllegalChildException
extends LocalizableRuntimeException {
public IllegalChildException(String string, String string2, Object[] objectArray, Throwable throwable) {
super(string, string2, objectArray, throwable);
}
public IllegalChildException(String string, String string2, Object[] objectArray) {
super(string, string2, objectArray, null);
}
}
@@ -0,0 +1,18 @@
/*
* Decompiled with CFR 0.152.
*/
package javax.baja.sys;
import javax.baja.sys.LocalizableRuntimeException;
public class IllegalNameException
extends LocalizableRuntimeException {
public IllegalNameException(String string, String string2, Object[] objectArray, Throwable throwable) {
super(string, string2, objectArray, throwable);
}
public IllegalNameException(String string, String string2, Object[] objectArray) {
super(string, string2, objectArray, null);
}
}
@@ -0,0 +1,18 @@
/*
* Decompiled with CFR 0.152.
*/
package javax.baja.sys;
import javax.baja.sys.LocalizableRuntimeException;
public class IllegalParentException
extends LocalizableRuntimeException {
public IllegalParentException(String string, String string2, Object[] objectArray, Throwable throwable) {
super(string, string2, objectArray, throwable);
}
public IllegalParentException(String string, String string2, Object[] objectArray) {
super(string, string2, objectArray, null);
}
}
@@ -0,0 +1,14 @@
/*
* Decompiled with CFR 0.152.
*/
package javax.baja.sys;
import javax.baja.sys.BajaRuntimeException;
public class InterfaceTypeException
extends BajaRuntimeException {
public InterfaceTypeException(String string) {
super(string);
}
}
@@ -0,0 +1,18 @@
/*
* Decompiled with CFR 0.152.
*/
package javax.baja.sys;
import javax.baja.sys.BajaRuntimeException;
public class InvalidEnumException
extends BajaRuntimeException {
public InvalidEnumException(String string) {
super(string);
}
public InvalidEnumException(int n) {
super(String.valueOf(n));
}
}
@@ -0,0 +1,30 @@
/*
* Decompiled with CFR 0.152.
*/
package javax.baja.sys;
import javax.baja.naming.BOrd;
import javax.baja.sys.BComponent;
import javax.baja.sys.BLink;
import javax.baja.sys.Slot;
public interface Knob {
public BLink getLink();
public BOrd getTargetOrd();
public BComponent getTargetComponent();
public String getTargetSlotName();
public Slot getTargetSlot();
public BOrd getSourceOrd();
public BComponent getSourceComponent();
public String getSourceSlotName();
public Slot getSourceSlot();
}
@@ -0,0 +1,243 @@
/*
* Decompiled with CFR 0.152.
*/
package javax.baja.sys;
import javax.baja.registry.TypeInfo;
import javax.baja.sys.Action;
import javax.baja.sys.BComponent;
import javax.baja.sys.BConversionLink;
import javax.baja.sys.BLink;
import javax.baja.sys.BVector;
import javax.baja.sys.Context;
import javax.baja.sys.Flags;
import javax.baja.sys.Property;
import javax.baja.sys.Slot;
import javax.baja.sys.Sys;
import javax.baja.sys.Topic;
import javax.baja.sys.Type;
import javax.baja.util.BCompositeAction;
import javax.baja.util.BCompositeTopic;
import javax.baja.util.Lexicon;
import javax.baja.util.Version;
public final class LinkCheck {
static final LinkCheck VALID = new LinkCheck(true);
private static final Version CONVERSION_LINK_VERSION = new Version(new int[]{3, 6, 13});
private boolean valid;
private String invalidReason;
public static final LinkCheck makeValid() {
return VALID;
}
public static final LinkCheck makeInvalid(String string) {
return new LinkCheck(string);
}
static final LinkCheck make(BComponent bComponent, Slot slot, BComponent bComponent2, Slot slot2, Context context) {
if (LinkCheck.isDuplicate(bComponent, slot, bComponent2, slot2)) {
return LinkCheck.invalid("linkcheck.duplicate", context);
}
if (slot.isAction()) {
if (slot2.isAction()) {
return LinkCheck.make(bComponent, slot.asAction(), bComponent2, slot2.asAction(), context);
}
if (slot2.isTopic()) {
return LinkCheck.make(bComponent, slot.asAction(), bComponent2, slot2.asTopic(), context);
}
if (slot2.isProperty()) {
return LinkCheck.make(bComponent, slot.asAction(), bComponent2, slot2.asProperty(), context);
}
throw new IllegalStateException();
}
if (slot.isTopic()) {
if (slot2.isAction()) {
return LinkCheck.make(bComponent, slot.asTopic(), bComponent2, slot2.asAction(), context);
}
if (slot2.isTopic()) {
return LinkCheck.make(bComponent, slot.asTopic(), bComponent2, slot2.asTopic(), context);
}
if (slot2.isProperty()) {
return LinkCheck.make(bComponent, slot.asTopic(), bComponent2, slot2.asProperty(), context);
}
throw new IllegalStateException();
}
if (slot.isProperty()) {
if (slot2.isAction()) {
return LinkCheck.make(bComponent, slot.asProperty(), bComponent2, slot2.asAction(), context);
}
if (slot2.isTopic()) {
return LinkCheck.make(bComponent, slot.asProperty(), bComponent2, slot2.asTopic(), context);
}
if (slot2.isProperty()) {
return LinkCheck.make(bComponent, slot.asProperty(), bComponent2, slot2.asProperty(), context);
}
throw new IllegalStateException();
}
throw new IllegalStateException();
}
private static final boolean isDuplicate(BComponent bComponent, Slot slot, BComponent bComponent2, Slot slot2) {
BLink[] bLinkArray = bComponent2.getLinks(slot2);
int n = 0;
while (n < bLinkArray.length) {
BLink bLink = bLinkArray[n];
if (bLink.isDirect() ? bLink.getSourceComponent() == bComponent && bLink.getSourceSlot() == slot : bLink.getSourceOrd().equals(bComponent.getHandleOrd()) && bLink.getSourceSlotName().equals(slot.getName())) {
return true;
}
++n;
}
return false;
}
private static final LinkCheck make(BComponent bComponent, Property property, BComponent bComponent2, Property property2, Context context) {
if (Flags.isReadonly(bComponent2, property2)) {
return LinkCheck.invalid("linkcheck.propReadonly", context);
}
if (property.getType().is(BComponent.TYPE) && !property.getType().is(BVector.TYPE)) {
return LinkCheck.invalid("linkcheck.propComponent", context);
}
if (bComponent2.isLinkTarget(property2) && !Flags.isFanIn(bComponent2, property2)) {
return LinkCheck.invalid("linkcheck.propAlreadyLinked", context);
}
return LinkCheck.checkType(bComponent, property, property.getType(), property2, property2.getType(), context);
}
private static final LinkCheck make(BComponent bComponent, Property property, BComponent bComponent2, Action action, Context context) {
Type type = action.getParameterType();
if (type == null) {
return VALID;
}
return LinkCheck.checkType(bComponent, property, property.getType(), action, type, context);
}
private static final LinkCheck make(BComponent bComponent, Property property, BComponent bComponent2, Topic topic, Context context) {
return LinkCheck.invalid("linkcheck.propToTopic", context);
}
private static final LinkCheck make(BComponent bComponent, Action action, BComponent bComponent2, Property property, Context context) {
return LinkCheck.invalid("linkcheck.actionToProp", context);
}
private static final LinkCheck make(BComponent bComponent, Action action, BComponent bComponent2, Action action2, Context context) {
if (LinkCheck.isCompositeAction(action)) {
return VALID;
}
Type type = action.getParameterType();
Type type2 = action2.getParameterType();
if (type2 == null) {
return VALID;
}
if (type == null) {
return LinkCheck.invalid("linkcheck.actionToActionNoArg", context);
}
return LinkCheck.checkType(bComponent, action, type, action2, type2, context);
}
private static final LinkCheck make(BComponent bComponent, Action action, BComponent bComponent2, Topic topic, Context context) {
if (LinkCheck.isCompositeTopic(topic)) {
return VALID;
}
Type type = action.getParameterType();
Type type2 = topic.getEventType();
if (type2 == null) {
return VALID;
}
if (type == null) {
return LinkCheck.invalid("linkcheck.actionToTopicNoEvent", context);
}
return LinkCheck.checkType(bComponent, action, type, topic, type2, context);
}
private static final LinkCheck make(BComponent bComponent, Topic topic, BComponent bComponent2, Property property, Context context) {
return LinkCheck.invalid("linkcheck.topicToProp", context);
}
private static final LinkCheck make(BComponent bComponent, Topic topic, BComponent bComponent2, Action action, Context context) {
Type type = topic.getEventType();
Type type2 = action.getParameterType();
if (type2 == null) {
return VALID;
}
if (type == null) {
return LinkCheck.invalid("linkcheck.topicToActionNoEvent", context);
}
return LinkCheck.checkType(bComponent, topic, type, action, type2, context);
}
private static final LinkCheck make(BComponent bComponent, Topic topic, BComponent bComponent2, Topic topic2, Context context) {
if (LinkCheck.isCompositeTopic(topic2)) {
return VALID;
}
Type type = topic.getEventType();
Type type2 = topic2.getEventType();
if (type2 == null) {
return VALID;
}
if (type == null) {
return LinkCheck.invalid("linkcheck.topicToTopicNoEvent", context);
}
return LinkCheck.checkType(bComponent, topic, type, topic2, type2, context);
}
private static final LinkCheck checkType(BComponent bComponent, Slot slot, Type type, Slot slot2, Type type2, Context context) {
Object[] objectArray;
Object object;
if (type.is(type2)) {
return VALID;
}
Version version = (Version)bComponent.fw(404, "baja", null, null, null);
if (version != null && version.compareTo(CONVERSION_LINK_VERSION) != -1 && (object = bComponent.makeLink(bComponent, slot, slot2, context)) != null && object instanceof BConversionLink) {
objectArray = Sys.getRegistry();
TypeInfo[] typeInfoArray = objectArray.getAdapters(type.getTypeInfo(), type2.getTypeInfo());
int n = 0;
while (n < typeInfoArray.length) {
if (objectArray.isAgent(typeInfoArray[n], BConversionLink.TYPE.getTypeInfo())) {
return VALID;
}
++n;
}
}
object = Lexicon.make(Sys.getBajaModule(), context.getLanguage());
objectArray = new Object[]{type, type2};
return LinkCheck.makeInvalid(((Lexicon)object).getText("linkcheck.mismatchedTypes", objectArray));
}
private static final LinkCheck invalid(String string, Context context) {
Lexicon lexicon = Lexicon.make(Sys.getBajaModule(), context);
return LinkCheck.makeInvalid(lexicon.getText(string));
}
private static final boolean isCompositeAction(Action action) {
if (action instanceof Property) {
return ((Property)((Object)action)).getDefaultValue() instanceof BCompositeAction;
}
return false;
}
private static final boolean isCompositeTopic(Topic topic) {
if (topic instanceof Property) {
return ((Property)((Object)topic)).getDefaultValue() instanceof BCompositeTopic;
}
return false;
}
public final boolean isValid() {
return this.valid;
}
public final String getInvalidReason() {
return this.invalidReason;
}
private LinkCheck(String string) {
this.valid = false;
this.invalidReason = string;
}
private LinkCheck(boolean bl) {
this.valid = bl;
}
}
@@ -0,0 +1,11 @@
/*
* Decompiled with CFR 0.152.
*/
package javax.baja.sys;
import javax.baja.sys.Context;
public interface Localizable {
public String toString(Context var1);
}
@@ -0,0 +1,85 @@
/*
* Decompiled with CFR 0.152.
*/
package javax.baja.sys;
import java.text.MessageFormat;
import javax.baja.sys.BajaException;
import javax.baja.sys.Context;
import javax.baja.sys.Localizable;
import javax.baja.util.Lexicon;
public class LocalizableException
extends BajaException
implements Localizable {
private String lexiconModule;
private String lexiconKey;
private Object[] lexiconArgs;
public String getLexiconModule() {
return this.lexiconModule;
}
public String getLexiconKey() {
return this.lexiconKey;
}
public Object[] getLexiconArguments() {
return this.lexiconArgs;
}
public String toString(Context context) {
return LocalizableException.format(this.lexiconModule, this.lexiconKey, this.lexiconArgs, context);
}
public static String format(String string, String string2, Object[] objectArray, Context context) {
try {
String string3 = Lexicon.make(string, context).get(string2, null);
if (string3 != null) {
return MessageFormat.format(string3, objectArray);
}
StringBuffer stringBuffer = new StringBuffer(string2);
if (objectArray != null) {
stringBuffer.append(" {");
int n = 0;
while (n < objectArray.length) {
if (n > 0) {
stringBuffer.append(", ");
}
stringBuffer.append(objectArray[n]);
++n;
}
stringBuffer.append(" }");
}
return stringBuffer.toString();
}
catch (Throwable throwable) {
throwable.printStackTrace();
return string2;
}
}
public LocalizableException(String string, String string2, Object[] objectArray, Throwable throwable) {
super(LocalizableException.format(string, string2, objectArray, null), throwable);
this.lexiconModule = string;
this.lexiconKey = string2;
this.lexiconArgs = objectArray;
}
public LocalizableException(String string, String string2, Object[] objectArray) {
this(string, string2, objectArray, null);
}
public LocalizableException(String string, String string2, Throwable throwable) {
this(string, string2, null, throwable);
}
public LocalizableException(String string, String string2) {
this(string, string2, null, null);
}
public LocalizableException(Lexicon lexicon, String string) {
this(lexicon.module.getModuleName(), string, null, null);
}
}
@@ -0,0 +1,53 @@
/*
* Decompiled with CFR 0.152.
*/
package javax.baja.sys;
import javax.baja.sys.BajaRuntimeException;
import javax.baja.sys.Context;
import javax.baja.sys.Localizable;
import javax.baja.sys.LocalizableException;
public class LocalizableRuntimeException
extends BajaRuntimeException
implements Localizable {
private String lexiconModule;
private String lexiconKey;
private Object[] lexiconArgs;
public String getLexiconModule() {
return this.lexiconModule;
}
public String getLexiconKey() {
return this.lexiconKey;
}
public Object[] getLexiconArguments() {
return this.lexiconArgs;
}
public String toString(Context context) {
return LocalizableException.format(this.lexiconModule, this.lexiconKey, this.lexiconArgs, context);
}
public LocalizableRuntimeException(String string, String string2, Object[] objectArray, Throwable throwable) {
super(LocalizableException.format(string, string2, objectArray, null), throwable);
this.lexiconModule = string;
this.lexiconKey = string2;
this.lexiconArgs = objectArray;
}
public LocalizableRuntimeException(String string, String string2, Object[] objectArray) {
this(string, string2, objectArray, null);
}
public LocalizableRuntimeException(String string, String string2, Throwable throwable) {
this(string, string2, null, throwable);
}
public LocalizableRuntimeException(String string, String string2) {
this(string, string2, null, null);
}
}
@@ -0,0 +1,21 @@
/*
* Decompiled with CFR 0.152.
*/
package javax.baja.sys;
import javax.baja.sys.BajaRuntimeException;
public class ModuleException
extends BajaRuntimeException {
public ModuleException(String string, Throwable throwable) {
super(string, throwable);
}
public ModuleException(String string) {
super(string);
}
public ModuleException() {
}
}
@@ -0,0 +1,17 @@
/*
* Decompiled with CFR 0.152.
*/
package javax.baja.sys;
import javax.baja.sys.ModuleException;
public class ModuleIncompatibleException
extends ModuleException {
public ModuleIncompatibleException(String string) {
super(string);
}
public ModuleIncompatibleException() {
}
}
@@ -0,0 +1,22 @@
/*
* Decompiled with CFR 0.152.
*/
package javax.baja.sys;
import javax.baja.sys.ModuleException;
public class ModuleNotFoundException
extends ModuleException {
public String getModuleName() {
return this.getMessage();
}
public ModuleNotFoundException(String string, Throwable throwable) {
super(string, throwable);
}
public ModuleNotFoundException(String string) {
super(string);
}
}
@@ -0,0 +1,20 @@
/*
* Decompiled with CFR 0.152.
*/
package javax.baja.sys;
import javax.baja.sys.BajaRuntimeException;
import javax.baja.sys.Slot;
import javax.baja.sys.Type;
public class NoSuchSlotException
extends BajaRuntimeException {
public NoSuchSlotException(String string) {
super(string);
}
public NoSuchSlotException(Type type, Slot slot) {
super(type + '.' + slot.getName());
}
}
@@ -0,0 +1,17 @@
/*
* Decompiled with CFR 0.152.
*/
package javax.baja.sys;
import javax.baja.sys.BajaRuntimeException;
public class NotRunningException
extends BajaRuntimeException {
public NotRunningException(String string) {
super(string);
}
public NotRunningException() {
}
}
@@ -0,0 +1,22 @@
/*
* Decompiled with CFR 0.152.
*/
package javax.baja.sys;
import javax.baja.sys.BValue;
import javax.baja.sys.Slot;
import javax.baja.sys.Type;
public interface Property
extends Slot {
public Type getType();
public int getTypeAccess();
public boolean isTypeFinal();
public BValue getDefaultValue();
public boolean isEquivalentToDefaultValue(BValue var1);
}
@@ -0,0 +1,21 @@
/*
* Decompiled with CFR 0.152.
*/
package javax.baja.sys;
import javax.baja.sys.BajaRuntimeException;
public class ServiceNotFoundException
extends BajaRuntimeException {
public ServiceNotFoundException(String string, Throwable throwable) {
super(string, throwable);
}
public ServiceNotFoundException(String string) {
super(string);
}
public ServiceNotFoundException() {
}
}
@@ -0,0 +1,50 @@
/*
* Decompiled with CFR 0.152.
*/
package javax.baja.sys;
import javax.baja.sys.Action;
import javax.baja.sys.BFacets;
import javax.baja.sys.Context;
import javax.baja.sys.Property;
import javax.baja.sys.Topic;
import javax.baja.sys.Type;
public interface Slot {
public static final int BOOLEAN_TYPE = 0;
public static final int INT_TYPE = 2;
public static final int LONG_TYPE = 3;
public static final int FLOAT_TYPE = 4;
public static final int DOUBLE_TYPE = 5;
public static final int STRING_TYPE = 6;
public static final int BOBJECT_TYPE = 7;
public Type getDeclaringType();
public String getName();
public String getDefaultDisplayName(Context var1);
public boolean isFrozen();
public boolean isDynamic();
public boolean isProperty();
public boolean isAction();
public boolean isTopic();
public Property asProperty();
public Action asAction();
public Topic asTopic();
public BFacets getFacets();
public boolean equals(Object var1);
public int getDefaultFlags();
}
@@ -0,0 +1,41 @@
/*
* Decompiled with CFR 0.152.
*/
package javax.baja.sys;
import javax.baja.sys.Action;
import javax.baja.sys.BObject;
import javax.baja.sys.Cursor;
import javax.baja.sys.Property;
import javax.baja.sys.Slot;
import javax.baja.sys.Topic;
public interface SlotCursor
extends Cursor {
public BObject target();
public boolean nextObject();
public Slot slot();
public Property property();
public Action action();
public Topic topic();
public int getTypeAccess();
public boolean getBoolean();
public int getInt();
public long getLong();
public float getFloat();
public double getDouble();
public String getString();
}
@@ -0,0 +1,307 @@
/*
* Decompiled with CFR 0.152.
*
* Could not load the following classes:
* javax.baja.nre.util.Array
*/
package javax.baja.sys;
import com.tridium.sys.schema.ComponentSlotMap;
import com.tridium.util.ObjectUtil;
import java.util.Collection;
import java.util.HashMap;
import java.util.Iterator;
import javax.baja.naming.BOrd;
import javax.baja.naming.BatchResolve;
import javax.baja.nre.util.Array;
import javax.baja.space.BComponentSpace;
import javax.baja.spy.SpyWriter;
import javax.baja.sys.BComponent;
import javax.baja.sys.BComponentEvent;
import javax.baja.sys.BComponentEventMask;
import javax.baja.sys.BObject;
import javax.baja.sys.Context;
/*
* Illegal identifiers - consider using --renameillegalidents true
*/
public abstract class Subscriber {
private HashMap subscriptions;
private BComponentEventMask mask;
static /* synthetic */ Class class$javax$baja$sys$BComponent;
public final synchronized boolean isSubscribed(BComponent bComponent) {
boolean bl = false;
if (this.subscriptions.get(bComponent) != null) {
bl = true;
}
return bl;
}
public final synchronized boolean isSubscribed(BComponent[] bComponentArray) {
int n = 0;
while (n < bComponentArray.length) {
if (this.subscriptions.get(bComponentArray[n]) == null) {
return false;
}
++n;
}
return true;
}
public final int getSubscriptionCount() {
return this.subscriptions.size();
}
public final synchronized BComponent[] getSubscriptions() {
Collection collection = this.subscriptions.values();
return collection.toArray(new BComponent[collection.size()]);
}
public final synchronized void subscribe(BComponent bComponent) {
this.subscribe(bComponent, 0, null);
}
public final synchronized void subscribe(BComponent bComponent, int n) {
this.subscribe(bComponent, n, null);
}
public final synchronized void subscribe(BComponent bComponent, int n, Context context) {
this.subscribe(new BComponent[]{bComponent}, n, context);
}
/*
* WARNING - Removed back jump from a try to a catch block - possible behaviour change.
* Unable to fully structure code
* Enabled aggressive block sorting
* Enabled unnecessary exception pruning
* Enabled aggressive exception aggregation
*/
public final synchronized void subscribe(BComponent[] var1_1, int var2_2, Context var3_3) {
if (var1_1.length == 0) {
return;
}
try {
var7_4 = 0;
while (true) {
block10: {
if (var7_4 < var1_1.length) break block10;
this.updateSpaceSubscription(var1_1, true, var2_2);
this.doSubscribe(var1_1, var2_2, var3_3);
** GOTO lbl-1000
}
if (this.subscriptions.get(var1_1[var7_4]) == null) {
((ComponentSlotMap)var1_1[var7_4].getSlotMap()).setPendingSubscribe(this);
}
++var7_4;
}
}
catch (Throwable var4_5) {
var5_6 = null;
var6_8 = 0;
}
while (true) {
if (var6_8 >= var1_1.length) {
throw var4_5;
}
((ComponentSlotMap)var1_1[var6_8].getSlotMap()).clearPendingSubscribe(this);
++var6_8;
}
lbl-1000:
// 1 sources
{
var5_7 = null;
var6_9 = 0;
}
while (true) {
if (var6_9 >= var1_1.length) {
return;
}
((ComponentSlotMap)var1_1[var6_9].getSlotMap()).clearPendingSubscribe(this);
++var6_9;
}
}
public final BComponent[] subscribe(BComponentSpace bComponentSpace, BOrd[] bOrdArray, int n, Context context) {
BatchResolve batchResolve = new BatchResolve(bOrdArray).resolve(bComponentSpace, context);
BComponent[] bComponentArray = new BComponent[bOrdArray.length];
int n2 = 0;
while (n2 < bComponentArray.length) {
bComponentArray[n2] = (BComponent)batchResolve.get(n2);
++n2;
}
this.subscribe(bComponentArray, n, context);
return bComponentArray;
}
private final void doSubscribe(BComponent[] bComponentArray, int n, Context context) {
int n2 = 0;
while (n2 < bComponentArray.length) {
this.doSubscribe(bComponentArray[n2], n, context);
++n2;
}
}
private final void doSubscribe(BComponent bComponent, int n, Context context) {
if (this.subscriptions.get(bComponent) == null) {
this.subscriptions.put(bComponent, bComponent);
((ComponentSlotMap)bComponent.getSlotMap()).subscribe(this);
}
try {
this.subscribed(bComponent, context);
}
catch (Throwable throwable) {
throwable.printStackTrace();
}
if (n > 0) {
bComponent.loadSlots();
BComponent[] bComponentArray = bComponent.getChildComponents();
int n2 = 0;
while (n2 < bComponentArray.length) {
this.doSubscribe(bComponentArray[n2], n - 1, context);
++n2;
}
}
}
public final synchronized void unsubscribe(BComponent bComponent) {
this.unsubscribe(bComponent, null);
}
public final synchronized void unsubscribe(BComponent bComponent, Context context) {
this.unsubscribe(new BComponent[]{bComponent}, context);
}
public final synchronized void unsubscribe(BComponent[] bComponentArray, Context context) {
if (bComponentArray.length == 0) {
return;
}
this.doUnsubscribe(bComponentArray, context);
}
public final synchronized void unsubscribeAll() {
this.unsubscribe(this.getSubscriptions(), null);
}
private final void doUnsubscribe(BComponent[] bComponentArray, Context context) {
int n = 0;
while (n < bComponentArray.length) {
if (this.isSubscribed(bComponentArray[n])) {
this.subscriptions.remove(bComponentArray[n]);
((ComponentSlotMap)bComponentArray[n].getSlotMap()).unsubscribe(this);
}
++n;
}
this.updateSpaceSubscription(bComponentArray, false, 0);
n = 0;
while (n < bComponentArray.length) {
try {
this.unsubscribed(bComponentArray[n], context);
}
catch (Throwable throwable) {
throwable.printStackTrace();
}
++n;
}
}
private final void updateSpaceSubscription(BComponent[] bComponentArray, boolean bl, int n) {
BComponentSpace bComponentSpace;
BObject bObject;
HashMap<BComponentSpace, Array> hashMap = new HashMap<BComponentSpace, Array>();
int n2 = 0;
while (n2 < bComponentArray.length) {
bObject = bComponentArray[n2];
if (bl || !((BComponent)bObject).isSubscribed()) {
bComponentSpace = ((BComponent)bObject).getComponentSpace();
Array array = (Array)hashMap.get(bComponentSpace);
if (array == null) {
Class clazz = class$javax$baja$sys$BComponent;
if (clazz == null) {
clazz = Subscriber.class("[Ljavax.baja.sys.BComponent;", false);
}
array = new Array(clazz);
hashMap.put(bComponentSpace, array);
}
array.add((Object)bObject);
}
++n2;
}
Iterator iterator = hashMap.keySet().iterator();
while (iterator.hasNext()) {
bObject = (BComponentSpace)iterator.next();
if (bObject == null) continue;
bComponentSpace = (Array)hashMap.get(bObject);
if (bl) {
((BComponentSpace)bObject).getSubscribeCallbacks().subscribe((BComponent[])bComponentSpace.trim(), n);
continue;
}
((BComponentSpace)bObject).getSubscribeCallbacks().unsubscribe((BComponent[])bComponentSpace.trim());
}
}
public final BComponentEventMask getMask() {
return this.mask;
}
public final void setMask(BComponentEventMask bComponentEventMask) {
this.mask = bComponentEventMask;
}
public abstract void event(BComponentEvent var1);
protected void subscribed(BComponent bComponent, Context context) {
}
protected void unsubscribed(BComponent bComponent, Context context) {
}
public synchronized void gc() {
int n = 0;
BComponent[] bComponentArray = this.getSubscriptions();
int n2 = 0;
while (n2 < bComponentArray.length) {
if (!bComponentArray[n2].isMounted()) {
this.unsubscribe(bComponentArray[n2], null);
++n;
}
++n2;
}
}
public void spy(SpyWriter spyWriter) {
spyWriter.startTable(true);
BComponent[] bComponentArray = this.getSubscriptions();
spyWriter.trTitle("Subscriptions (" + bComponentArray.length + " Components)", 1);
int n = 0;
while (n < bComponentArray.length) {
spyWriter.tr("<a href='" + ObjectUtil.toSpyRelative(bComponentArray[n]) + "'>" + bComponentArray[n].toPathString() + "</a>");
++n;
}
spyWriter.endTable();
}
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.subscriptions = new HashMap();
this.mask = BComponentEventMask.PROPERTY_EVENTS;
}
public Subscriber() {
this.this();
}
}
+157
View File
@@ -0,0 +1,157 @@
/*
* Decompiled with CFR 0.152.
*/
package javax.baja.sys;
import com.tridium.sys.Nre;
import com.tridium.sys.NreLib;
import com.tridium.sys.license.NLicenseManager;
import com.tridium.sys.module.NModule;
import com.tridium.sys.station.Station;
import java.io.File;
import java.net.InetAddress;
import java.security.AccessController;
import java.security.PrivilegedAction;
import javax.baja.license.LicenseException;
import javax.baja.license.LicenseManager;
import javax.baja.registry.Registry;
import javax.baja.security.Auditor;
import javax.baja.sys.BBoolean;
import javax.baja.sys.BComponent;
import javax.baja.sys.BModule;
import javax.baja.sys.BStation;
import javax.baja.sys.ModuleException;
import javax.baja.sys.ModuleNotFoundException;
import javax.baja.sys.ServiceNotFoundException;
import javax.baja.sys.Type;
import javax.baja.sys.TypeException;
import javax.baja.sys.TypeNotFoundException;
import javax.baja.util.BTypeSpec;
public final class Sys {
public static final String getLanguage() {
return Nre.language;
}
public static final void setLanguage(String string) {
if (string == null) {
throw new NullPointerException();
}
Nre.language = string;
}
public static final File getBajaHome() {
return Nre.bajaHome;
}
public static final File getUserHome() {
return Nre.userHome;
}
public static final File getCredentialsHome() {
return Nre.credentialsHome;
}
public static final File getStationHome() {
return Nre.stationHome;
}
public static final InetAddress getLocalHost() {
return NreLib.getLocalHost();
}
public static final BStation getStation() {
return Station.station;
}
public static final boolean isStationStarted() {
return Station.stationStarted;
}
public static final boolean atSteadyState() {
return Station.atSteadyState;
}
public static final Registry getRegistry() {
return Nre.registryManager;
}
public static final LicenseManager getLicenseManager() {
NLicenseManager nLicenseManager = Nre.licenseManager;
if (!nLicenseManager.getClass().getName().equals("com.tridium.sys.license.NodeLockedLicenseManager") && !nLicenseManager.getClass().getName().equals("com.tridium.sys.license.FloatingLicenseManager")) {
throw new LicenseException();
}
return nLicenseManager;
}
public static final String getHostId() {
return NreLib.getHostId();
}
public static final BModule getBajaModule() {
return BBoolean.TYPE.getModule();
}
public static final BModule getModuleForClass(Class clazz) {
NModule nModule = Nre.moduleManager.getModuleForClass(clazz);
if (nModule != null) {
return nModule.bmodule();
}
return null;
}
public static final BModule loadModule(String string) throws ModuleNotFoundException, ModuleException {
return Nre.moduleManager.loadModule(string).bmodule();
}
public static final Class loadClass(String string, String string2) throws ClassNotFoundException, ModuleException {
return Sys.loadModule(string).loadClass(string2);
}
public static final Object newInstance(String string, String string2) throws ClassNotFoundException, ModuleException, InstantiationException, IllegalAccessException {
return Sys.loadClass(string, string2).newInstance();
}
public static final BComponent getService(Type type) throws ServiceNotFoundException {
return Nre.serviceManager.getService(type.toString());
}
public static final BComponent[] getServices(Type type) throws ServiceNotFoundException {
return Nre.serviceManager.getServices(type.toString());
}
public static final Type getType(int n) throws TypeNotFoundException {
return Nre.schemaManager.getType(n);
}
public static final Type getType(Class clazz) throws TypeNotFoundException {
return Nre.schemaManager.getType(clazz);
}
public static final Type getType(String string) throws ModuleException, TypeException {
return BTypeSpec.make(string).getResolvedType();
}
public static final Type[] getTypes() {
return Nre.schemaManager.getTypes();
}
public static final Type loadType(final Class clazz) {
Type type = (Type)AccessController.doPrivileged(new PrivilegedAction(){
public final Object run() {
return Nre.schemaManager.load(clazz);
}
});
return type;
}
public static final Auditor getAuditor() {
return Nre.auditor;
}
public static final void setAuditor(Auditor auditor) {
Nre.auditor = auditor;
}
}
@@ -0,0 +1,13 @@
/*
* Decompiled with CFR 0.152.
*/
package javax.baja.sys;
import javax.baja.sys.Slot;
import javax.baja.sys.Type;
public interface Topic
extends Slot {
public Type getEventType();
}
@@ -0,0 +1,49 @@
/*
* Decompiled with CFR 0.152.
*/
package javax.baja.sys;
import javax.baja.registry.TypeInfo;
import javax.baja.sys.BModule;
import javax.baja.sys.BObject;
import javax.baja.sys.Context;
import javax.baja.util.BTypeSpec;
public interface Type {
public Type getSuperType();
public Type[] getInterfaces();
public int getId();
public BModule getModule();
public Class getTypeClass();
public String getTypeName();
public String getDisplayName(Context var1);
public boolean isAbstract();
public boolean isInterface();
public boolean isDataType();
public boolean isTransient();
public char getDataTypeSymbol();
public BObject getInstance();
public TypeInfo getTypeInfo();
public boolean is(TypeInfo var1);
public boolean is(Type var1);
public BTypeSpec getTypeSpec();
public String toString();
}
@@ -0,0 +1,18 @@
/*
* Decompiled with CFR 0.152.
*/
package javax.baja.sys;
import javax.baja.sys.BajaRuntimeException;
public class TypeException
extends BajaRuntimeException {
public TypeException(String string) {
super(string);
}
public TypeException(String string, Throwable throwable) {
super(string, throwable);
}
}
@@ -0,0 +1,21 @@
/*
* Decompiled with CFR 0.152.
*/
package javax.baja.sys;
import javax.baja.sys.BajaRuntimeException;
public class TypeIntrospectionException
extends BajaRuntimeException {
private Class cls;
public Class getIntrospectedClass() {
return this.cls;
}
public TypeIntrospectionException(Class clazz, String string) {
super(string + " [" + clazz.getName() + ']');
this.cls = clazz;
}
}
@@ -0,0 +1,14 @@
/*
* Decompiled with CFR 0.152.
*/
package javax.baja.sys;
import javax.baja.sys.TypeException;
public class TypeNotFoundException
extends TypeException {
public TypeNotFoundException(String string) {
super(string);
}
}
@@ -0,0 +1,187 @@
/*
* Decompiled with CFR 0.152.
*
* Could not load the following classes:
* javax.baja.nre.util.Array
*/
package javax.baja.sys;
import java.security.InvalidParameterException;
import javax.baja.nre.util.Array;
import javax.baja.space.BComponentSpace;
import javax.baja.spy.SpyWriter;
import javax.baja.sys.BComponent;
import javax.baja.sys.BComponentEvent;
import javax.baja.sys.BComponentEventMask;
import javax.baja.sys.Context;
import javax.baja.sys.Type;
/*
* Illegal identifiers - consider using --renameillegalidents true
*/
public abstract class TypeSubscriber {
private Array subscriptions;
private BComponentSpace space;
private BComponentEventMask mask;
static /* synthetic */ Class class$javax$baja$sys$Type;
public final synchronized boolean isSubscribed(Type type) {
return this.subscriptions.contains((Object)type);
}
public final synchronized boolean isSubscribed(Type[] typeArray) {
int n = 0;
while (n < typeArray.length) {
if (!this.isSubscribed(typeArray[n])) {
return false;
}
++n;
}
return true;
}
public final int getSubscriptionCount() {
return this.subscriptions.size();
}
public final synchronized Type[] getSubscriptions() {
Type[] typeArray = (Type[])this.subscriptions.array();
Type[] typeArray2 = new Type[this.subscriptions.size()];
System.arraycopy(typeArray, 0, typeArray2, 0, this.subscriptions.size());
return typeArray2;
}
public final synchronized void subscribe(Type type, Context context) {
if (!type.is(BComponent.TYPE)) {
throw new InvalidParameterException(type + " is not a BComponent type");
}
this.subscribe(new Type[]{type}, context);
}
public final synchronized void subscribe(Type[] typeArray, Context context) {
if (typeArray.length == 0) {
return;
}
int n = 0;
while (n < typeArray.length) {
if (!typeArray[n].is(BComponent.TYPE)) {
throw new InvalidParameterException(typeArray[n] + " is not a BComponent type");
}
++n;
}
this.updateSpaceSubscription(typeArray, true);
n = 0;
while (n < typeArray.length) {
if (this.subscriptions.contains((Object)typeArray[n])) {
return;
}
this.subscriptions.add((Object)typeArray[n]);
try {
this.subscribed(typeArray[n], context);
}
catch (Throwable throwable) {
throwable.printStackTrace();
}
++n;
}
}
public final synchronized void unsubscribe(Type type) {
this.unsubscribe(type, null);
}
public final synchronized void unsubscribe(Type type, Context context) {
this.unsubscribe(new Type[]{type}, context);
}
public final synchronized void unsubscribe(Type[] typeArray, Context context) {
if (typeArray.length == 0) {
return;
}
this.updateSpaceSubscription(typeArray, false);
int n = 0;
while (n < typeArray.length) {
this.subscriptions.remove((Object)typeArray[n]);
try {
this.unsubscribed(typeArray[n], context);
}
catch (Throwable throwable) {
throwable.printStackTrace();
}
++n;
}
}
public final synchronized void unsubscribeAll() {
this.unsubscribe(this.getSubscriptions(), null);
}
private final void updateSpaceSubscription(Type[] typeArray, boolean bl) {
if (this.space != null) {
if (bl) {
this.space.subscribe(typeArray, this);
} else {
this.space.unsubscribe(typeArray, this);
}
}
}
public final BComponentEventMask getMask() {
return this.mask;
}
public final synchronized void setMask(BComponentEventMask bComponentEventMask) {
this.mask = bComponentEventMask;
if (this.space != null && this.subscriptions.size() > 0) {
this.space.updateSubscription(this.getSubscriptions(), this);
}
}
public abstract void event(BComponentEvent var1);
protected void subscribed(Type type, Context context) {
}
protected void unsubscribed(Type type, Context context) {
}
public void spy(SpyWriter spyWriter) {
spyWriter.startTable(true);
Type[] typeArray = this.getSubscriptions();
spyWriter.trTitle("Subscriptions (" + typeArray.length + " Types)", 1);
int n = 0;
while (n < typeArray.length) {
spyWriter.tr(typeArray[n].getTypeSpec().toString());
++n;
}
spyWriter.endTable();
}
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$javax$baja$sys$Type;
if (clazz == null) {
clazz = class$javax$baja$sys$Type = TypeSubscriber.class("[Ljavax.baja.sys.Type;", false);
}
this.subscriptions = new Array(clazz);
this.mask = BComponentEventMask.SELF_EVENTS;
}
public TypeSubscriber(BComponentSpace bComponentSpace) {
this.this();
this.space = bComponentSpace;
}
}