Как вести себя в следующем случае с катарсисом?

У меня есть модель и репозиторий. Модель имеет значения геттера и сеттера, которые необходимо добавить в ответ. Моя модель выглядит следующим образом

import com.fasterxml.jackson.annotation.JsonIgnore;
import io.katharsis.resource.annotations.JsonApiId;
import io.katharsis.resource.annotations.JsonApiResource;

@JsonApiResource(type="employee") //no i18n
public class Employee { 

    @JsonApiId
    private String name;
    private int emp_id;
    private String dob;

    private String profile_url;

    private String status_message;

    public String getName() {
          return this.name;
    }
    public void setName(String name) {
          this.name = name;
    }

    public int getEmp_id() {
          return this.emp_id;
    }
    public void setEmp_id(int empid) {
          this.emp_id = empid;
    }

    public String getDob() {
          return this.dob;
    }
    public void setDob(String dob) {
          this.dob = dob;
    }

    public String getProfile_url() {
          return this.profile_url;
    }
    public void setProfile_url(String url) {
          this.profile_url = url;
    }

    public String getStatus_message() {
          return this.status_message;
    }
    public void setStatus_message(String message) {
          this.status_message = message;
    } 
 }         

Здесь переменная status_message представляет мой статус API. Ответ API должен быть таким

  1. Когда в базе данных есть сотрудник с введенным идентификатором

{name: "rajasuba", emp_id: "123", dob: "30 марта 1993", profile_url: "https:", status_message: "success"}

  1. Когда сотрудник уволился из организации, реакция должна быть такой

{name: "rajasuba", emp_id: "567", status_messsage: "уволен"}

  1. Когда такого сотрудника нет, мой ответ должен быть таким

{status_message : "Неверный идентификатор сотрудника"}

Но для всех вышеперечисленных случаев я получаю все значения атрибутов. Как я могу выборочно игнорировать значение атрибута (например, @JsonIgnore) для определенного сценария?


person Tom Taylor    schedule 15.12.2016    source источник


Ответы (1)


Я не знаю, какую версию катарсиса вы используете, но в 2.8.2 он поддерживается

person Christian Bongiorno    schedule 20.12.2016