liquibase-core/src/main/java/liquibase/snapshot/SnapshotGeneratorFactory.java
public <T extends DatabaseObject> T createSnapshot(T example, Database database) throws DatabaseException, InvalidExampleException {
        return createSnapshot(example, database, new SnapshotControl(database));
    }
public <T extends DatabaseObject> T createSnapshot(T example, Database database) throws DatabaseException, InvalidExampleException {
        return createSnapshot(example, database, new SnapshotControl(database));
    }
Creates a DatabaseSnapshot for a single DatabaseObject.
@param example the object to snapshot
@param database the database to work on
@param <T> the type of the object (must extend DatabaseObject)
@return the snapshot of the desired object
@throws DatabaseException if a problem occurs during snapshotting
@throws InvalidExampleException if the given catalog/schema combinations are invalid (e.g. duplicates)