private synchronized void snapshotDisabledTable(SnapshotDescription snapshot) throws IOException {
    // setup the snapshot
    prepareWorkingDirectory(snapshot);

    // set the snapshot to be a disabled snapshot, since the client doesn't know about that
    snapshot = snapshot.toBuilder().setType(Type.DISABLED).build();

    // Take the snapshot of the disabled table
    DisabledTableSnapshotHandler handler = new DisabledTableSnapshotHandler(snapshot, master, this);
    snapshotTable(snapshot, handler);
  }
Take a snapshot of a disabled table.
@param snapshot description of the snapshot to take. Modified to be {@link Type#DISABLED}.
@throws IOException if the snapshot could not be started or filesystem for snapshot temporary
                    directory could not be determined
hbase-server/src/main/java/org/apache/hadoop/hbase/master/snapshot/SnapshotManager.java