public class UninitializedMessageException extends RuntimeException
RuntimeException
because it normally represents a programming error: it happens when some code which
constructs a message fails to set all the fields. parseFrom()
methods do not throw this; they throw an
InvalidProtocolBufferException
if required fields are missing, because it is not a programming error to
receive an incomplete message. In other words, UninitializedMessageException
should never be thrown by
correct code, but InvalidProtocolBufferException
might be.Constructor and Description |
---|
UninitializedMessageException(List<String> missingFields) |
UninitializedMessageException(MessageLite message) |
Modifier and Type | Method and Description |
---|---|
InvalidProtocolBufferException |
asInvalidProtocolBufferException()
Converts this exception to an
InvalidProtocolBufferException . |
List<String> |
getMissingFields()
Get a list of human-readable names of required fields missing from this message.
|
addSuppressed, fillInStackTrace, getCause, getLocalizedMessage, getMessage, getStackTrace, getSuppressed, initCause, printStackTrace, printStackTrace, toString
public UninitializedMessageException(MessageLite message)
public InvalidProtocolBufferException asInvalidProtocolBufferException()
InvalidProtocolBufferException
. When a parsed message is missing required
fields, this should be thrown instead of UninitializedMessageException
.@Nullable public List<String> getMissingFields()