@Override public void initializeUI(UIBuilder builder) throws Exception { this.branchName = getInputComponentFactory().createInput("branchName", String.class).setLabel("Branch name") .setDefaultValue("master"); this.create = getInputComponentFactory().createInput("create", Boolean.class).setLabel("Create branch") .setDefaultValue(false); this.trackingMode = getInputComponentFactory().createSelectOne("trackingMode", SetupUpstreamMode.class) .setLabel("Track").setDescription("Remote tracking mode") .setDefaultValue(SetupUpstreamMode.SET_UPSTREAM); this.force = getInputComponentFactory().createInput("forge", Boolean.class).setLabel("Force") .setDefaultValue(false); builder.add(branchName).add(create).add(trackingMode).add(force); }
@Override public void initializeUI(UIBuilder builder) throws Exception { InputComponentFactory factory = builder.getInputComponentFactory(); furnaceContainer = factory.createSelectOne("furnaceContainer", AddonId.class).setLabel("Furnace container") .setRequired(true).setRequiredMessage("You must select one Furnace container"); splitProjects = factory.createInput("splitProjects", Boolean.class) .setLabel("Create API, Impl, SPI, Tests, and Addon modules"); addons = factory.createSelectMany("addons", AddonId.class).setLabel("Depend on these addons"); configureAddonDependencies(); builder.add(furnaceContainer).add(splitProjects).add(addons); }
@Override public void initializeUI(UIBuilder builder) throws Exception { InputComponentFactory factory = builder.getInputComponentFactory(); arguments = factory.createInputMany("arguments", String.class); notest = factory.createInput("notest", Boolean.class).setLabel("No Test"); quiet = factory.createInput("quiet", 'q', Boolean.class).setLabel("Quiet").setDescription("Quiet output"); profile = factory.createInputMany("profile", String.class); builder.add(arguments).add(profile).add(notest).add(quiet); }
private void configureFinalName(InputComponentFactory factory) { finalName = factory.createInput("finalName", String.class).setLabel("Final name"); }
UIInput<?> inputSingle = componentFactory.createInput(option.getName(), option.getType()); inputSingle.setDefaultValue(new DefaultValueAdapter(option)); inputComponent = inputSingle; UIInputMany<?> inputMany = componentFactory.createInputMany(option.getName(), optionType); inputMany.setDefaultValue(new DefaultValueAdapter(option, Iterable.class)); inputComponent = inputMany; UISelectMany<?> selectMany = componentFactory.createSelectMany(option.getName(), option.getType()); selectMany.setValueChoices((Iterable) option.getAvailableValues()); selectMany.setDefaultValue(new DefaultValueAdapter(option, Iterable.class)); UISelectOne<?> selectOne = componentFactory.createSelectOne(option.getName(), option.getType()); selectOne.setValueChoices((Iterable) option.getAvailableValues()); selectOne.setDefaultValue(new DefaultValueAdapter(option)); UIInput<DirectoryResource> directoryInput = componentFactory.createInput(option.getName(), DirectoryResource.class); directoryInput.setDefaultValue(new DefaultValueAdapter(option, DirectoryResource.class)); UIInput<?> fileInput = componentFactory.createInput(option.getName(), FileResource.class); fileInput.setDefaultValue(new DefaultValueAdapter(option, FileResource.class)); inputComponent = fileInput; UIInput<?> fileOrDirInput = componentFactory.createInput(option.getName(), FileResource.class); fileOrDirInput.setDefaultValue(new DefaultValueAdapter(option, FileResource.class)); inputComponent = fileOrDirInput;
@Override public void initializeUI(UIBuilder builder) throws Exception { Project project = getSelectedProject(builder.getUIContext()); InputComponentFactory factory = builder.getInputComponentFactory(); arguments = factory.createSelectMany("arguments", 'd', Dependency.class).setLabel("Coordinates").setRequired(true) .setDescription( "The coordinates of the arguments to be removed [groupId :artifactId {:version :scope :packaging}]"); removeManaged = factory.createInput("removeManaged", 'r', Boolean.class).setLabel("Remove managed arguments") .setDefaultValue(false) .setDescription("Also remove any related managed arguments from the current project, if possible."); arguments.setValueChoices(project.getFacet(DependencyFacet.class).getDependencies()); builder.add(arguments).add(removeManaged); }
private void configureProjectTypeInput(InputComponentFactory factory, final UIContext uiContext) type = factory.createSelectOne("type", ProjectType.class).setLabel("Project type").setRequired(true); if (uiContext.getProvider().isGUI())
databaseCatalog = factory.createSelectOne("databaseCatalog", String.class) .setLabel("Database Catalog") .setDescription("The database catalog for which to generate entities.") databaseSchema = factory.createSelectOne("databaseSchema", String.class) .setLabel("Database Schema") .setDescription("The database schema for which to generate entities.") databaseTables = factory.createSelectMany("databaseTables", String.class) .setLabel("Database Tables") .setDescription("The database tables for which to generate entities. Use '*' to select all tables")
@Override public void initializeUI(UIBuilder builder) throws Exception { InputComponentFactory factory = builder.getInputComponentFactory(); addonDependencies = factory.createSelectMany("addonDependencies", AddonId.class).setLabel("Dependency addons") .setDescription("Addons this test depends upon"); Set<AddonId> choices = new TreeSet<>(); Furnace furnace = SimpleContainer.getFurnace(getClass().getClassLoader()); for (AddonRepository repository : furnace.getRepositories()) { for (AddonId id : repository.listEnabled()) { if (id.getName().contains(":")) choices.add(id); } } addonDependencies.setValueChoices(choices); addonDependencies.setDefaultValue(new ArrayList<AddonId>()); builder.add(addonDependencies); }
@Override public void initializeUI(UIBuilder builder) throws Exception { InputComponentFactory factory = builder.getInputComponentFactory(); this.arguments = factory.createInputMany("arguments", String.class) .setLabel("Arguments") .setRequired(true); builder.add(arguments); }
private void configureVersionInput(InputComponentFactory factory) { version = factory.createInput("version", String.class).setLabel("Version"); version.setDefaultValue("1.0.0-SNAPSHOT"); }
@Override public void initializeUI(UIBuilder builder) throws Exception { Project project = getSelectedProject(builder); InputComponentFactory inputFactory = builder.getInputComponentFactory(); Furnace furnace = Furnace.instance(getClass().getClassLoader()); AddonRegistry addonRegistry = furnace.getAddonRegistry(); ConverterFactory converterFactory = addonRegistry.getServices(ConverterFactory.class).get(); ProjectOperations projectOperations = addonRegistry.getServices(ProjectOperations.class).get(); List<JavaResource> projectClasses = projectOperations.getProjectClasses(project); targetClasses = inputFactory.createSelectMany("targetClasses", String.class) .setLabel("Target Class") .setDescription("The class where the field will be created").setRequired(true) .setValueChoices( projectClasses.stream() .filter(JavaGenerateSerialVersionUIDCommand::isSerializable) .map(Objects::toString) .collect(Collectors.toList())); UIContext uiContext = builder.getUIContext(); UISelection<Object> initialSelection = uiContext.getInitialSelection(); if (initialSelection.get() instanceof JavaResource) { InputComponents.setValueFor(converterFactory, targetClasses, ((JavaResource) initialSelection.get()).getJavaType().getQualifiedName()); } useDefaultValue = inputFactory.createInput("useDefaultValue", Boolean.class) .setLabel("Generate Default Value?") .setDescription("If true, sets the serialVersionUID field to 1L"); builder.add(targetClasses).add(useDefaultValue); }
buildSystem = factory.createSelectOne("buildSystem", ProjectProvider.class).setLabel("Build system") .setRequired(true).setItemLabelConverter((source) -> source.getType()); buildSystem.setValueChoices(new Callable<Iterable<ProjectProvider>>()
UIContext uiContext = builder.getUIContext(); Project project = getSelectedProject(uiContext); targetClass = inputFactory.createSelectOne("targetClass", JavaResource.class); targetClass.setDescription("The class where the field will be created"); targetClass.setRequired(true); targetClass.setValueChoices(projectOperations.getProjectClasses(project)); fields = inputFactory.createSelectMany("fields", String.class); fields.setDescription("Fields, which should be used in the hashCode/equals method generation"); fields.setRequired(true).setRequiredMessage("At least one field should be selected");
@Override public void initializeUI(UIBuilder builder) throws Exception { InputComponentFactory factory = builder.getInputComponentFactory(); names = factory.createSelectMany("names", String.class).setLabel("Connection Name") .setDescription("The name of the database connection profiles you want to remove."); ConnectionProfileManagerProvider provider = SimpleContainer .getServices(getClass().getClassLoader(), ConnectionProfileManagerProvider.class).get(); profiles = provider.getConnectionProfileManager().loadConnectionProfiles(); names.setValueChoices(profiles.keySet()); builder.add(names); }
@Override public void initializeUI(UIBuilder builder) throws Exception { InputComponentFactory factory = builder.getInputComponentFactory(); arguments = factory.createInputMany("arguments", 'd', String.class).setLabel("Coordinates").setRequired(true) .setDescription( "The coordinates of the arguments to be added [groupId :artifactId {:version :scope :packaging}]"); builder.add(arguments); }
UISelectOne ui = factory.createSelectOne(name, inputClazz); UIInput ui = factory.createInput(name, inputClazz); if (defaultValue != null) { Object value = defaultValue;
private void configureUseTargetLocationRootInput(InputComponentFactory factory, final UIContext context) { useTargetLocationRoot = factory.createInput("useTargetLocationRoot", Boolean.class) .setLabel("Use Target Location Root?") .setDescription("If specified, it won't create a subdirectory inside the specified Project location"); }
@Override public void initializeUI(UIBuilder builder) throws Exception { InputComponentFactory factory = builder.getInputComponentFactory(); named = factory.createInput("named", String.class).setLabel("Command name").setRequired(true); categories = factory.createInputMany("categories", String.class).setLabel("Categories"); categories.setDefaultValue(new ArrayList<String>()); builder.add(named).add(categories); }
@Override public void initializeUI(UIBuilder builder) throws Exception { InputComponentFactory factory = builder.getInputComponentFactory(); packageName = factory.createInput("packageName", String.class).setLabel("Package Name"); packageName.getFacet(HintsFacet.class).setInputType(InputType.JAVA_PACKAGE_PICKER); named = factory.createInput("named", String.class).setLabel("Test Class Name").setRequired(true); reuseProjectAddons = factory.createInput("reuseProjectAddons", Boolean.class) .setLabel("Use Addons from current project as dependencies (automatic discovery)") .setDescription( "This will create an empty @AddonDependencies and reuse the addons in the current project's pom.xml") .setDefaultValue(true); furnaceContainer = factory.createSelectOne("furnaceContainer", AddonId.class).setLabel("Furnace container") .setRequiredMessage("You must select one Furnace container"); addonDependencies = factory.createSelectMany("addonDependencies", AddonId.class).setLabel("Dependency addons") .setDescription("Addons this test depends upon"); configureAddonDependencies(); Project project = getSelectedProject(builder.getUIContext()); packageName.setDefaultValue(project.getFacet(JavaSourceFacet.class).getBasePackage()); builder.add(packageName).add(named).add(reuseProjectAddons).add(furnaceContainer).add(addonDependencies); }