core/src/main/java/com/orientechnologies/orient/core/db/ODatabaseWrapperAbstract.java
@Override
  public List<String> backup(OutputStream out, Map<String, Object> options, Callable<Object> callable,
      final OCommandOutputListener iListener, int compressionLevel, int bufferSize) throws IOException {
    return underlying.backup(out, options, callable, iListener, compressionLevel, bufferSize);
  }
@Override
  public List<String> backup(OutputStream out, Map<String, Object> options, Callable<Object> callable,
      final OCommandOutputListener iListener, int compressionLevel, int bufferSize) throws IOException {
    return underlying.backup(out, options, callable, iListener, compressionLevel, bufferSize);
  }
Executes a backup of the database. During the backup the database will be frozen in read-only mode.

@param out              OutputStream used to write the backup content. Use a FileOutputStream to make the backup persistent on
disk
@param options          Backup options as Map<String, Object> object
@param callable         Callback to execute when the database is locked
@param iListener        Listener called for backup messages
@param compressionLevel ZIP Compression level between 0 (no compression) and 9 (maximum). The bigger is the compression, the
smaller will be the final backup content, but will consume more CPU and time to execute
@param bufferSize       Buffer size in bytes, the bigger is the buffer, the more efficient will be the compression

@throws IOException