本文整理汇总了Java中org.apache.hadoop.hbase.util.PositionedByteRange.getOffset方法的典型用法代码示例。如果您正苦于以下问题:Java PositionedByteRange.getOffset方法的具体用法?Java PositionedByteRange.getOffset怎么用?Java PositionedByteRange.getOffset使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类org.apache.hadoop.hbase.util.PositionedByteRange
的用法示例。
在下文中一共展示了PositionedByteRange.getOffset方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: encode
import org.apache.hadoop.hbase.util.PositionedByteRange; //导入方法依赖的package包/类
@Override
public int encode(PositionedByteRange dst, T val) {
if (dst.getRemaining() < length) {
throw new IllegalArgumentException("Not enough buffer remaining. dst.offset: "
+ dst.getOffset() + " dst.length: " + dst.getLength() + " dst.position: "
+ dst.getPosition() + " max length: " + length);
}
int written = base.encode(dst, val);
if (written > length) {
throw new IllegalArgumentException("Length of encoded value (" + written
+ ") exceeds max length (" + length + ").");
}
// TODO: is the zero-padding appropriate?
for (; written < length; written++) { dst.put((byte) 0x00); }
return written;
}
示例2: decode
import org.apache.hadoop.hbase.util.PositionedByteRange; //导入方法依赖的package包/类
@Override
public T decode(PositionedByteRange src) {
if (src.getRemaining() < length) {
throw new IllegalArgumentException("Not enough buffer remaining. src.offset: "
+ src.getOffset() + " src.length: " + src.getLength() + " src.position: "
+ src.getPosition() + " max length: " + length);
}
// create a copy range limited to length bytes. boo.
PositionedByteRange b = new SimplePositionedMutableByteRange(length);
src.get(b.getBytes());
return base.decode(b);
}
示例3: terminatorPosition
import org.apache.hadoop.hbase.util.PositionedByteRange; //导入方法依赖的package包/类
/**
* Return the position at which {@code term} begins within {@code src},
* or {@code -1} if {@code term} is not found.
*/
protected int terminatorPosition(PositionedByteRange src) {
byte[] a = src.getBytes();
final int offset = src.getOffset();
int i;
SKIP: for (i = src.getPosition(); i < src.getLength(); i++) {
if (a[offset + i] != term[0]) continue;
int j;
for (j = 1; j < term.length && offset + j < src.getLength(); j++) {
if (a[offset + i + j] != term[j]) continue SKIP;
}
if (j == term.length) return i; // success
}
return -1;
}
示例4: decode
import org.apache.hadoop.hbase.util.PositionedByteRange; //导入方法依赖的package包/类
@Override
public Byte decode(PositionedByteRange src) {
byte val = src.getBytes()[src.getOffset() + src.getPosition()];
skip(src);
return val;
}