## org.apache.poi.poifs.filesystem
Class EntryUtils

    java.lang.Object
      org.apache.poi.poifs.filesystem.EntryUtils

    @Internal
    public class EntryUtils

extends java.lang.Object

Constructor Summary
`EntryUtils()`

Method Summary
`static boolean` `areDirectoriesIdentical(DirectoryEntry dirA, DirectoryEntry dirB)` Checks to see if the two Directories hold the same contents.
`static boolean` `areDocumentsIdentical(DocumentEntry docA, DocumentEntry docB)` Checks to see if two Documents have the same name and the same contents.
`static void` `copyNodeRecursively(Entry entry, DirectoryEntry target)` Copies an Entry into a target POIFS directory, recursively
`static void` `copyNodes(DirectoryEntry sourceRoot, DirectoryEntry targetRoot)` Copies all the nodes from one POIFS Directory to another
`static void` `copyNodes(DirectoryEntry sourceRoot, DirectoryEntry targetRoot, java.util.List<java.lang.String> excepts)` Deprecated. use `FilteringDirectoryNode` instead
`static void` `copyNodes(FilteringDirectoryNode filteredSource, FilteringDirectoryNode filteredTarget)` Copies nodes from one Directory to the other minus the excepts
`static void` `copyNodes(POIFSFileSystem source, POIFSFileSystem target)` Copies all nodes from one POIFS to the other
`static void` `copyNodes(POIFSFileSystem source, POIFSFileSystem target, java.util.List<java.lang.String> excepts)` Copies nodes from one POIFS to the other, minus the excepts.

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### EntryUtils

    public EntryUtils()

Method Detail

### copyNodeRecursively

    @Internal
    public static void copyNodeRecursively(Entry entry,
                                                    DirectoryEntry target)
                                    throws java.io.IOException

  Copies an Entry into a target POIFS directory, recursively

  Throws:
    `java.io.IOException`

### copyNodes

    public static void copyNodes(DirectoryEntry sourceRoot,
                                 DirectoryEntry targetRoot)
                          throws java.io.IOException

  Copies all the nodes from one POIFS Directory to another

  Parameters:
    `sourceRoot` - is the source Directory to copy from
    `targetRoot` - is the target Directory to copy to
  Throws:
    `java.io.IOException`

### copyNodes

    public static void copyNodes(FilteringDirectoryNode filteredSource,
                                 FilteringDirectoryNode filteredTarget)
                          throws java.io.IOException

  Copies nodes from one Directory to the other minus the excepts

  Parameters:
    `filteredSource` - The filtering source Directory to copy from
    `filteredTarget` - The filtering target Directory to copy to
  Throws:
    `java.io.IOException`

### copyNodes

    public static void copyNodes(DirectoryEntry sourceRoot,
                                 DirectoryEntry targetRoot,
                                 java.util.List<java.lang.String> excepts)
                          throws java.io.IOException

  Deprecated. use `FilteringDirectoryNode` instead

  Copies nodes from one Directory to the other minus the excepts

  Parameters:
    `sourceRoot` - is the source Directory to copy from
    `targetRoot` - is the target Directory to copy to
    `excepts` - is a list of Strings specifying what nodes NOT to copy
  Throws:
    `java.io.IOException`

### copyNodes

    public static void copyNodes(POIFSFileSystem source,
                                 POIFSFileSystem target)
                          throws java.io.IOException

  Copies all nodes from one POIFS to the other

  Parameters:
    `source` - is the source POIFS to copy from
    `target` - is the target POIFS to copy to
  Throws:
    `java.io.IOException`

### copyNodes

    public static void copyNodes(POIFSFileSystem source,
                                 POIFSFileSystem target,
                                 java.util.List<java.lang.String> excepts)
                          throws java.io.IOException

  Copies nodes from one POIFS to the other, minus the excepts. This delegates the filtering work to `FilteringDirectoryNode`, so excepts can be of the form "NodeToExclude" or "FilteringDirectory/ExcludedChildNode"

  Parameters:
    `source` - is the source POIFS to copy from
    `target` - is the target POIFS to copy to
    `excepts` - is a list of Entry Names to be excluded from the copy
  Throws:
    `java.io.IOException`

### areDirectoriesIdentical

    public static boolean areDirectoriesIdentical(DirectoryEntry dirA,
                                                  DirectoryEntry dirB)

  Checks to see if the two Directories hold the same contents. For this to be true, they must have entries with the same names, no entries in one but not the other, and the size+contents of each entry must match, and they must share names. To exclude certain parts of the Directory from being checked, use a `FilteringDirectoryNode`

### areDocumentsIdentical

    public static boolean areDocumentsIdentical(DocumentEntry docA,
                                                DocumentEntry docB)
                                         throws java.io.IOException

  Checks to see if two Documents have the same name and the same contents. (Their parent directories are not checked)

  Throws:
    `java.io.IOException`

Copyright 2012 The Apache Software Foundation or its licensors, as applicable.