@Override public boolean equals(Object obj) { if (obj instanceof IIndexComponentElement) { IIndexComponentElement obj2 = (IIndexComponentElement) obj; return (position == obj2.getFieldPosition()) && (ascending == obj2.isAscending()); } return false; } }
@Override public int getSizeInRCode() { int size = 16; for (IIndexComponentElement elem : indexComponents) { size += elem.getSizeInRCode(); } return size; }
public RCodeTTIndexWrapper(ITable table, IIndexElement index) { Preconditions.checkNotNull(table); Preconditions.checkNotNull(index); this.table = table; this.index = index; for (IIndexComponentElement fld : index.getIndexComponents()) { fields.add(table.getFieldPosOrder().get(fld.getFieldPosition())); } }
public RCodeTTIndexWrapper(ITable table, IIndexElement index) { Preconditions.checkNotNull(table); Preconditions.checkNotNull(index); this.table = table; this.index = index; for (IIndexComponentElement fld : index.getIndexComponents()) { fields.add(table.getFieldPosOrder().get(fld.getFieldPosition())); } }
@Override public boolean equals(Object obj) { if (obj instanceof IIndexComponentElement) { IIndexComponentElement obj2 = (IIndexComponentElement) obj; return (position == obj2.getFieldPosition()) && (ascending == obj2.isAscending()); } return false; } }
@Override public int getSizeInRCode() { int size = 16; for (IIndexComponentElement elem : indexComponents) { size += elem.getSizeInRCode(); } return size; }
protected static IIndexElement fromDebugSegment(byte[] segment, int currentPos, int textAreaOffset, ByteOrder order) { int primary = segment[currentPos]; int flags = segment[currentPos + 1]; int componentCount = ByteBuffer.wrap(segment, currentPos + 2, Short.BYTES).order(order).getShort(); int nameOffset = ByteBuffer.wrap(segment, currentPos + 8, Integer.BYTES).order(order).getInt(); String name = nameOffset == 0 ? "" : RCodeInfo.readNullTerminatedString(segment, textAreaOffset + nameOffset); int currPos = currentPos + 16; IIndexComponentElement[] indexComponents = new IndexComponentElementV11[componentCount]; for (int zz = 0; zz < componentCount; zz++) { IIndexComponentElement component = IndexComponentElementV11.fromDebugSegment(segment, currPos, textAreaOffset, order); currPos += component.getSizeInRCode(); indexComponents[zz] = component; } return new IndexElementV11(name, primary, flags, indexComponents); }
protected static IIndexElement fromDebugSegment(byte[] segment, int currentPos, int textAreaOffset, ByteOrder order) { int primary = segment[currentPos + 14]; int flags = segment[currentPos + 15]; int componentCount = ByteBuffer.wrap(segment, currentPos + 12, Short.BYTES).order(order).getShort(); int nameOffset = ByteBuffer.wrap(segment, currentPos, Integer.BYTES).order(order).getInt(); String name = nameOffset == 0 ? "" : RCodeInfo.readNullTerminatedString(segment, textAreaOffset + nameOffset); int currPos = currentPos + 16; IIndexComponentElement[] indexComponents = new IndexComponentElementV12[componentCount]; for (int zz = 0; zz < componentCount; zz++) { IIndexComponentElement component = IndexComponentElementV12.fromDebugSegment(segment, currPos, textAreaOffset, order); currPos += component.getSizeInRCode(); indexComponents[zz] = component; } return new IndexElementV12(name, primary, flags, indexComponents); }
protected static IIndexElement fromDebugSegment(byte[] segment, int currentPos, int textAreaOffset, ByteOrder order) { int primary = segment[currentPos + 14]; int flags = segment[currentPos + 15]; int componentCount = ByteBuffer.wrap(segment, currentPos + 12, Short.BYTES).order(order).getShort(); int nameOffset = ByteBuffer.wrap(segment, currentPos, Integer.BYTES).order(order).getInt(); String name = nameOffset == 0 ? "" : RCodeInfo.readNullTerminatedString(segment, textAreaOffset + nameOffset); int currPos = currentPos + 16; IIndexComponentElement[] indexComponents = new IndexComponentElementV12[componentCount]; for (int zz = 0; zz < componentCount; zz++) { IIndexComponentElement component = IndexComponentElementV12.fromDebugSegment(segment, currPos, textAreaOffset, order); currPos += component.getSizeInRCode(); indexComponents[zz] = component; } return new IndexElementV12(name, primary, flags, indexComponents); }
protected static IIndexElement fromDebugSegment(byte[] segment, int currentPos, int textAreaOffset, ByteOrder order) { int primary = segment[currentPos]; int flags = segment[currentPos + 1]; int componentCount = ByteBuffer.wrap(segment, currentPos + 2, Short.BYTES).order(order).getShort(); int nameOffset = ByteBuffer.wrap(segment, currentPos + 8, Integer.BYTES).order(order).getInt(); String name = nameOffset == 0 ? "" : RCodeInfo.readNullTerminatedString(segment, textAreaOffset + nameOffset); int currPos = currentPos + 16; IIndexComponentElement[] indexComponents = new IndexComponentElementV11[componentCount]; for (int zz = 0; zz < componentCount; zz++) { IIndexComponentElement component = IndexComponentElementV11.fromDebugSegment(segment, currPos, textAreaOffset, order); currPos += component.getSizeInRCode(); indexComponents[zz] = component; } return new IndexElementV11(name, primary, flags, indexComponents); }