CacheEntrySerializer.java 1.75 KB
/*
 * Decompiled with CFR 0_118.
 * 
 * Could not load the following classes:
 *  com.scene7.is.util.serializers.ByteArraySerializer
 *  com.scene7.is.util.serializers.Serializer
 *  org.jetbrains.annotations.NotNull
 */
package com.scene7.is.ps.provider;

import com.scene7.is.ps.provider.CacheEntry;
import com.scene7.is.util.serializers.ByteArraySerializer;
import com.scene7.is.util.serializers.Serializer;
import java.io.DataInput;
import java.io.DataOutput;
import java.io.IOException;
import org.jetbrains.annotations.NotNull;

public class CacheEntrySerializer
implements Serializer<CacheEntry> {
    private static final Serializer<byte[]> VERSION_KEY_SERIALIZER = ByteArraySerializer.byteArraySerializer((int)10000000);
    private static final CacheEntrySerializer INSTANCE = new CacheEntrySerializer();
    private static final Serializer<byte[]> PIXEL_ARRAY_SERIALIZER = ByteArraySerializer.byteArraySerializer((int)104857600);

    @NotNull
    public static Serializer<CacheEntry> cacheEntrySerializer() {
        return INSTANCE;
    }

    public CacheEntry load(@NotNull DataInput in) throws IOException {
        CacheEntry entry = new CacheEntry();
        entry.versionKey = (byte[])VERSION_KEY_SERIALIZER.load(in);
        entry.pixels = (byte[])PIXEL_ARRAY_SERIALIZER.load(in);
        return entry;
    }

    public void store(@NotNull CacheEntry value, @NotNull DataOutput out) throws IOException {
        VERSION_KEY_SERIALIZER.store((Object)value.versionKey, out);
        PIXEL_ARRAY_SERIALIZER.store((Object)value.pixels, out);
    }

    public int dataLength() throws UnsupportedOperationException {
        throw new UnsupportedOperationException("Serialized cache entry lenght cannot be predicted");
    }

    private CacheEntrySerializer() {
    }
}