de.svws_nrw.csv.converter.current.NoteConverterFromIntegerSerializer Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of svws-db Show documentation
Show all versions of svws-db Show documentation
Diese Bibliothek regelt den Zugriff auf Datenbanken für die Schulverwaltungssoftware in NRW
package de.svws_nrw.csv.converter.current;
import java.io.IOException;
import com.fasterxml.jackson.core.JsonGenerator;
import com.fasterxml.jackson.databind.SerializerProvider;
import com.fasterxml.jackson.databind.ser.std.StdSerializer;
import de.svws_nrw.core.types.Note;
import de.svws_nrw.db.converter.current.NoteConverterFromInteger;
/**
* Diese Klasse ist ein Serialisierer für Noten. Sie serialisiert
* einen Wert der Aufzählung {@link Note} in die Datenbankdarstellung als
* Integer, welche eine Note ohne Tendenz repräsentiert (1-6).
*/
public final class NoteConverterFromIntegerSerializer extends StdSerializer {
private static final long serialVersionUID = 7505421606549933149L;
/**
* Erzeugt ein neues Objekt zur Serialisierung
*/
public NoteConverterFromIntegerSerializer() {
super(Note.class);
}
/**
* Erzeugt einen neuen Serialisierer unter Angabe der {@link Class}
*
* @param t das Klassen-Objekt
*/
public NoteConverterFromIntegerSerializer(final Class t) {
super(t);
}
@Override
public void serialize(final Note value, final JsonGenerator gen, final SerializerProvider provider) throws IOException {
final Integer note = NoteConverterFromInteger.instance.convertToDatabaseColumn(value);
gen.writeString((note == null) ? null : ("" + note));
}
}