當前位置: 首頁>>代碼示例>>Java>>正文


Java ByteBufUtil.getBytes方法代碼示例

本文整理匯總了Java中io.netty.buffer.ByteBufUtil.getBytes方法的典型用法代碼示例。如果您正苦於以下問題:Java ByteBufUtil.getBytes方法的具體用法?Java ByteBufUtil.getBytes怎麽用?Java ByteBufUtil.getBytes使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在io.netty.buffer.ByteBufUtil的用法示例。


在下文中一共展示了ByteBufUtil.getBytes方法的15個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Java代碼示例。

示例1: toByteArray

import io.netty.buffer.ByteBufUtil; //導入方法依賴的package包/類
/**
 * Returns this aggregation as a byte array
 * @return a byte array
 */
public byte[] toByteArray() {
	final ByteBuf b = BufferManager.getInstance().buffer(size==-1 ? 128 : size);
	try {
		b.writeByte(sticky ? 1 : 0);
		b.writeByte(doubleType ? 1 : 0);
		b.writeLong(createTime);
		b.writeLong(period);
		b.writeByte(periodUnit.ordinal());
		values.position(0);
		b.writeBytes(values);
		b.writeByte(tags.size());
		BufferManager.writeUTF(metricName, b);
		for(Map.Entry<String, String> entry: tags.entrySet()) {
			BufferManager.writeUTF(entry.getKey(), b);
			BufferManager.writeUTF(entry.getValue(), b);
		}
		return ByteBufUtil.getBytes(b);
	} finally {
		try { b.release(); } catch (Exception x) {/* No Op */}
	}
}
 
開發者ID:nickman,項目名稱:HeliosStreams,代碼行數:26,代碼來源:StreamedMetricAggregation.java

示例2: toByteArray

import io.netty.buffer.ByteBufUtil; //導入方法依賴的package包/類
/**
 * Returns a byte array containing the serialized streammetric
 * @return a byte array 
 */
@Override
public byte[] toByteArray() {
	final ByteBuf buff = BufferManager.getInstance().directBuffer(byteSize);
	try {
		buff.writeByte(TYPE_CODE);
		writeByteArray(buff);
		if(isDoubleValue) {
			buff.writeByte(0);
			buff.writeDouble(doubleValue);
		} else {
			buff.writeByte(1);
			buff.writeLong(longValue);
		}
		return ByteBufUtil.getBytes(buff, 0, buff.readableBytes());
	} finally {
		try { buff.release(); } catch (Exception x) {/* No Op */}
	}
}
 
開發者ID:nickman,項目名稱:HeliosStreams,代碼行數:23,代碼來源:StreamedMetricValue.java

示例3: parseTemplatesShallow

import io.netty.buffer.ByteBufUtil; //導入方法依賴的package包/類
/**
 * Like above, but only retrieves the bytes and template ids
 */
public static List<Map.Entry<Integer, byte[]>> parseTemplatesShallow(ByteBuf bb) {
    final ImmutableList.Builder<Map.Entry<Integer, byte[]>> templates = ImmutableList.builder();
    int len = bb.readUnsignedShort();

    int p = 4; // flow set id and length field itself
    while (p < len) {
        final int start = bb.readerIndex();
        final int templateId = bb.readUnsignedShort();
        final int fieldCount = bb.readUnsignedShort();
        final ImmutableList.Builder<NetFlowV9FieldDef> fieldDefs = ImmutableList.builder();
        for (int i = 0; i < fieldCount; i++) {
            int fieldType = bb.readUnsignedShort();
            int fieldLength = bb.readUnsignedShort();
        }
        final byte[] bytes = ByteBufUtil.getBytes(bb, start, bb.readerIndex() - start);
        final Map.Entry<Integer, byte[]> template = Maps.immutableEntry(templateId, bytes);
        templates.add(template);

        p += 4 + fieldCount * 4;
    }

    return templates.build();
}
 
開發者ID:Graylog2,項目名稱:graylog-plugin-netflow,代碼行數:27,代碼來源:NetFlowV9Parser.java

示例4: fetchDecoderOutput

import io.netty.buffer.ByteBufUtil; //導入方法依賴的package包/類
private byte[] fetchDecoderOutput() {
    CompositeByteBuf decoded = Unpooled.compositeBuffer();
    for (;;) {
        ByteBuf buf = decoder.readInbound();
        if (buf == null) {
            break;
        }
        if (!buf.isReadable()) {
            buf.release();
            continue;
        }
        decoded.addComponent(true, buf);
    }
    byte[] ret = ByteBufUtil.getBytes(decoded);
    decoded.release();
    return ret;
}
 
