Example usage for org.springframework.ide.eclipse.boot.wizard HierarchicalMultiSelectionFieldModel getCategories

List of usage examples for org.springframework.ide.eclipse.boot.wizard HierarchicalMultiSelectionFieldModel getCategories

Introduction

In this page you can find the example usage for org.springframework.ide.eclipse.boot.wizard HierarchicalMultiSelectionFieldModel getCategories.

Prototype

public Collection<String> getCategories() 

Source Link

Usage

From source file:org.springframework.ide.eclipse.boot.wizard.DefaultDependencies.java

/**
 * Selects stored default dependencies on the passed selection model 
 * /*from   w  w  w .  ja v a  2 s. com*/
 * @param model dependency selection model
 */
public void restore(HierarchicalMultiSelectionFieldModel<Dependency> model) {
    Arrays.asList(get(PREF_DEFAULT_DEPENDENCIES, "").split(DEPENDECIES_DELIMITER)).forEach(id -> {
        model.getCategories().stream().filter(category -> {
            Optional<Dependency> matchedDependency = Arrays.asList(model.getContents(category).getChoices())
                    .stream().filter(dependency -> {
                        return id.equals(dependency.getId());
                    }).findFirst();
            matchedDependency.ifPresent(d -> {
                model.setSelection(category, d, true);
            });
            return matchedDependency.isPresent();
        }).findFirst();
    });
}

From source file:org.springframework.ide.eclipse.boot.wizard.DefaultDependencies.java

/**
 * Finds check-box models from the selection model corresponding to stored default dependencies (ids)
 * //w w  w .  j a  v  a 2  s .  co  m
 * @param model dependency selection model
 * @return check-box models of stored default dependencies
 */
public List<CheckBoxModel<Dependency>> getDependencies(HierarchicalMultiSelectionFieldModel<Dependency> model) {
    Set<String> ids = getDependciesIdSet();
    List<CheckBoxModel<Dependency>> dependencies = Collections.synchronizedList(new ArrayList<>(ids.size()));
    model.getCategories().parallelStream().forEach(category -> {
        model.getContents(category).getCheckBoxModels().stream().filter(checkboxModel -> {
            return ids.contains(checkboxModel.getValue().getId());
        }).forEach(dependencies::add);
    });
    return dependencies;
}