Exemplo n.º 1
0
 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;
 }