本文整理汇总了Java中io.netty.buffer.ByteBuf.setInt方法的典型用法代码示例。如果您正苦于以下问题:Java ByteBuf.setInt方法的具体用法?Java ByteBuf.setInt怎么用?Java ByteBuf.setInt使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类io.netty.buffer.ByteBuf
的用法示例。
在下文中一共展示了ByteBuf.setInt方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: writeWithCalculatedSize
import io.netty.buffer.ByteBuf; //导入方法依赖的package包/类
private void writeWithCalculatedSize(ByteBuf buf) {
int sizeIndex = buf.writerIndex();
buf.writerIndex(sizeIndex + 4);
long tableEntrySize = 0L;
for (Map.Entry<ShortString, FieldValue> fieldEntry : properties.entrySet()) {
ShortString key = fieldEntry.getKey();
FieldValue value = fieldEntry.getValue();
tableEntrySize = tableEntrySize + key.getSize() + value.getSize();
key.write(buf);
value.write(buf);
}
buf.setInt(sizeIndex, (int) tableEntrySize);
}
示例2: encode
import io.netty.buffer.ByteBuf; //导入方法依赖的package包/类
public static int encode(ByteBuf byteBuf, int namespaceId, int serviceId, int methodId, ByteBuf metadata) {
int offset = 0;
byteBuf.setShort(offset, 1);
offset += VERSION_SIZE;
byteBuf.setInt(offset, namespaceId);
offset += NAMESPACE_ID_SIZE;
byteBuf.setInt(offset, serviceId);
offset += SERVICE_ID_SIZE;
byteBuf.setInt(offset, methodId);
offset += METHOD_ID_SIZE;
int metadataLength = metadata.readableBytes();
byteBuf.setInt(offset, metadataLength);
offset += METADATA_LENGTH_SIZE;
byteBuf.setBytes(offset, metadata);
offset += metadataLength;
byteBuf.writerIndex(offset);
return offset;
}
示例3: encode
import io.netty.buffer.ByteBuf; //导入方法依赖的package包/类
private static void encode(long statement, String query, int[] paramDataTypes, ByteBuf out) {
int pos = out.writerIndex();
out.writeByte(PARSE);
out.writeInt(0);
if(statement == 0) {
out.writeByte(0);
} else {
out.writeLong(statement);
}
Util.writeCStringUTF8(out, query);
// no parameter data types (OIDs)
if(paramDataTypes == null) {
out.writeShort(0);
} else {
// Parameter data types (OIDs)
out.writeShort(paramDataTypes.length);
for (int paramDataType : paramDataTypes) {
out.writeInt(paramDataType);
}
}
out.setInt(pos + 1, out.writerIndex() - pos - 1);
}
示例4: encode
import io.netty.buffer.ByteBuf; //导入方法依赖的package包/类
private static void encode(long statement, String portal, ByteBuf out) {
int pos = out.writerIndex();
out.writeByte(DESCRIBE);
out.writeInt(0);
if (statement != 0) {
out.writeByte('S');
out.writeLong(statement);
} else if (portal != null) {
out.writeByte('P');
Util.writeCStringUTF8(out, portal);
} else {
out.writeByte('S');
Util.writeCStringUTF8(out, "");
}
out.setInt(pos + 1, out.writerIndex() - pos- 1);
}
示例5: encode
import io.netty.buffer.ByteBuf; //导入方法依赖的package包/类
@Override
public void encode(ByteBuf out) {
int pos = out.writerIndex();
out.writeInt(0);
// protocol version
out.writeShort(3);
out.writeShort(0);
writeCString(out, BUFF_USER);
Util.writeCStringUTF8(out, username);
writeCString(out, BUFF_DATABASE);
Util.writeCStringUTF8(out, database);
writeCString(out, BUFF_APPLICATION_NAME);
writeCString(out, BUFF_VERTX_PG_CLIENT);
writeCString(out, BUFF_CLIENT_ENCODING);
writeCString(out, BUFF_UTF8);
writeCString(out, BUFF_DATE_STYLE);
writeCString(out, BUFF_ISO);
writeCString(out, BUFF_EXTRA_FLOAT_DIGITS);
writeCString(out, BUFF_2);
out.writeByte(0);
out.setInt(pos, out.writerIndex() - pos);
}
示例6: decipherXTEA
import io.netty.buffer.ByteBuf; //导入方法依赖的package包/类
/**
* Deciphers the specified {@link ByteBuf} with the given key.
*
* @param buffer The {@link ByteBuf}.
* @param key The key.
* @throws IllegalArgumentException if the key is not exactly 4 elements long.
*/
private static void decipherXTEA(ByteBuf buffer, int start, int end, int[] key) {
if (key.length != 4) {
throw new IllegalArgumentException();
}
int numQuads = (end - start) / 8;
for (int i = 0; i < numQuads; i++) {
int sum = 0x9E3779B9 * 32;
int v0 = buffer.getInt(start + i * 8);
int v1 = buffer.getInt(start + i * 8 + 4);
for (int j = 0; j < 32; j++) {
v1 -= (((v0 << 4) ^ (v0 >>> 5)) + v0) ^ (sum + key[(sum >>> 11) & 3]);
sum -= 0x9E3779B9;
v0 -= (((v1 << 4) ^ (v1 >>> 5)) + v1) ^ (sum + key[sum & 3]);
}
buffer.setInt(start + i * 8, v0);
buffer.setInt(start + i * 8 + 4, v1);
}
}
示例7: encode
import io.netty.buffer.ByteBuf; //导入方法依赖的package包/类
@Override
protected void encode(ChannelHandlerContext ctx, T msg, ByteBuf out)
throws Exception {
int lengthIndex = out.writerIndex();
// length field, will be filled in later.
out.writeInt(0);
int startIndex = out.writerIndex();
ByteBufOutputStream os = new ByteBufOutputStream(out);
TCompactProtocol thriftProtocol =
new TCompactProtocol(new TIOStreamTransport(os));
msg.write(thriftProtocol);
os.close();
int endIndex = out.writerIndex();
// update the length field
int length = endIndex - startIndex;
out.setInt(lengthIndex, length);
}
示例8: testLittleEndian
import io.netty.buffer.ByteBuf; //导入方法依赖的package包/类
@Test
public void testLittleEndian() {
final DrillConfig drillConfig = DrillConfig.create();
final BufferAllocator a = RootAllocatorFactory.newRoot(drillConfig);
final ByteBuf b = a.buffer(4);
b.setInt(0, 35);
assertEquals(b.getByte(0), 35);
assertEquals(b.getByte(1), 0);
assertEquals(b.getByte(2), 0);
assertEquals(b.getByte(3), 0);
b.release();
a.close();
}
示例9: encode
import io.netty.buffer.ByteBuf; //导入方法依赖的package包/类
private static void encode(String portal, int rowCount, ByteBuf out) {
int pos = out.writerIndex();
out.writeByte(EXECUTE);
out.writeInt(0);
if (portal != null) {
out.writeCharSequence(portal, StandardCharsets.UTF_8);
}
out.writeByte(0);
out.writeInt(rowCount); // Zero denotes "no limit" maybe for ReadStream<Row>
out.setInt(pos + 1, out.writerIndex() - pos - 1);
}
示例10: encode
import io.netty.buffer.ByteBuf; //导入方法依赖的package包/类
@Override
public void encode(ByteBuf out) {
int pos = out.writerIndex();
out.writeByte(QUERY);
out.writeInt(0);
Util.writeCStringUTF8(out, getQuery());
out.setInt(pos + 1, out.writerIndex() - pos - 1);
}
示例11: encode
import io.netty.buffer.ByteBuf; //导入方法依赖的package包/类
@Override
public void encode(ByteBuf out) {
int pos = out.writerIndex();
out.writeByte(CLOSE);
out.writeInt(0);
out.writeByte('S'); // 'S' to close a prepared statement or 'P' to close a portal
Util.writeCStringUTF8(out, statement != null ? statement : "");
out.setInt(pos + 1, out.writerIndex() - pos - 1);
}
示例12: encode
import io.netty.buffer.ByteBuf; //导入方法依赖的package包/类
@Override
public void encode(ByteBuf out) {
int pos = out.writerIndex();
out.writeInt(0);
out.writeInt(code);
out.writeInt(processId);
out.writeInt(secretKey);
out.setInt(pos, out.writerIndex() - pos);
}
示例13: encode
import io.netty.buffer.ByteBuf; //导入方法依赖的package包/类
@Override
public void encode(ByteBuf out) {
int pos = out.writerIndex();
out.writeByte(PASSWORD_MESSAGE);
out.writeInt(0);
Util.writeCStringUTF8(out, hash);
out.setInt(pos + 1, out.writerIndex() - pos- 1);
}
示例14: channelActive
import io.netty.buffer.ByteBuf; //导入方法依赖的package包/类
@Override
public void channelActive(ChannelHandlerContext ctx) throws Exception {
ByteBuf byteBuf = Unpooled.buffer();
byteBuf.writeInt(0);
byteBuf.writeInt(code);
// out.writeInt(0x12345679);
byteBuf.setInt(0, byteBuf.writerIndex());
ctx.writeAndFlush(byteBuf);
super.channelActive(ctx);
}
示例15: encode
import io.netty.buffer.ByteBuf; //导入方法依赖的package包/类
@Override
protected void encode(final ChannelHandlerContext ctx, final Object msg, final ByteBuf out) throws Exception {
int startIdx = out.writerIndex();
kryoPool.encode(out, msg);
int endIdx = out.writerIndex();
out.setInt(startIdx, endIdx - startIdx - 4);
}