org.entityfs.zip
Class ZipAdapterFactory

java.lang.Object
  extended by org.entityfs.zip.ZipAdapterFactory
All Implemented Interfaces:
AdapterFactory

public final class ZipAdapterFactory
extends Object
implements AdapterFactory

This is the AdapterFactory for creating ZIP file system and ZIP file system entity adapters.

The createFileSystemAdapter(AdapterFactory, LogAdapterHolder, int) scans through the Zip file and creates a tree of ZipFileDirectoryNode object to represent the Zip file structure.

In_jar:
entityfs-zip

Constructor Summary
ZipAdapterFactory(ZipFile f)
           
 
Method Summary
 EntityAdapter createEntityAdapter(EntityType et, FileSystemAdapter fs, DirectoryAdapter parent, String name, Object data, boolean existsInBackend)
          Create an entity adapter object.
 FileSystemAdapter createFileSystemAdapter(AdapterFactory af, LogAdapterHolder lah, int bufSize)
          Create the Zip file system adapter.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ZipAdapterFactory

public ZipAdapterFactory(ZipFile f)
Method Detail

createFileSystemAdapter

public FileSystemAdapter createFileSystemAdapter(AdapterFactory af,
                                                 LogAdapterHolder lah,
                                                 int bufSize)
Create the Zip file system adapter.

This method scans through the Zip file and creates a tree of ZipFileDirectoryNode objects to represent the structure of the Zip file. The ZipFileDirectoryNode tree is used by the Zip file directory adapters to keep track of their contents.

Specified by:
createFileSystemAdapter in interface AdapterFactory
Parameters:
af - The file system's AdapterFactory. If capabilities have proxied the adapter factory, this instance may be different from the adapter factory receiving the call. If this method needs to create entity adapters, this instance should be used. That ensures that all capability providers get an opportunity to proxy the created adapters.
lah - The file system's LogAdapterHolder.
bufSize - The default size (in bytes) of temporary buffers that the file system might use.
Returns:
The file system's backend adapter.

createEntityAdapter

public EntityAdapter createEntityAdapter(EntityType et,
                                         FileSystemAdapter fs,
                                         DirectoryAdapter parent,
                                         String name,
                                         Object data,
                                         boolean existsInBackend)
Description copied from interface: AdapterFactory
Create an entity adapter object. This method does not create the entity itself for new entities. That is done by the directory implementation calling EntityAdapter.create() after calling this method.

Specified by:
createEntityAdapter in interface AdapterFactory
Parameters:
et - The type of entity adapter to create.
fs - The file system adapter.
parent - The adapter for the parent directory. This is set to null when creating the root directory.
name - The entity's name.
data - Extra data needed to create the entity. This may be null.
existsInBackend - Does the entity already exist in the backend? This is set to true when creating entity adapters for existing entities, false when creating entity adapters for new entities.
Returns:
An entity adapter object.