public void execute() {
        try {
            final IntermediateModel intermediateModel =
                    new IntermediateModelBuilder(models, codeGenBinDirectory).build();

            // Dump the intermediate model to a file
            writeIntermediateModel(intermediateModel);

            emitCode(intermediateModel);

        } catch (Exception e) {
            throw new RuntimeException(
                    "Failed to generate code. Exception message : "
                    + e.getMessage(), e);

        }
    }
load ServiceModel. load code gen configuration from individual client. load Waiters. generate intermediate model. generate
code.
aws-java-sdk-code-generator/src/main/java/com/amazonaws/codegen/CodeGenerator.java