Convertendo resposta JSON para POJO com Retrofit usando o formato JSend?

Eu tenho que trabalhar com uma API que usandoJSend formato.

Para encurtar a história, ele está usando códigos de status HTTP que indicam status como:

200 é sucesso406 não é autorizado

O que é bom porque posso determinar com isso se minha solicitação de API é bem-sucedida ou não.

MAS:

Como o formato JSend possui suas próprias características, também possui um pequeno indicador de status na resposta, assim:

{
    status : "success",
    data : { "post" : { "id" : 2, "title" : "Another blog post", "body" : "More content" }}
}

Portanto, ele possui um campo 'status' que TAMBÉM mostra se a solicitação da API é bem-sucedida ou não.

PROBLEMA:

Retrofit feito para analisar a resposta ao POJO, assumindo que as respostas contenham APENAS o Modelo e nenhum indicador de sucesso, assim como por exemplo: (Uma instância posterior ao Modelo)

{ "id" : 2, "title" : "Another blog post", "body" : "More content" }

Minha pergunta é:

Existe uma solução para isso? Posso pré-analisar os indicadores de status, dividir a parte 'dados' (Modelo) da resposta e permitir que ela seja adaptada para analisar apenas essa parte?

Caso contrário, eu teria que adicionar um atributo "status" a cada um dos meus modelos, o que claramente não é uma maneira fácil de percorrer, não o farei.

Devo ficar com a análise manual e usarResponseBody em vez dos meus modelos em

void onResponse(Call<T> call, Response<T> response); paraT digite paramter?

Porque dessa maneira eu posso usar.string() e converta a string em JSON e, depois disso, posso analisar meus modelos manualmente, como escrever o analisador para eles.

Eu realmente gostaria de usar o recurso Retrofit para análise automática, porque comJSend Eu simplesmente não consigo imaginar como isso poderia ser feito corretamente, de alguma maneira.

Não posso mudar a API, será assim.

questionAnswers(3)

yourAnswerToTheQuestion