@@ -0,0 +1,971 @@
+package cyoastudio.io;%0A%0Aimport java.io.IOException;%0Aimport java.util.List;%0A%0Aimport com.google.gson.TypeAdapter;%0Aimport com.google.gson.stream.*;%0A%0Aimport cyoastudio.data.Image;%0A%0Apublic class ImageAdapter extends TypeAdapter%3CImage%3E %7B%0A%09private List%3CString%3E usedIdentifiers;%0A%0A%09public ImageAdapter(List%3CString%3E usedIdentifiers) %7B%0A%09%09super();%0A%09%09this.usedIdentifiers = usedIdentifiers;%0A%09%7D%0A%0A%09@Override%0A%09public Image read(JsonReader reader) throws IOException %7B%0A%09%09if (reader.peek() == JsonToken.NULL) %7B%0A%09%09%09reader.nextNull();%0A%09%09%09return null;%0A%09%09%7D%0A%0A%09%09String identifier = reader.nextString();%0A%09%09if (usedIdentifiers != null) %7B%0A%09%09%09usedIdentifiers.add(identifier);%0A%09%09%7D%0A%09%09return Image.fromStorage(identifier);%0A%09%7D%0A%0A%09@Override%0A%09public void write(JsonWriter writer, Image value) throws IOException %7B%0A%09%09if (value == null) %7B%0A%09%09%09writer.nullValue();%0A%09%09%09return;%0A%09%09%7D%0A %0A%09%09if (usedIdentifiers != null) %7B%0A%09%09%09usedIdentifiers.add(value.getIdentifier());%0A%09%09%7D%0A%09%09writer.value(value.getIdentifier());%0A%09%7D%0A%0A%7D%0A

Add missing file