131 lines
3.1 KiB
Java
131 lines
3.1 KiB
Java
/*
|
|
* Decompiled with CFR 0.152.
|
|
*/
|
|
package com.tridium.sys.schema;
|
|
|
|
import com.tridium.sys.schema.DynamicTable;
|
|
import com.tridium.sys.schema.NTopic;
|
|
import javax.baja.sys.Action;
|
|
import javax.baja.sys.BComplex;
|
|
import javax.baja.sys.BObject;
|
|
import javax.baja.sys.Context;
|
|
import javax.baja.sys.CursorException;
|
|
import javax.baja.sys.Property;
|
|
import javax.baja.sys.Slot;
|
|
import javax.baja.sys.SlotCursor;
|
|
import javax.baja.sys.Topic;
|
|
|
|
final class TopicCursor
|
|
implements SlotCursor {
|
|
private int index = -1;
|
|
private BComplex object;
|
|
private NTopic[] frozen;
|
|
private DynamicTable dynamic;
|
|
|
|
public final BObject target() {
|
|
return this.object;
|
|
}
|
|
|
|
public final Context getContext() {
|
|
return null;
|
|
}
|
|
|
|
/*
|
|
* Unable to fully structure code
|
|
*/
|
|
public final boolean next() {
|
|
if (++this.index < this.frozen.length) {
|
|
return true;
|
|
}
|
|
if (this.dynamic != null) ** GOTO lbl8
|
|
return false;
|
|
lbl-1000:
|
|
// 1 sources
|
|
|
|
{
|
|
if (this.dynamic.slots[this.index - this.frozen.length].isTopic()) {
|
|
return true;
|
|
}
|
|
++this.index;
|
|
lbl8:
|
|
// 2 sources
|
|
|
|
** while (this.index - this.frozen.length < this.dynamic.count)
|
|
}
|
|
lbl9:
|
|
// 1 sources
|
|
|
|
return false;
|
|
}
|
|
|
|
public final boolean nextObject() {
|
|
throw new CursorException("Only for iterating through properties");
|
|
}
|
|
|
|
public final boolean nextComponent() {
|
|
throw new CursorException("Only for iterating through properties");
|
|
}
|
|
|
|
public final boolean next(Class clazz) {
|
|
throw new CursorException("Only for iterating through properties");
|
|
}
|
|
|
|
public final Slot slot() {
|
|
if (this.index < this.frozen.length) {
|
|
return this.frozen[this.index];
|
|
}
|
|
return this.dynamic.slots[this.index - this.frozen.length];
|
|
}
|
|
|
|
public final Topic topic() {
|
|
return this.slot().asTopic();
|
|
}
|
|
|
|
public final Property property() {
|
|
throw new CursorException("not property");
|
|
}
|
|
|
|
public final int getTypeAccess() {
|
|
throw new CursorException("not property");
|
|
}
|
|
|
|
public final BObject get() {
|
|
throw new CursorException("not property");
|
|
}
|
|
|
|
public final boolean getBoolean() {
|
|
throw new CursorException("not property");
|
|
}
|
|
|
|
public final int getInt() {
|
|
throw new CursorException("not property");
|
|
}
|
|
|
|
public final long getLong() {
|
|
throw new CursorException("not property");
|
|
}
|
|
|
|
public final float getFloat() {
|
|
throw new CursorException("not property");
|
|
}
|
|
|
|
public final double getDouble() {
|
|
throw new CursorException("not property");
|
|
}
|
|
|
|
public final String getString() {
|
|
throw new CursorException("not property");
|
|
}
|
|
|
|
public final Action action() {
|
|
throw new CursorException("not action");
|
|
}
|
|
|
|
TopicCursor(BComplex bComplex, NTopic[] nTopicArray, DynamicTable dynamicTable) {
|
|
this.object = bComplex;
|
|
this.frozen = nTopicArray;
|
|
this.dynamic = dynamicTable;
|
|
}
|
|
}
|
|
|