com.application.areca.metadata.trace
Class ArchiveTraceParser

java.lang.Object
  extended by com.application.areca.metadata.trace.ArchiveTraceParser

public class ArchiveTraceParser
extends java.lang.Object

FORMAT :
File : f[NAME];[SIZE];[DATE];[PERMS] -> Hash = "[SIZE];[DATE]"
Directory : d[NAME];[DATE];[PERMS] -> Hash = ""
SymLink : s[NAME];[d/f][PATH];[DATE];[PERMS] -> Hash = "[d/f][PATH]"
'@' are reencoded as '@@'
';' are reencoded as '@P'

Author:
Olivier PETRUCCI

Areca Build ID : 7299034069467778562

Constructor Summary
ArchiveTraceParser()
           
 
Method Summary
static FileMetaData extractDirectoryAttributesFromTrace(java.lang.String trace, long version)
           
static FileMetaData extractFileAttributesFromTrace(java.lang.String trace, long version)
           
static long extractFileSizeFromTrace(java.lang.String trace)
          Parses the entry's trace and extract its size.
static java.lang.String extractHashFromTrace(java.lang.String trace)
           
static FileMetaData extractSymLinkAttributesFromTrace(java.lang.String trace, long version)
           
static boolean extractSymLinkFileFromTrace(java.lang.String trace)
           
static java.lang.String extractSymLinkPathFromTrace(java.lang.String trace)
           
static boolean hasBeenModified(java.lang.String newHash, java.lang.String oldHash)
          Checks whether the entry has been modified
static java.lang.String hash(FileSystemRecoveryEntry fEntry, boolean asLink)
          Builds the hash key
protected static java.lang.String serialize(FileSystemRecoveryEntry entry, boolean trackMetaData, boolean trackSymlinks)
          Builds the key + hash
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ArchiveTraceParser

public ArchiveTraceParser()
Method Detail

extractFileSizeFromTrace

public static long extractFileSizeFromTrace(java.lang.String trace)
Parses the entry's trace and extract its size.


extractHashFromTrace

public static java.lang.String extractHashFromTrace(java.lang.String trace)

extractFileAttributesFromTrace

public static FileMetaData extractFileAttributesFromTrace(java.lang.String trace,
                                                          long version)
                                                   throws FileMetaDataSerializationException
Throws:
FileMetaDataSerializationException

extractDirectoryAttributesFromTrace

public static FileMetaData extractDirectoryAttributesFromTrace(java.lang.String trace,
                                                               long version)
                                                        throws FileMetaDataSerializationException
Throws:
FileMetaDataSerializationException

extractSymLinkAttributesFromTrace

public static FileMetaData extractSymLinkAttributesFromTrace(java.lang.String trace,
                                                             long version)
                                                      throws FileMetaDataSerializationException
Throws:
FileMetaDataSerializationException

extractSymLinkPathFromTrace

public static java.lang.String extractSymLinkPathFromTrace(java.lang.String trace)

extractSymLinkFileFromTrace

public static boolean extractSymLinkFileFromTrace(java.lang.String trace)

serialize

protected static java.lang.String serialize(FileSystemRecoveryEntry entry,
                                            boolean trackMetaData,
                                            boolean trackSymlinks)
                                     throws java.io.IOException,
                                            FileMetaDataSerializationException
Builds the key + hash

Throws:
java.io.IOException
FileMetaDataSerializationException

hash

public static java.lang.String hash(FileSystemRecoveryEntry fEntry,
                                    boolean asLink)
                             throws java.io.IOException
Builds the hash key

Throws:
java.io.IOException

hasBeenModified

public static boolean hasBeenModified(java.lang.String newHash,
                                      java.lang.String oldHash)
Checks whether the entry has been modified