Код, показанный ниже, хорошо работает, когда объект JSON
содержит jsonKey
, поскольку он был передан методу. Интересно... если есть способ получить значение, присвоенное нечувствительному к регистру представлению ключа?
Пример:
public String getOutputEventDescription(JsonElement outputEvent) throws ParserException {
return retrieveString(outputEvent, DESCRIPTION);
}
Должно работать независимо от того, определено ли DESCRIPTION как "Описание", "описание" или "DeScRipTIOn"
protected String retrieveString(JsonElement e, String jsonKey) throws ParserException {
JsonElement value = e.getAsJsonObject().get(jsonKey);
if (value == null) {
throw new ParserException("Key not found: " + jsonKey);
}
if (value.getAsString().trim().isEmpty()) {
throw new ParserException("Key is empty: " + jsonKey);
}
return e.getAsJsonObject().get(jsonKey).getAsString();
}