org.apache.jackrabbit.server.io
Class DirListingExportHandler

java.lang.Object
  extended by org.apache.jackrabbit.server.io.DirListingExportHandler
All Implemented Interfaces:
IOHandler, PropertyHandler

public class DirListingExportHandler
extends Object
implements IOHandler, PropertyHandler

DirListingExportHandler represents a simple export for collections: a human-readable view listing the members.
Note: If exportContent(ExportContext, boolean) is called the view list child nodes only, without respecting their representation as DavResources.


Constructor Summary
DirListingExportHandler()
          Creates a new DirListingExportHandler
DirListingExportHandler(IOManager ioManager)
          Creates a new DirListingExportHandler
 
Method Summary
 boolean canExport(ExportContext context, boolean isCollection)
          Returns true, if this handler can run a successful export based on the specified context.
 boolean canExport(ExportContext context, DavResource resource)
          Returns true, if this handler can run a successful export based on the specified context and resource.
 boolean canExport(PropertyExportContext context, boolean isCollection)
          Always returns false.
 boolean canImport(ImportContext context, boolean isFolder)
          Always returns false
 boolean canImport(ImportContext context, DavResource resource)
          Always returns false
 boolean canImport(PropertyImportContext context, boolean isCollection)
          Returns true, if this handler can run a property import based on the specified context.
 boolean exportContent(ExportContext context, boolean isCollection)
          Runs the export for the given context.
 boolean exportContent(ExportContext context, DavResource resource)
          Runs the export for the given context and resource.
 boolean exportProperties(PropertyExportContext exportContext, boolean isCollection)
          Exports properties to the given context.
 IOManager getIOManager()
          Returns the IOManager that called this handler or null.
 String getName()
          Returns a human readable name for this IOHandler
 boolean importContent(ImportContext context, boolean isCollection)
          Does nothing and returns false
 boolean importContent(ImportContext context, DavResource resource)
          Does nothing and returns false
 Map<? extends PropEntry,?> importProperties(PropertyImportContext importContext, boolean isCollection)
          Imports, modifies or removes properties according the the change list available from the import context.
 void setIOManager(IOManager ioManager)
          Sets the IOManager that called this handler.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

DirListingExportHandler

public DirListingExportHandler()
Creates a new DirListingExportHandler


DirListingExportHandler

public DirListingExportHandler(IOManager ioManager)
Creates a new DirListingExportHandler

Parameters:
ioManager -
Method Detail

canImport

public boolean canImport(ImportContext context,
                         boolean isFolder)
Always returns false

Specified by:
canImport in interface IOHandler
Returns:
See Also:
IOHandler.canImport(ImportContext, boolean)

canImport

public boolean canImport(ImportContext context,
                         DavResource resource)
Always returns false

Specified by:
canImport in interface IOHandler
Returns:
See Also:
IOHandler.canImport(ImportContext, DavResource)

importContent

public boolean importContent(ImportContext context,
                             boolean isCollection)
                      throws IOException
Does nothing and returns false

Specified by:
importContent in interface IOHandler
Returns:
true if the import was successful.
Throws:
IOException - if an unexpected error occurs or if this method has been called although IOHandler.canImport(ImportContext, boolean) returns false.
See Also:
IOHandler.importContent(ImportContext, boolean)

importContent

public boolean importContent(ImportContext context,
                             DavResource resource)
                      throws IOException
Does nothing and returns false

Specified by:
importContent in interface IOHandler
Returns:
Throws:
IOException - if an unexpected error occurs or if this method has been called although IOHandler.canImport(ImportContext, DavResource) returns false.
See Also:
IOHandler.importContent(ImportContext, DavResource)

canExport

public boolean canExport(ExportContext context,
                         boolean isCollection)
Description copied from interface: IOHandler
Returns true, if this handler can run a successful export based on the specified context.

Specified by:
canExport in interface IOHandler
Returns:
true if the specified context is still valid and provides a export root and if 'isCollection' is true. False otherwise
See Also:
IOHandler.canExport(ExportContext, boolean)

canExport

public boolean canExport(ExportContext context,
                         DavResource resource)
Description copied from interface: IOHandler
Returns true, if this handler can run a successful export based on the specified context and resource. A simple implementation may choose to return the same as IOHandler.canExport(ExportContext, boolean) where the isCollection flag is determined by DavResource.isCollection().

Specified by:
canExport in interface IOHandler
Returns:
true if the specified context is still valid and provides a export root and if the specified resource is a collection. False otherwise.
See Also:
IOHandler.canExport(ExportContext, DavResource), DavResource.isCollection()