開發者ID:line,項目名稱:armeria,代碼行數:18,代碼來源:ZlibStreamDecoder.java

示例5: assertReadHttpMessageHasContent

import io.netty.buffer.ByteBufUtil; //導入方法依賴的package包/類
private void assertReadHttpMessageHasContent(EmbeddedChannel embeddedChannel, String expectedContent) {
    FullHttpResponse response = (FullHttpResponse) embeddedChannel.outboundMessages().poll();
    assertNotNull("Expected response to exist, maybe you did not wait long enough?", response);
    assertNotNull("Expected response to have content " + expectedContent, response.content());
    String data = new String(ByteBufUtil.getBytes(response.content()), StandardCharsets.UTF_8);
    assertThat(data, is(expectedContent));
}
 
開發者ID:justor,項目名稱:elasticsearch_my,代碼行數:8,代碼來源:Netty4HttpPipeliningHandlerTests.java

示例6: toByteArray

import io.netty.buffer.ByteBufUtil; //導入方法依賴的package包/類
/**
 * Returns a byte array containing the serialized streammetric
 * @return a byte array 
 */
public byte[] toByteArray() {
	final ByteBuf buff = BufferManager.getInstance().directBuffer(byteSize);
	try {
		buff.writeByte(TYPE_CODE);
		writeByteArray(buff);
		return ByteBufUtil.getBytes(buff, 0, buff.readableBytes());
				
	} finally {
		try { buff.release(); } catch (Exception x) {/* No Op */}
	}
}
 
開發者ID:nickman,項目名稱:HeliosStreams,代碼行數:16,代碼來源:StreamedMetric.java

示例7: serialize

import io.netty.buffer.ByteBufUtil; //導入方法依賴的package包/類
/**
 * {@inheritDoc}
 * @see org.apache.kafka.common.serialization.Serializer#serialize(java.lang.String, java.lang.Object)
 */
@Override
public byte[] serialize(final String topic, final ByteBuf data) {
	final int len = data.readableBytes();
	try {
		final byte[] b =  ByteBufUtil.getBytes(data, 0, data.readableBytes());
		System.err.println("==== ByteBuf Ser: was:" + len + ", final:" + b.length);
		return b;
	} finally {
		data.release();
	}
}
 
開發者ID:nickman,項目名稱:HeliosStreams,代碼行數:16,代碼來源:ByteBufSerde.java

示例8: channelRead

import io.netty.buffer.ByteBufUtil; //導入方法依賴的package包/類
@Override
public void channelRead(final ChannelHandlerContext ctx, final Object msg) {
	ByteBuf buf = (ByteBuf) msg;
	String data = new String(ByteBufUtil.getBytes(buf));
	ByteBuf bufData = buf;
	
	
	if(Config.getInstance().isEncrypted() && data.contains(StringCache.HTTP)){
		data = data.replace(StringCache.HTTP, StringCache.HTTPS);
		bufData = Unpooled.wrappedBuffer(data.getBytes());
	}
	
	ProxyFrontendHandler.writeToFile("backend", ByteBufUtil.getBytes(bufData));
	
	
	inboundChannel.writeAndFlush(bufData).addListener(new ChannelFutureListener() {
		@Override
		public void operationComplete(ChannelFuture future) {
			if (future.isSuccess()) {
				ctx.channel().read();
				
			} else {
				future.channel().close();
			}
		}
	});

}
 
開發者ID:mwambler,項目名稱:xockets.io,代碼行數:29,代碼來源:ProxyBackendHandler.java

示例9: channelRead

import io.netty.buffer.ByteBufUtil; //導入方法依賴的package包/類
@Override
public void channelRead(final ChannelHandlerContext ctx, final Object msg) throws Exception {
    final ByteBuf byteBuf = (ByteBuf) msg;
    final byte[] bytes = ByteBufUtil.getBytes(byteBuf);
    final String str = new String(bytes, CharsetUtil.UTF_8);

    strFuture.set(str);
}
 
開發者ID:kgusarov,項目名稱:spring-boot-netty,代碼行數:9,代碼來源:MultipleServersIntegrationTest.java

