se.entitymanager.logic.file
Class ZipFile

java.lang.Object
  extended by se.entitymanager.logic.file.AbstractFile
      extended by se.entitymanager.logic.file.ZipFile
All Implemented Interfaces:
EntityInterface

public class ZipFile
extends AbstractFile

An AbstractFile that represents a zip file.

All children of a zip file are instances of ZippedDirectoryFile or ZippedFile.

See Also:
ZippedFile, ZippedDirectoryFile

Field Summary
private  java.util.List children
          List of zipped files within this zip file.
private  java.io.File file
          Associated File.
private  java.util.zip.ZipFile zipFile
          Associated ZipFile.
 
Fields inherited from class se.entitymanager.logic.file.AbstractFile
fileContents, lastModified, name, parent, readable, size, writeable
 
Constructor Summary
protected ZipFile(java.io.File file, AbstractFile parent)
          Constructs an object with associated file.
 
Method Summary
protected  void copy()
          Copy this file.
protected  void delete()
          Deletes this file.
protected  java.util.List getAllChildren()
          Returns all direct child files.
 java.lang.String getFileContents()
          Returns the contents of this file.
 java.util.zip.ZipFile getZipFile()
          Returns the associated zip file.
protected  boolean isFolderish()
          Returns whether this file is folderish.
protected  void paste()
          Paste the file from the clipboard.
protected  void rename(java.lang.String newName)
          Renames this file to newName.
private  boolean rootElementOfZipFile(java.util.zip.ZipEntry zipEntry)
          Checks whether the file of the zipEntry lies in the root directory of the zip file.
 
Methods inherited from class se.entitymanager.logic.file.AbstractFile
getLastModified, getName, getParent, getSize, isReadable, isWriteable, setName, toString
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

children

private java.util.List children
List of zipped files within this zip file.

(Only files that lay in the root directory of the zip file)


zipFile

private java.util.zip.ZipFile zipFile
Associated ZipFile.


file

private java.io.File file
Associated File.

Constructor Detail

ZipFile

protected ZipFile(java.io.File file,
                  AbstractFile parent)
           throws java.io.IOException
Constructs an object with associated file.

Parameters:
file - the file object
parent - parent of this file
Throws:
java.io.IOException - if an error occurrs
Method Detail

getAllChildren

protected java.util.List getAllChildren()
                                 throws EntityNotFolderishException
Description copied from class: AbstractFile
Returns all direct child files.

The objects within the list are instances derived from AbstractFile

Specified by:
getAllChildren in class AbstractFile
Returns:
child files
Throws:
EntityNotFolderishException - if this file is not folderish

rootElementOfZipFile

private boolean rootElementOfZipFile(java.util.zip.ZipEntry zipEntry)
Checks whether the file of the zipEntry lies in the root directory of the zip file.

Parameters:
zipEntry - the zip entry
Returns:
true if the file of the zipEntry lies in the root directory of the zip file; false otherwise

getZipFile

public java.util.zip.ZipFile getZipFile()
Returns the associated zip file.

Returns:
the zip file.

isFolderish

protected boolean isFolderish()
Description copied from class: AbstractFile
Returns whether this file is folderish.

Folderish files like directories or zip files may contain other files.

Specified by:
isFolderish in class AbstractFile
Returns:
true if this file is folderish, false otherwise

rename

protected void rename(java.lang.String newName)
               throws EntityRenameFailedException
Description copied from class: AbstractFile
Renames this file to newName.

Specified by:
rename in class AbstractFile
Parameters:
newName - new name of this file.
Throws:
EntityRenameFailedException - if an error occurred

delete

protected void delete()
               throws EntityDeletionFailedException
Description copied from class: AbstractFile
Deletes this file.

Specified by:
delete in class AbstractFile
Throws:
EntityDeletionFailedException - if an error occurred

copy

protected void copy()
             throws EntityCopyCutFailedException
Description copied from class: AbstractFile
Copy this file.

Specified by:
copy in class AbstractFile
Throws:
EntityCopyCutFailedException - if an error occurred

paste

protected void paste()
              throws EntityPasteFailedException
Description copied from class: AbstractFile
Paste the file from the clipboard.

Specified by:
paste in class AbstractFile
Throws:
EntityPasteFailedException - if an error occurred

getFileContents

public java.lang.String getFileContents()
Description copied from class: AbstractFile
Returns the contents of this file.

Specified by:
getFileContents in class AbstractFile
Returns:
size of file