org.apache.jackrabbit.core.state.util
Interface BLOBStore

All Known Subinterfaces:
ResourceBasedBLOBStore
All Known Implementing Classes:
FileSystemBLOBStore

public interface BLOBStore

BLOBStore represents an abstract store for binary property values (BLOBs).

See Also:
ResourceBasedBLOBStore

Method Summary
 String createId(PropertyId id, int index)
          Creates a unique identifier for the BLOB data associated with the given property id and value subscript.
 InputStream get(String blobId)
          Retrieves the BLOB data with the specified id as a binary stream.
 void put(String blobId, InputStream in, long size)
          Stores the BLOB data and returns a unique identifier.
 boolean remove(String blobId)
          Removes the BLOB data with the specified id.
 

Method Detail

createId

public String createId(PropertyId id,
                       int index)
Creates a unique identifier for the BLOB data associated with the given property id and value subscript.

Parameters:
id - id of the property associated with the BLOB data
index - subscript of the value holding the BLOB data
Returns:
a string identifying the BLOB data

put

public void put(String blobId,
                InputStream in,
                long size)
         throws Exception
Stores the BLOB data and returns a unique identifier.

Parameters:
blobId - identifier of the BLOB data as returned by createId(PropertyId, int)
in - stream containing the BLOB data
size - size of the BLOB data
Throws:
Exception - if an error occured

get

public InputStream get(String blobId)
                throws Exception
Retrieves the BLOB data with the specified id as a binary stream.

Parameters:
blobId - identifier of the BLOB data as returned by createId(PropertyId, int)
Returns:
an input stream that delivers the BLOB data
Throws:
Exception - if an error occured

remove

public boolean remove(String blobId)
               throws Exception
Removes the BLOB data with the specified id.

Parameters:
blobId - identifier of the BLOB data as returned by createId(PropertyId, int)
Returns:
true if BLOB data with the given id exists and has been successfully removed, false if there's no BLOB data with the given id.
Throws:
Exception - if an error occured


Copyright © 2004-2006 The Apache Software Foundation. All Rights Reserved.