package com.robotoworks.example.books.net; import com.robotoworks.mechanoid.net.JsonEntityReader; import com.robotoworks.mechanoid.net.JsonEntityReaderProvider; import java.io.IOException; import com.robotoworks.mechanoid.internal.util.JsonReader; import java.util.List; import com.robotoworks.mechanoid.internal.util.JsonToken; public class BookReader extends JsonEntityReader<Book> { public BookReader(JsonEntityReaderProvider provider) { super(provider); } public void read(JsonReader reader, Book entity) throws IOException { reader.beginObject(); while(reader.hasNext()) { String name = reader.nextName(); if(reader.peek() == JsonToken.NULL) { reader.skipValue(); continue; } if(name.equals("id")) { entity.setId(reader.nextLong()); } else if(name.equals("title")) { entity.setTitle(reader.nextString()); } else if(name.equals("description")) { entity.setDescription(reader.nextString()); } else { reader.skipValue(); } } reader.endObject(); } public void readList(JsonReader reader, List<Book> entities) throws IOException { reader.beginArray(); while(reader.hasNext()) { Book item = new Book(); read(reader, item); entities.add(item); } reader.endArray(); } }