Не могу разобрать объект, когда он не нулевой - PullRequest
0 голосов
/ 14 июня 2019

Я пытаюсь проанализировать объект с помощью gson, когда он не равен нулю. Для начала, я просто вставил строковую константу для каждого поля объекта, когда пытаюсь выполнить синтаксический анализ, код не показывает ошибку иэто не продолжается

вот часть кода, отличная от этой:

мой объект - CurrentErrorList (он может быть нулевым или пустым), объявленный в другом классе, например:

@JsonAdapter(EmptyStringAsEmptyErrorTypeAdapter.class)
@SerializedName("CurrentErrorList")
CurrentErrorList currentErrorList;

Объявление объекта:

public class CurrentErrorList {

@SerializedName(value = "Error")
private Error error;
...
}

Объявление класса ошибки:

public class Error {

@SerializedName(value = "ErrorHexCode")
private String errorHexCode;

@SerializedName(value = "ErrorName")
private String errorName;

@SerializedName(value = "ErrorDescription")
private String errorDescription;
}

, а значение EmptyStringAsEmptyErrorTypeAdapter равно:

public class EmptyStringAsEmptyErrorTypeAdapter extends TypeAdapter<CurrentErrorList> {

      @Override
      public void write(JsonWriter out, CurrentErrorList value) throws IOException {
        out.beginObject();
        out.name("CurrentErrorList");
        out.value(value.getError().getErrorName());
        out.value(value.getError().getErrorHexCode());
        out.value(value.getError().getErrorDescription());
        out.endObject();
      }

      @Override
      public CurrentErrorList read(JsonReader in) throws IOException {
          CurrentErrorList result = new CurrentErrorList();
        result.setError(new Error());
        result.getError().setErrorName("");

        if (in.peek() == JsonToken.BEGIN_OBJECT) {

            result.getError().setErrorName("ErrorName");
            result.getError().setErrorName("ErrorDescription");
            result.getError().setErrorName("ErrorHexCode");

        } else {
            in.nextString();
            return null;
        }
        return result;
      }

}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...