示例10: parseOptionTemplateShallow

import io.netty.buffer.ByteBufUtil; //導入方法依賴的package包/類
public static Map.Entry<Integer, byte[]> parseOptionTemplateShallow(ByteBuf bb) {
    final int start = bb.readerIndex();
    int length = bb.readUnsignedShort();
    final int templateId = bb.readUnsignedShort();

    int optionScopeLength = bb.readUnsignedShort();
    int optionLength = bb.readUnsignedShort();

    int p = bb.readerIndex();
    int endOfScope = p + optionScopeLength;
    int endOfOption = endOfScope + optionLength;
    int endOfTemplate = p - 10 + length;

    while (bb.readerIndex() < endOfScope) {
        int scopeType = bb.readUnsignedShort();
        int scopeLength = bb.readUnsignedShort();
    }

    // skip padding
    bb.readerIndex(endOfScope);

    while (bb.readerIndex() < endOfOption) {
        int optType = bb.readUnsignedShort();
        int optLength = bb.readUnsignedShort();
    }

    // skip padding
    bb.readerIndex(endOfTemplate);

    final byte[] bytes = ByteBufUtil.getBytes(bb, start, bb.readerIndex() - start);
    return Maps.immutableEntry(templateId, bytes);
}
 
開發者ID:Graylog2,項目名稱:graylog-plugin-netflow,代碼行數:33,代碼來源:NetFlowV9Parser.java

示例11: convertToRawMessage

import io.netty.buffer.ByteBufUtil; //導入方法依賴的package包/類
private RawMessage convertToRawMessage(CodecAggregator.Result result, SocketAddress remoteAddress) {
    final ByteBuf buffer = result.getMessage();
    assertThat(buffer).isNotNull();

    final byte[] payload = ByteBufUtil.getBytes(buffer);

    return new RawMessage(payload, (InetSocketAddress) remoteAddress);
}
 
開發者ID:Graylog2,項目名稱:graylog-plugin-netflow,代碼行數:9,代碼來源:NetflowV9CodecAggregatorTest.java

示例12: uncompressedFrame

import io.netty.buffer.ByteBufUtil; //導入方法依賴的package包/類
public static byte[] uncompressedFrame(ByteBuf proto) {
    ByteBuf buf = Unpooled.buffer();
    buf.writeByte(0);
    buf.writeInt(proto.readableBytes());
    buf.writeBytes(proto);
    proto.release();
    byte[] result = ByteBufUtil.getBytes(buf);
    buf.release();
    return result;
}
 
開發者ID:line,項目名稱:armeria,代碼行數:11,代碼來源:GrpcTestUtil.java

示例13: compressedFrame

import io.netty.buffer.ByteBufUtil; //導入方法依賴的package包/類
public static byte[] compressedFrame(ByteBuf uncompressed) throws Exception {
    ByteBuf compressed = Unpooled.buffer();
    try (ByteBufInputStream is = new ByteBufInputStream(uncompressed, true);
         GZIPOutputStream os = new GZIPOutputStream(new ByteBufOutputStream(compressed))) {
        ByteStreams.copy(is, os);
    }
    ByteBuf buf = Unpooled.buffer();
    buf.writeByte(1);
    buf.writeInt(compressed.readableBytes());
    buf.writeBytes(compressed);
    compressed.release();
    byte[] result = ByteBufUtil.getBytes(buf);
    buf.release();
    return result;
}
 
開發者ID:line,項目名稱:armeria,代碼行數:16,代碼來源:GrpcTestUtil.java

示例14: array

import io.netty.buffer.ByteBufUtil; //導入方法依賴的package包/類
@Override
public byte[] array() {
    if (buf.hasArray()) {
        return buf.array();
    } else {
        return ByteBufUtil.getBytes(buf);
    }
}
 
開發者ID:line,項目名稱:armeria,代碼行數:9,代碼來源:ByteBufHttpData.java

示例15: processDevicePublish

