GSON: Как получить элемент без учета регистра из Json?

Код, показанный ниже, работает хорошо, когда объект JSON содержит jsonKey в том виде, в каком он был передан методу. Интересно ... есть ли способ получить значение, присвоенное нечувствительному к регистру представлению ключа?

Пример:

public String getOutputEventDescription(JsonElement outputEvent) throws ParserException {
    return retrieveString(outputEvent, DESCRIPTION);
}

Должно работать независимо от того, определено ли DESCRIPTION как "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();
}
12
задан James Raitsev 13 June 2011 в 15:56
поделиться