public static void main(final String[] args) { final HashMap styles = new HashMap(); ClassicEngineBoot.getInstance().start(); final ElementMetaData[] elementMetaDatas = ElementTypeRegistry.getInstance().getAllElementTypes(); for (int i = 0; i < elementMetaDatas.length; i++) { final ElementMetaData elementMetaData = elementMetaDatas[i]; final StyleMetaData[] styleMetaDatas = elementMetaData.getStyleDescriptions(); for (int j = 0; j < styleMetaDatas.length; j++) { final StyleMetaData styleMetaData = styleMetaDatas[j]; styles.put(styleMetaData.getName(), styleMetaData); } } final StyleMetaData[] stylesArray = (StyleMetaData[]) styles.values().toArray(new StyleMetaData[styles.size()]); Arrays.sort(stylesArray, new PlainMetaDataComparator()); for (int i = 0; i < stylesArray.length; i++) { StyleMetaData metaData = stylesArray[i]; final String name = metaData.getName(); System.out.println("style." + name + ".display-name=" + name); System.out.println( "style." + name + ".grouping=" + filter(metaData.getGrouping(Locale.ENGLISH), "Group")); System.out.println( "style." + name + ".description=" + filter(metaData.getDescription(Locale.ENGLISH), "")); System.out.println( "style." + name + ".deprecated=" + filter(metaData.getDeprecationMessage(Locale.ENGLISH), "")); } }
private static void validateStyleMetaData( final ElementMetaData metaData, final ArrayList<String> missingProperties) { final Locale locale = Locale.getDefault(); final String typeName = metaData.getName(); final StyleMetaData[] styleMetaDatas = metaData.getStyleDescriptions(); for (int j = 0; j < styleMetaDatas.length; j++) { final StyleMetaData propertyMetaData = styleMetaDatas[j]; final String propertyDisplayName = propertyMetaData.getDisplayName(locale); if (isValid(propertyDisplayName, propertyMetaData.getName(), missingProperties) == false) { logger.warn( "ElementType '" + typeName + ": Style " + propertyMetaData.getName() + ": No DisplayName"); } final String propertyGrouping = propertyMetaData.getGrouping(locale); if (isValid(propertyGrouping, "common", missingProperties) == false) { logger.warn( "ElementType '" + typeName + ": Style " + propertyMetaData.getName() + ": Grouping is not valid"); } if (propertyMetaData.isDeprecated()) { final String deprecateMessage = propertyMetaData.getDeprecationMessage(locale); if (isValid(deprecateMessage, "Deprecated", missingProperties) == false) { logger.warn( "ElementType '" + typeName + ": Style " + propertyMetaData.getName() + ": No valid deprecate message"); } } } }