exportContent

public boolean exportContent(ExportContext context,
                             boolean isCollection)
                      throws IOException
Description copied from interface: IOHandler
Runs the export for the given context. It indicates by a boolean return value, if the export could be completed successfully. If the specified ExportContext does not provide a stream the implementation should set the properties only and ignore the content to be exported. A simple implementation may return the same as IOHandler.exportContent(ExportContext, boolean) where the isCollection flag is determined by DavResource.isCollection()
Please note, that it is the responsibility of the specified ExportContext to assert, that its stream is not written multiple times when being passed to a chain of IOHandlers.

Specified by:
exportContent in interface IOHandler
Returns:
Throws:
IOException - if an unexpected error occurs or if this method has been called although IOHandler.canExport(ExportContext, boolean) returns false.
See Also:
IOHandler.exportContent(ExportContext, boolean)

exportContent

public boolean exportContent(ExportContext context,
                             DavResource resource)
                      throws IOException
Description copied from interface: IOHandler
Runs the export for the given context and resource. It indicates by a boolean return value, if the export could be completed successfully. If the specified ExportContext does not provide a stream the implementation should set the properties only and ignore the content to be exported. A simple implementation may return the same as IOHandler.exportContent(ExportContext, boolean) where the isCollection flag is determined by DavResource.isCollection()
Please note, that it is the responsibility of the specified ExportContext to assert, that its stream is not written multiple times when being passed to a chain of IOHandlers.

Specified by:
exportContent in interface IOHandler
Returns:
Throws:
IOException - if an unexpected error occurs or if this method has been called although IOHandler.canExport(ExportContext, DavResource) returns false.
See Also:
IOHandler.exportContent(ExportContext, DavResource)

getIOManager

public IOManager getIOManager()
Description copied from interface: IOHandler
Returns the IOManager that called this handler or null.

Specified by:
getIOManager in interface IOHandler
Returns:
See Also:
IOHandler.getIOManager()

setIOManager

public void setIOManager(IOManager ioManager)
Description copied from interface: IOHandler
Sets the IOManager that called this handler.

Specified by:
setIOManager in interface IOHandler
See Also:
IOHandler.setIOManager(IOManager)

getName

public String getName()
Description copied from interface: IOHandler
Returns a human readable name for this IOHandler

Specified by:
getName in interface IOHandler
Returns:
See Also:
IOHandler.getName()

canExport

public boolean canExport(PropertyExportContext context,
                         boolean isCollection)
Always returns false.

Specified by:
canExport in interface PropertyHandler
Parameters:
context -
isCollection -
Returns:
always returns false.

exportProperties

public boolean exportProperties(PropertyExportContext exportContext,
                                boolean isCollection)
                         throws RepositoryException
Description copied from interface: PropertyHandler
Exports properties to the given context. Note that the export must be consistent with properties that might be exposed by content export such as defined by IOHandler.exportContent(ExportContext, boolean).

Specified by:
exportProperties in interface PropertyHandler
Returns:
true if the export succeeded.
Throws:
RepositoryException - If an attempt is made to export properties even if PropertyHandler#canExport{PropertyExportContext, boolean)} returns false or if some other unrecoverable error occurs.
See Also:
PropertyHandler.exportProperties(PropertyExportContext, boolean)

canImport

public boolean canImport(PropertyImportContext context,
                         boolean isCollection)
Description copied from interface: PropertyHandler
Returns true, if this handler can run a property import based on the specified context.

Specified by:
canImport in interface PropertyHandler
Returns:
true if this PropertyHandler can import properties given the specified parameters.

importProperties

public Map<? extends PropEntry,?> importProperties(PropertyImportContext importContext,
                                                   boolean isCollection)
                                            throws RepositoryException
Description copied from interface: PropertyHandler
Imports, modifies or removes properties according the the change list available from the import context. Note, that according to JSR 170 setting a property value to null is equivalent to its removal.

The return value of this method must be used to provided detailed information about any kind of failures.

Specified by:
importProperties in interface PropertyHandler
Returns:
Map listing those properties that failed to be updated. An empty map indicates a successful import for all properties listed in the context.
Throws:
RepositoryException - If PropertyHandler.canImport(PropertyImportContext, boolean) returns false for the given parameters or if some other unrecoverable error occured. Note, that normal failure of a property update must be reported with the return value and should not result in an exception.
See Also:
PropertyHandler.importProperties(PropertyImportContext, boolean)


Copyright © 2004-2010 The Apache Software Foundation. All Rights Reserved.