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

    // Take the snapshot of the enabled table
    EnabledTableSnapshotHandler handler = new EnabledTableSnapshotHandler(snapshot, master, this);
    snapshotTable(snapshot, handler);
  }
Take a snapshot of an enabled table.
@param snapshot description of the snapshot to take.
@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