protected List<FlavorPresets> computePresets(FlavorDescriptor flavor, List<String> flavors) { List<FlavorPresets> presets = new ArrayList<>(); if (flavor != null) { List<FlavorPresets> localPresets = flavor.getPresets(); if (localPresets != null) { presets.addAll(localPresets); } String extendsFlavorName = flavor.getExtendsFlavor(); if (!StringUtils.isBlank(extendsFlavorName)) { if (flavors.contains(extendsFlavorName)) { // cyclic dependency => abort log.error("Cyclic dependency detected in flavor '" + flavor.getName() + "' hierarchy"); return presets; } else { // retrieve the extended presets flavors.add(flavor.getName()); FlavorDescriptor extendedFlavor = getFlavor(extendsFlavorName); if (extendedFlavor != null) { List<FlavorPresets> parentPresets = computePresets(extendedFlavor, flavors); if (parentPresets != null) { presets.addAll(0, parentPresets); } } else { log.warn("Extended flavor '" + extendsFlavorName + "' not found"); } } } } return presets; }
protected void registerFlavor(FlavorDescriptor flavor, RuntimeContext extensionContext) { List<FlavorPresets> presets = flavor.getPresets(); if (presets != null) { for (FlavorPresets myPreset : presets) {
List<FlavorPresets> newPresets = src.getPresets(); if (newPresets != null) { List<FlavorPresets> merged = new ArrayList<FlavorPresets>(); if (keepOld) { List<FlavorPresets> oldPresets = getPresets(); if (oldPresets != null) { merged.addAll(0, oldPresets);
List<FlavorPresets> presets = getPresets(); if (presets != null) { List<FlavorPresets> newPresets = new ArrayList<FlavorPresets>();