All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.lumongo.storage.rawfiles.DocumentStorage Maven / Gradle / Ivy

The newest version!
package org.lumongo.storage.rawfiles;

import org.bson.Document;
import org.lumongo.cluster.message.Lumongo;
import org.lumongo.cluster.message.Lumongo.AssociatedDocument;
import org.lumongo.cluster.message.Lumongo.FetchType;
import org.lumongo.cluster.message.Lumongo.Metadata;

import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.util.List;
import java.util.Map;

public interface DocumentStorage {
	void storeSourceDocument(String uniqueId, long timeStamp, Document document, List metaDataList) throws Exception;
	
	void storeAssociatedDocument(AssociatedDocument docs) throws Exception;
	
	List getAssociatedDocuments(String uniqueId, FetchType fetchType) throws Exception;
	
	AssociatedDocument getAssociatedDocument(String uniqueId, String filename, FetchType fetchType) throws Exception;

	void getAssociatedDocuments(OutputStream outputstream, Document filter) throws IOException;

	void storeAssociatedDocument(String uniqueId, String fileName, InputStream is, boolean compress, long timestamp, Map metadataMap)
					throws Exception;
	
	InputStream getAssociatedDocumentStream(String uniqueId, String filename);
	
	List getAssociatedFilenames(String uniqueId) throws Exception;
	
	void deleteSourceDocument(String uniqueId) throws Exception;
	
	void deleteAssociatedDocument(String uniqueId, String fileName);
	
	void deleteAssociatedDocuments(String uniqueId);
	
	void drop();
	
	void deleteAllDocuments();

	Lumongo.ResultDocument getSourceDocument(String uniqueId, FetchType fetchType) throws Exception;
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy