Hi,
There are two possibilities:
First:
Create your own helper class within the jackrabbit-core-...jar to access the
non public BLOBFileValue class and its non public method getDataIdentifier.
Second:
Reimplement the jackrabbit mechanism:
FileDataStore
addRecord(InputStream input) {
...
// Copy the stream to the temporary file and calculate the
// stream length and the message digest of the stream
long length = 0;
MessageDigest digest = MessageDigest.getInstance(DIGEST);
OutputStream output = new DigestOutputStream(
new FileOutputStream(temporary), digest);
try {
length = IOUtils.copyLarge(input, output);
} finally {
output.close();
}
DataIdentifier identifier = new DataIdentifier(digest.digest());
...
Kindly Regards, Robert ;)
-----Ursprüngliche Nachricht-----
Von: yun [mailto:[email protected]]
Gesendet: Dienstag, 4. Januar 2011 04:32
An: [email protected]
Betreff: Retrieve coded filename from datastore
Hi,
I know that we are not suppose to get the coded file from
"jackrabbit\repository\datastore" folder where the raw files are stored by
the jack rabbit repository. Example of a filename would be:
52cd141937e037b89c8989d1411f63e98bcb7981
The file name is named by using the "52\cd\14" in
"repository\datastore\52\cd\14" which is the folder where the file is
stored.
Question:
Is there a way to obtain this name through some java codes when writing the
file to the repository?
I need this file name as a backup option if ever the repository is
corrupted, I would still have an option to retrieve the file from the
folders according to the filename. Thanks.
--
View this message in context:
http://jackrabbit.510166.n4.nabble.com/Retrieve-coded-filename-from-datastore-tp3173010p3173010.html
Sent from the Jackrabbit - Users mailing list archive at Nabble.com.