/* * 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; } }