super("Select Project Type", true);
NullableConsumer<ProjectSettingsStepBase> callback = customization.createCallback();
-
- final DirectoryProjectGenerator emptyProjectGenerator = customization.createEmptyProjectGenerator();
- ProjectSpecificAction projectSpecificAction =
- new ProjectSpecificAction(emptyProjectGenerator, customization.createProjectSpecificSettingsStep(emptyProjectGenerator, callback));
- addAll(projectSpecificAction.getChildren(null));
+ ProjectSpecificAction projectSpecificAction = customization.createProjectSpecificAction(callback);
DirectoryProjectGenerator[] generators = customization.getProjectGenerators();
customization.setUpBasicAction(projectSpecificAction, generators);
}
protected static abstract class Customization {
+ @NotNull
+ protected ProjectSpecificAction createProjectSpecificAction(@NotNull final NullableConsumer<ProjectSettingsStepBase> callback) {
+ DirectoryProjectGenerator emptyProjectGenerator = createEmptyProjectGenerator();
+ return new ProjectSpecificAction(emptyProjectGenerator, createProjectSpecificSettingsStep(emptyProjectGenerator, callback));
+ }
+
@NotNull
protected abstract NullableConsumer<ProjectSettingsStepBase> createCallback();