org.apache.jackrabbit.server.io
Class VersionHandler

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

public class VersionHandler
extends DefaultHandler
implements IOHandler


Constructor Summary
VersionHandler()
           
VersionHandler(IOManager ioManager)
           
 
Method Summary
 boolean canExport(ExportContext context, boolean isCollection)
          Returns true if the export root is a node and if it contains a child node with name jcr:content in case this export is not intended for a collection.
 boolean canExport(ExportContext context, DavResource resource)
          Returns true, if this handler can run a successful export based on the specified context and resource.
 boolean canImport(ImportContext context, boolean isCollection)
          Returns true, if this handler can run a successful import based on the specified context.
 boolean canImport(ImportContext context, DavResource resource)
          Returns true, if this handler can run a successful import based on the specified context and resource.
 boolean canImport(PropertyImportContext context, boolean isCollection)
          Returns true, if this handler can run a property import based on the specified context.
 boolean exportProperties(PropertyExportContext exportContext, boolean isCollection)
          Exports properties to the given context.
protected  Node getContentNode(ExportContext context, boolean isCollection)
          Retrieves the content node that contains the data to be exported.
 boolean importContent(ImportContext context, boolean isCollection)
          Runs the import for the given context and indicates by a boolean return value, if the import could be completed successfully.
 boolean importContent(ImportContext context, DavResource resource)
          Runs the import for the given context and resource.
 Map<? extends PropEntry,?> importProperties(PropertyImportContext importContext, boolean isCollection)
          Imports, modifies or removes properties according the the change list available from the import context.
 
Methods inherited from class org.apache.jackrabbit.server.io.DefaultHandler
canExport, detect, exportContent, exportContent, exportData, exportProperties, forceCompatibleContentNodes, getCollectionNodeType, getContentNode, getContentNodeType, getIOManager, getName, getNodeType, importData, importProperties, setIOManager
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface org.apache.jackrabbit.server.io.IOHandler
exportContent, exportContent, getIOManager, getName, setIOManager
 

Constructor Detail

VersionHandler

public VersionHandler()

VersionHandler

public VersionHandler(IOManager ioManager)
Method Detail

canImport

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

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

canImport

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

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

importContent

public boolean importContent(ImportContext context,
                             boolean isCollection)
                      throws IOException
Description copied from interface: IOHandler
Runs the import for the given context and indicates by a boolean return value, if the import could be completed successfully. If the specified ImportContext does not provide a stream the implementation is free, to only import properties of to refuse the import.
Please note, that it is the responsibility of the specified ImportContext to assert, that its stream is not consumed multiple times when being passed to a chain of IOHandlers.

Specified by:
importContent in interface IOHandler
Overrides:
importContent in class DefaultHandler
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
Description copied from interface: IOHandler
Runs the import for the given context and resource. It indicates by a boolean return value, if the import could be completed successfully. If the specified ImportContext does not provide a stream the implementation is free, to only import properties of to refuse the import. A simple implementation may return the same as IOHandler.importContent(ImportContext, boolean) where the isCollection flag is determined by DavResource.isCollection()
Please note, that it is the responsibility of the specified ImportContext to assert, that its stream is not consumed multiple times when being passed to a chain of IOHandlers.

Specified by:
importContent in interface IOHandler
Overrides:
importContent in class DefaultHandler
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 class: DefaultHandler
Returns true if the export root is a node and if it contains a child node with name jcr:content in case this export is not intended for a collection.

Specified by:
canExport in interface IOHandler
Overrides:
canExport in class DefaultHandler
Parameters:
context -
isCollection -
Returns:
true if the export root is a Version node. 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
Overrides:
canExport in class DefaultHandler
Returns:
true if the export root is a Version node. False otherwise.
See Also:
IOHandler.canExport(ExportContext, DavResource)

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
Overrides:
canImport in class DefaultHandler
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
Overrides:
importProperties in class DefaultHandler
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.

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
Overrides:
exportProperties in class DefaultHandler
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)

getContentNode

protected Node getContentNode(ExportContext context,
                              boolean isCollection)
                       throws RepositoryException
Retrieves the content node that contains the data to be exported.

Overrides:
getContentNode in class DefaultHandler
Parameters:
context -
isCollection -
Returns:
content node used for the export
Throws:
RepositoryException


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