package com.scistor.datavision.analysis.util;
import java.io.IOException;
import org.apache.oozie.client.WorkflowJob.Status;
import com.fasterxml.jackson.core.JsonGenerator;
import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.databind.JsonSerializer;
import com.fasterxml.jackson.databind.SerializerProvider;
public class JsonCustomStatusFormat extends JsonSerializer<Status> {
@Override
public void serialize(Status value, JsonGenerator gen,
SerializerProvider arg2)
throws IOException, JsonProcessingException {
gen.writeString(change(value));
}
public String change(Status value) {
String format = "";
if (value.equals(Status.PREP)) {
format = "准备";
} else if (value.equals(Status.RUNNING)) {
format = "正在运行";
} else if (value.equals(Status.SUCCEEDED)) {
format = "运行成功";
} else if (value.equals(Status.KILLED)) {
format = "杀死";
} else if (value.equals(Status.FAILED)) {
format = "运行失败";
} else if (value.equals(Status.SUSPENDED)) {
format = "暂停";
}
return format;
}
}
import java.io.IOException;
import org.apache.oozie.client.WorkflowJob.Status;
import com.fasterxml.jackson.core.JsonGenerator;
import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.databind.JsonSerializer;
import com.fasterxml.jackson.databind.SerializerProvider;
public class JsonCustomStatusFormat extends JsonSerializer<Status> {
@Override
public void serialize(Status value, JsonGenerator gen,
SerializerProvider arg2)
throws IOException, JsonProcessingException {
gen.writeString(change(value));
}
public String change(Status value) {
String format = "";
if (value.equals(Status.PREP)) {
format = "准备";
} else if (value.equals(Status.RUNNING)) {
format = "正在运行";
} else if (value.equals(Status.SUCCEEDED)) {
format = "运行成功";
} else if (value.equals(Status.KILLED)) {
format = "杀死";
} else if (value.equals(Status.FAILED)) {
format = "运行失败";
} else if (value.equals(Status.SUSPENDED)) {
format = "暂停";
}
return format;
}
}
=============================================================================================================
domain的get方法上面使用注解
@JsonSerialize(using = JsonCustomStatusFormat.class)
public Status getStatus() {
return status;
}