import io.netty.buffer.ByteBufUtil; //導入方法依賴的package包/類
private void processDevicePublish(ChannelHandlerContext ctx, MqttPublishMessage mqttMsg, String topicName,
    int msgId) {
  // AdaptorToSessionActorMsg msg = null;
  int refCnt = mqttMsg.refCnt();
  int messageId = mqttMsg.variableHeader().messageId();
  log.info("[{}] refCnt: [{}], messageId: [{}]", sessionId, refCnt, messageId);
  MqttPublishMessage retainedDuplicate = mqttMsg.retainedDuplicate();
  String kafkaOutboundTopic = null;
  try {
    if (topicName.equals(DEVICE_TELEMETRY_TOPIC)) {
      // msg = adaptor.convertToActorMsg(deviceSessionCtx,
      // POST_TELEMETRY_REQUEST, mqttMsg);
      kafkaOutboundTopic = KafkaTopics.DEVICE_TELEMETRY_TOPIC;
    } else if (topicName.equals(DEVICE_ATTRIBUTES_TOPIC)) {
      kafkaOutboundTopic = KafkaTopics.DEVICE_ATTRIBUTES_TOPIC;
      // msg = adaptor.convertToActorMsg(deviceSessionCtx,
      // POST_ATTRIBUTES_REQUEST, mqttMsg);

      // MqttMessage createSubscribeResponseMessage =
      // createSubscribeResponseMessage(msgId);
      //// System.out.println(createSubscribeResponseMessage.payload());
      // ctx.writeAndFlush(createSubscribeResponseMessage);

    } else if (topicName.startsWith(DEVICE_ATTRIBUTES_REQUEST_TOPIC_PREFIX)) {
      // msg = adaptor.convertToActorMsg(deviceSessionCtx,
      // GET_ATTRIBUTES_REQUEST, mqttMsg);
      kafkaOutboundTopic = KafkaTopics.DEVICE_ATTRIBUTES_REQUEST_TOPIC_PREFIX;
      if (msgId >= 0) {
        ctx.writeAndFlush(createMqttPubAckMsg(msgId));
      }
    } else if (topicName.startsWith(DEVICE_RPC_RESPONSE_TOPIC)) {
      // msg = adaptor.convertToActorMsg(deviceSessionCtx,
      // TO_DEVICE_RPC_RESPONSE, mqttMsg);
      kafkaOutboundTopic = KafkaTopics.DEVICE_ATTRIBUTES_RESPONSE_TOPIC_PREFIX;
      if (msgId >= 0) {
        ctx.writeAndFlush(createMqttPubAckMsg(msgId));
      }
    } else if (topicName.startsWith(DEVICE_RPC_REQUESTS_TOPIC)) {
      // msg = adaptor.convertToActorMsg(deviceSessionCtx,
      // TO_SERVER_RPC_REQUEST, mqttMsg);
      kafkaOutboundTopic = KafkaTopics.DEVICE_RPC_REQUESTS_TOPIC;
      if (msgId >= 0) {
        ctx.writeAndFlush(createMqttPubAckMsg(msgId));
      }
    }
  } catch (Exception e) {
    log.warn("[{}] Failed to process publish msg [{}][{}]", sessionId, topicName, msgId, e);
  }
  if (kafkaOutboundTopic != null) {
    String payload = new String(ByteBufUtil.getBytes(retainedDuplicate.payload()));

    Set<ChannelEntity> channelEntitys = MemoryMetaPool.getChannelByTopics(topicName);
    if (channelEntitys != null) {
      for (ChannelEntity channelEntity : channelEntitys) {
        log.info("PUBLISH to ChannelEntity topic = " + topicName + " payload = " + payload);
        channelEntity.write(retainedDuplicate);
      }
    }

    Device device = deviceSessionCtx.getDevice();
    if (device != null && device.getId() != null) {
      // BasicToDeviceActorSessionMsg basicToDeviceActorSessionMsg = new
      // BasicToDeviceActorSessionMsg(
      // device, msg);
      JsonObject root = new JsonObject();
      JsonElement jsonElement = new JsonParser().parse(payload);
      root.add("d", jsonElement);
      root.addProperty("messageId", messageId);
      log.info("[{}] msg: {}", sessionId, root.toString());

      this.msgProducer.send(kafkaOutboundTopic, device.getId().toString(), root.toString());
    }
    // processor.process(basicToDeviceActorSessionMsg);
  } else {
    log.info("[{}] Closing current session due to invalid publish msg [{}][{}]", sessionId, topicName, msgId);
    ctx.close();
  }
}
 
開發者ID:osswangxining,項目名稱:iothub,代碼行數:79,代碼來源:MqttTransportHandler.java


注:本文中的io.netty.buffer.ByteBufUtil.getBytes方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。