TrueZIP Kernel 7.0-rc1

de.schlichtherle.truezip.fs.archive
Class FsArchiveFileSystem.PathLink

java.lang.Object
  extended by de.schlichtherle.truezip.fs.archive.FsArchiveFileSystem.PathLink
All Implemented Interfaces:
FsArchiveFileSystemOperation<E>, Link<FsArchiveFileSystemEntry<E>>
Enclosing class:
FsArchiveFileSystem<E extends FsArchiveEntry>

private final class FsArchiveFileSystem.PathLink
extends Object
implements FsArchiveFileSystemOperation<E>

TODO: This implementation yields a potential issue: The state of the file system may be altered between the construction of an instance and the call to the run() method, which may render the operation illegal and corrupt the file system. As long as only the ArchiveControllers in the package de.schlichtherle.truezip.fs.archive.controller are used, this should not happen, however.


Nested Class Summary
 
Nested classes/interfaces inherited from interface de.schlichtherle.truezip.util.Link
Link.Type
 
Field Summary
(package private)  boolean createParents
           
(package private)  FsArchiveFileSystem.SegmentLink<E>[] links
           
(package private)  FsArchiveFileSystem.Splitter splitter
           
(package private)  long time
           
 
Constructor Summary
FsArchiveFileSystem.PathLink(String entryPath, Entry.Type entryType, boolean createParents, Entry template)
           
 
Method Summary
private  long getCurrentTimeMillis()
           
 FsArchiveFileSystemEntry<E> getTarget()
          Returns the target of this link.
private  FsArchiveFileSystem.SegmentLink<E>[] newSegmentLinks(String entryPath, Entry.Type entryType, Entry template, int level)
           
 void run()
          Executes this archive file system operation.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

splitter

final FsArchiveFileSystem.Splitter splitter

createParents

final boolean createParents

links

final FsArchiveFileSystem.SegmentLink<E extends FsArchiveEntry>[] links

time

long time
Constructor Detail

FsArchiveFileSystem.PathLink

FsArchiveFileSystem.PathLink(String entryPath,
                             Entry.Type entryType,
                             boolean createParents,
                             @CheckForNull
                             Entry template)
                       throws FsArchiveFileSystemException
Throws:
FsArchiveFileSystemException
Method Detail

newSegmentLinks

private FsArchiveFileSystem.SegmentLink<E>[] newSegmentLinks(String entryPath,
                                                             Entry.Type entryType,
                                                             @CheckForNull
                                                             Entry template,
                                                             int level)
                                                                             throws FsArchiveFileSystemException
Throws:
FsArchiveFileSystemException

run

public void run()
         throws FsArchiveFileSystemException
Description copied from interface: FsArchiveFileSystemOperation
Executes this archive file system operation.

Specified by:
run in interface FsArchiveFileSystemOperation<E extends FsArchiveEntry>
Throws:
FsArchiveFileSystemException

getCurrentTimeMillis

private long getCurrentTimeMillis()

getTarget

public FsArchiveFileSystemEntry<E> getTarget()
Description copied from interface: Link
Returns the target of this link.

The returned object reference may be null subject to the terms and conditions of sub-interfaces or implementations.

Specified by:
getTarget in interface Link<FsArchiveFileSystemEntry<E extends FsArchiveEntry>>
Returns:
The target of this link.

TrueZIP Kernel 7.0-rc1

Copyright © 2005-2011 Schlichtherle IT Services. All Rights Reserved.