package org.activityinfo.server.util.blob; import com.google.common.io.InputSupplier; import java.io.IOException; import java.io.InputStream; import java.io.OutputStream; /** * Generic interface to a blob storage mechanism. * Can be backed by AppEngine or just a local directory * if AI is running on a single server */ public interface BlobService { void put(String key, InputSupplier<? extends InputStream> blob) throws IOException; OutputStream put(String key) throws IOException; InputSupplier<? extends InputStream> get(String key) throws BlobNotFoundException; }