Package org.nuxeo.ecm.platform.io.api
Interface IOManager
-
- All Superinterfaces:
Serializable
- All Known Implementing Classes:
IOManagerImpl
public interface IOManager extends Serializable
Service handling complex import/export of documents and associated resources.- Author:
- Anahide Tchertchian
-
-
Field Summary
Fields Modifier and Type Field Description static String
DOCUMENTS_ADAPTER_NAME
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description void
addAdapter(String name, IOResourceAdapter adapter)
Adds an adapter with given name and definition.Collection<DocumentRef>
copyDocumentsAndResources(String repo, Collection<DocumentRef> sources, DocumentLocation targetLocation, Collection<String> ioAdapters)
Copy documents and resources to another location (on a same machine).void
exportDocumentsAndResources(OutputStream out, String repo, Collection<DocumentRef> sources, boolean recurse, String format, Collection<String> ioAdapters)
Export documents and resources.IOResourceAdapter
getAdapter(String name)
Returns the adapter with given name.void
importDocumentsAndResources(InputStream in, String repo, DocumentRef root)
Import document and resources described by given input stream at given document location.void
importFromStream(InputStream in, DocumentLocation targetLocation, String docReaderFactoryClassName, Map<String,Object> rFactoryParams, String docWriterFactoryClassName, Map<String,Object> wFactoryParams)
void
removeAdapter(String name)
Removes adapter with given name.
-
-
-
Field Detail
-
DOCUMENTS_ADAPTER_NAME
static final String DOCUMENTS_ADAPTER_NAME
- See Also:
- Constant Field Values
-
-
Method Detail
-
getAdapter
IOResourceAdapter getAdapter(String name)
Returns the adapter with given name.
-
addAdapter
void addAdapter(String name, IOResourceAdapter adapter)
Adds an adapter with given name and definition.
-
removeAdapter
void removeAdapter(String name)
Removes adapter with given name.
-
importDocumentsAndResources
void importDocumentsAndResources(InputStream in, String repo, DocumentRef root) throws IOException
Import document and resources described by given input stream at given document location.- Parameters:
in
- stream representing the documents and resources to import. Can be a zip file of a group of export files. The service is responsible for unzipping and redirecting import to specific import services.repo
- the repository name.root
- Optional location of document that must be taken as root of the import (can be null).- Throws:
IOException
-
exportDocumentsAndResources
void exportDocumentsAndResources(OutputStream out, String repo, Collection<DocumentRef> sources, boolean recurse, String format, Collection<String> ioAdapters) throws IOException
Export documents and resources.- Parameters:
out
- stream that can be turned into a zip holding a group of file for each additional resources types.repo
- TODOsources
- locations of documents to export.recurse
- recurse into sources childrenformat
- export format. XXX see what format is actually accepted.ioAdapters
- list of adapters to use for additional resources.- Throws:
IOException
-
copyDocumentsAndResources
Collection<DocumentRef> copyDocumentsAndResources(String repo, Collection<DocumentRef> sources, DocumentLocation targetLocation, Collection<String> ioAdapters)
Copy documents and resources to another location (on a same machine).- Parameters:
repo
- the initial repository name.sources
- locations of documents to export.targetLocation
- location of the document where copies must be placed.ioAdapters
- list of adapters to use for additional resources.- Returns:
- the list of copied documents references.
-
importFromStream
void importFromStream(InputStream in, DocumentLocation targetLocation, String docReaderFactoryClassName, Map<String,Object> rFactoryParams, String docWriterFactoryClassName, Map<String,Object> wFactoryParams)
-
-