private void preprocessModelWithIntegrations(List<I> integrations) {
        LOGGER.fine(() -> "Preprocessing codegen model using " + integrationClass.getName());
        for (I integration : integrations) {
            model = integration.preprocessModel(model, settings);
        }
        LOGGER.finer(() -> "Preprocessing codegen model using " + integrationClass.getName() + " complete");
    }
Finalizes the Runner and performs directed code generation.

@throws IllegalStateException if a required value has not been provided.
smithy-codegen-core/src/main/java/software/amazon/smithy/codegen/core/directed/CodegenDirector.java