Summary Table

Categories Total Count
PII 0
URL 0
DNS 0
EKL 0
IP 0
PORT 0
VsID 0
CF 0
AI 0
VPD 0
PL 0
Other 0

File Content

/*
* SeocListSerializer.java
* Copyright (c) 2017 Veterans Affairs.
*/
package gov.va.oneconsult.seoc.api.serializer;

import java.io.IOException;
import java.util.Set;

import com.fasterxml.jackson.core.JsonGenerator;
import com.fasterxml.jackson.databind.SerializerProvider;
import com.fasterxml.jackson.databind.ser.std.StdSerializer;

import gov.va.oneconsult.seoc.api.model.Seoc;
import gov.va.security.util.DataSanitizer;

/**
* Description: Serialize Collection of Seoc object.
*
* @author AbleVets
*/
@SuppressWarnings("serial")
public class SeocMinDetailsSerializer extends StdSerializer<Set<Seoc>> {
private DataSanitizer ds = new DataSanitizer();

/**
* Description: Parameterized Constructor
*
* @param t
*/
protected SeocMinDetailsSerializer(Class<Set<Seoc>> t) {

super(t);
}

/**
* Description: Default Constructor
*/
public SeocMinDetailsSerializer() {

this(null);
}

/**
* {@inheritDoc}
*/
@Override
public void serialize(Set<Seoc> seocSet, JsonGenerator jgen, SerializerProvider sp) throws IOException {
jgen.writeStartObject();
jgen.writeArrayFieldStart("Seocs");

for (Seoc seoc : seocSet) {
jgen.writeStartObject();
jgen.writeStringField("name", ds.sanitizeOutputData(seoc.getName()));
jgen.writeStringField("serviceLine", seoc.getServiceLineDescription());
jgen.writeStringField("versionNumber", seoc.getVersionNumber());
jgen.writeStringField("status", seoc.getStatusDescription());
jgen.writeEndObject();
}

jgen.writeEndArray();
jgen.writeEndObject();
}

}