@Override public String getContributionId(FlavorDescriptor contrib) { return contrib.getName(); }
protected PalettePreview computePalettePreview(FlavorDescriptor flavor, List<String> flavors) { if (flavor != null) { PalettePreview localPalette = flavor.getPalettePreview(); if (localPalette == null) { 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 null; } else { // retrieved the extended colors flavors.add(flavor.getName()); FlavorDescriptor extendedFlavor = getFlavor(extendsFlavorName); if (extendedFlavor != null) { localPalette = computePalettePreview(extendedFlavor, flavors); } else { log.warn("Extended flavor '" + extendsFlavorName + "' not found"); } } } } return localPalette; } return null; }
protected List<IconDescriptor> computeIcons(FlavorDescriptor flavor, List<String> flavors) { if (flavor != null) { List<IconDescriptor> localIcons = flavor.getFavicons(); if (localIcons == null || localIcons.isEmpty()) { 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 null; } else { // retrieved the extended icons flavors.add(flavor.getName()); FlavorDescriptor extendedFlavor = getFlavor(extendsFlavorName); if (extendedFlavor != null) { localIcons = computeIcons(extendedFlavor, flavors); } else { log.warn("Extended flavor '" + extendsFlavorName + "' not found"); } } } } return localIcons; } return null; }
protected LogoDescriptor computeLogo(FlavorDescriptor flavor, List<String> flavors) { if (flavor != null) { LogoDescriptor localLogo = flavor.getLogo(); if (localLogo == null) { 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 null; } else { // retrieved the extended logo flavors.add(flavor.getName()); FlavorDescriptor extendedFlavor = getFlavor(extendsFlavorName); if (extendedFlavor != null) { localLogo = computeLogo(extendedFlavor, flavors); } else { log.warn("Extended flavor '" + extendsFlavorName + "' not found"); } } } } return localLogo; } return null; }
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 Map<String, Map<String, String>> getPresetsByCat(FlavorDescriptor flavor) { String flavorName = flavor.getName(); List<FlavorPresets> presets = computePresets(flavor, new ArrayList<>()); Map<String, Map<String, String>> presetsByCat = new HashMap<>();
if (contribution instanceof FlavorDescriptor) { FlavorDescriptor flavor = (FlavorDescriptor) contribution; log.info(String.format("Register flavor '%s'", flavor.getName())); registerFlavor(flavor, contributor.getContext()); log.info(String.format("Done registering flavor '%s'", flavor.getName())); } else if (contribution instanceof SimpleStyle) { SimpleStyle style = (SimpleStyle) contribution;
@Override public FlavorDescriptor clone() { FlavorDescriptor clone = new FlavorDescriptor(); clone.setName(getName()); clone.setLabel(getLabel()); LogoDescriptor logo = getLogo();