TrueZIP Kernel 7.0-rc2

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)  long time
           
 
Constructor Summary
FsArchiveFileSystem.PathLink(FsEntryName name, Entry.Type type, boolean createParents, Entry template)
           
 
Method Summary
private  long getCurrentTimeMillis()
           
 FsArchiveFileSystemEntry<E> getTarget()
          Returns the target of this link.
private  FsArchiveFileSystem.SegmentLink<E>[] newSegmentLinks(FsEntryName entryName, 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

createParents

final boolean createParents

links

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

time

long time
Constructor Detail

FsArchiveFileSystem.PathLink

FsArchiveFileSystem.PathLink(FsEntryName name,
                             Entry.Type type,
                             boolean createParents,
                             @CheckForNull
                             Entry template)
                       throws FsArchiveFileSystemException
Throws:
FsArchiveFileSystemException
Method Detail

newSegmentLinks

private FsArchiveFileSystem.SegmentLink<E>[] newSegmentLinks(FsEntryName entryName,
                                                             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-rc2

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