Java 类com.google.protobuf.UninitializedMessageException 实例源码

项目:incubator-pulsar    文件:MessageIdImpl.java   
public static MessageId fromByteArray(byte[] data) throws IOException {
    checkNotNull(data);
    ByteBufCodedInputStream inputStream = ByteBufCodedInputStream.get(Unpooled.wrappedBuffer(data, 0, data.length));
    PulsarApi.MessageIdData.Builder builder = PulsarApi.MessageIdData.newBuilder();

    PulsarApi.MessageIdData idData;
    try {
        idData = builder.mergeFrom(inputStream, null).build();
    } catch (UninitializedMessageException e) {
        throw new IOException(e);
    }

    MessageIdImpl messageId;
    if (idData.hasBatchIndex()) {
        messageId = new BatchMessageIdImpl(idData.getLedgerId(), idData.getEntryId(), idData.getPartition(),
                idData.getBatchIndex());
    } else {
        messageId = new MessageIdImpl(idData.getLedgerId(), idData.getEntryId(), idData.getPartition());
    }

    inputStream.recycle();
    builder.recycle();
    idData.recycle();
    return messageId;
}
项目:r8    文件:Simpleproto.java   
private static void partialBuildFails() {
  Simple.Builder builder = Simple.newBuilder();
  builder.setId(32);
  try {
    builder.build();
  } catch (UninitializedMessageException e) {
    System.out.println("got exception");
  }
}
项目:r8    文件:Simpleproto.java   
private static void partialReadFails() throws IOException {
  ByteArrayInputStream input = new ByteArrayInputStream(WITH_MISSING_FIELD);
  Simple.Builder builder = Simple.newBuilder();
  builder.mergeDelimitedFrom(input);
  try {
    builder.build();
  } catch (UninitializedMessageException e) {
    System.out.println("got exception");
  }
}
项目:r8    文件:Simpleproto.java   
private static void partialBuildFails() {
  Simple.Builder builder = Simple.newBuilder();
  builder.setId(32);
  try {
    builder.build();
  } catch (UninitializedMessageException e) {
    System.out.println("got exception");
  }
}
项目:r8    文件:Simpleproto.java   
private static void partialReadFails() throws IOException {
  ByteArrayInputStream input = new ByteArrayInputStream(WITH_MISSING_FIELD);
  Simple.Builder builder = Simple.newBuilder();
  builder.mergeDelimitedFrom(input);
  try {
    builder.build();
  } catch (UninitializedMessageException e) {
    System.out.println("got exception");
  }
}
项目:aliyun-tablestore-java-sdk    文件:ProtocolBufferParser.java   
@Override
public Object getObject(ResponseMessage response) throws ResultParseException {

    Map<String, String> headers = response.getHeadersMap();

    String requestId = headers.get(OTS_HEADER_REQUEST_ID);
    if (requestId == null){
        throw new ClientException("The required header is missing: " + OTS_HEADER_REQUEST_ID);
    }

    try {
        Message result = message.newBuilderForType().mergeFrom(response.getContent()).buildPartial();
        if (!result.isInitialized()) {
            throw new UninitializedMessageException(
                    result).asInvalidProtocolBufferException();
        }

        if (logger.isDebugEnabled()) {
            logger.debug("PBResponseMessage: {}, RequestId: {}, TraceId: {}", result.toString(), requestId, traceId);
        }

        return new ResponseContentWithMeta(
                    result, 
                    new OTSResult(headers.get(OTS_HEADER_REQUEST_ID)));
    } catch(Exception e) {
        throw new ResultParseException(
                ResourceManager.getInstance(ServiceConstants.RESOURCE_NAME_COMMON)
                .getString("FailedToParseResponse"), e);
    }
}
项目:protobuf-el    文件:MessageTest.java   
@Test
public void testUninitializedException() throws Exception {
  try {
    messageProvider.newBuilder(TEST_REQUIRED_UNINITIALIZED_DESC).build();
    fail("Should have thrown an exception.");
  } catch (final UninitializedMessageException e) {
    assertEquals("Message missing required fields: a, b, c", e.getMessage());
  }
}
项目:protobuf-el    文件:MessageTest.java   
@Test
public void testNestedUninitializedException() throws Exception {
  try {
    messageProvider.newBuilder(TEST_REQUIRED_FOREIGN_DESC)
    .setField(fdOptionalMessage, TEST_REQUIRED_UNINITIALIZED)
    .addRepeatedField(fdRepeatedMessage, TEST_REQUIRED_UNINITIALIZED)
    .addRepeatedField(fdRepeatedMessage, TEST_REQUIRED_UNINITIALIZED).build();
    fail("Should have thrown an exception.");
  } catch (final UninitializedMessageException e) {
    assertEquals("Message missing required fields: " + "optional_message.a, "
        + "optional_message.b, " + "optional_message.c, " + "repeated_message[0].a, "
        + "repeated_message[0].b, " + "repeated_message[0].c, " + "repeated_message[1].a, "
        + "repeated_message[1].b, " + "repeated_message[1].c", e.getMessage());
  }
}
项目:protobuf-el    文件:MessageTest.java   
@Test
public void testDynamicUninitializedException() throws Exception {
  try {
    messageProvider.newBuilder(TestRequired.getDescriptor()).build();
    fail("Should have thrown an exception.");
  } catch (final UninitializedMessageException e) {
    assertEquals("Message missing required fields: a, b, c", e.getMessage());
  }
}