liquibase-core/src/main/java/liquibase/snapshot/SnapshotGeneratorFactory.java
public DatabaseSnapshot createSnapshot(CatalogAndSchema[] examples, Database database,
                                           SnapshotControl snapshotControl)
            throws DatabaseException, InvalidExampleException {
        if (database == null) {
            return null;
        }

        /*
         * Translate the given examples into "real" Schema objects according to the database's abilities (e.g.
         * does the DB support catalogs? schemas? are the given schema/catalog names the default ones for the
         * DB connection?)
          */
        Schema[] schemas = new Schema[examples.length];
        for (int i = 0; i< schemas.length; i++) {
            examples[i] = examples[i].customize(database);
            schemas[i] = new Schema(examples[i].getCatalogName(), examples[i].getSchemaName());


        }

        return createSnapshot(schemas, database, snapshotControl);
    }
public DatabaseSnapshot createSnapshot(CatalogAndSchema[] examples, Database database,
                                           SnapshotControl snapshotControl)
            throws DatabaseException, InvalidExampleException {
        if (database == null) {
            return null;
        }

        /*
         * Translate the given examples into "real" Schema objects according to the database's abilities (e.g.
         * does the DB support catalogs? schemas? are the given schema/catalog names the default ones for the
         * DB connection?)
          */
        Schema[] schemas = new Schema[examples.length];
        for (int i = 0; i< schemas.length; i++) {
            examples[i] = examples[i].customize(database);
            schemas[i] = new Schema(examples[i].getCatalogName(), examples[i].getSchemaName());


        }

        return createSnapshot(schemas, database, snapshotControl);
    }
public DatabaseSnapshot createSnapshot ( CatalogAndSchema [ ] examples , Database database , SnapshotControl snapshotControl ) throws DatabaseException , InvalidExampleException { if ( database == null ) { return null ; } /*
         * Translate the given examples into "real" Schema objects according to the database's abilities (e.g.
         * does the DB support catalogs? schemas? are the given schema/catalog names the default ones for the
         * DB connection?)
          */ Schema [ ] schemas = new Schema [ examples . length ] ; for ( int i = 0 ; i < schemas . length ; i ++ ) { examples [ i ] = examples [ i ] . customize ( database ) ; schemas [ i ] = new Schema ( examples [ i ] . getCatalogName ( ) , examples [ i ] . getSchemaName ( ) ) ; } return createSnapshot ( schemas , database , snapshotControl ) ; }
Creates a database snapshot for a given array of catalog/schema combinations.

@param examples        an array of CatalogAndSchema objects
@param database        the database to work on
@param snapshotControl the options/settings for snapshot generation
@return a database snapshot that includes all objects matching the specification
@throws DatabaseException       if a problem occurs during snapshotting
@throws InvalidExampleException if the given catalog/schema combinations are invalid (e.g. duplicates)
Creates a database snapshot for a given array of catalog / schema combinations .