/** * Get an icon instance from a class specification. * @param iconClassSpec The icon's class spec as defined on the <l:icon class> attribute. * @return The icon instance, or {@code null} if no such icon. */ public Icon getIconByClassSpec(String iconClassSpec) { if (iconClassSpec == null) { return null; } Icon icon = iconsByClassSpec.get(iconClassSpec); if (icon == NO_ICON) { return null; } if (icon != null) { return icon; } String normalizedCSSSelector = Icon.toNormalizedCSSSelector(iconClassSpec); icon = getIconByNormalizedCSSSelector(normalizedCSSSelector); if (icon != null) { iconsByClassSpec.put(iconClassSpec, icon); return icon; } else { iconsByClassSpec.put(iconClassSpec, NO_ICON); return null; } }