private Map computeColumnWidths()

in platforms/commands/commands-core/src/main/java/org/apache/camel/commands/ValidatorListCommand.java [100:135]


    private Map<String, Integer> computeColumnWidths(final Map<String, List<Map<String, String>>> contextsToValidators) throws Exception {
        int maxCamelContextLen = 0;
        int maxTypeLen = 0;
        int maxStatusLen = 0;
        int maxDescLen = 0;

        for (Map.Entry<String, List<Map<String, String>>> stringListEntry : contextsToValidators.entrySet()) {
            final String camelContextName = stringListEntry.getKey();

            maxCamelContextLen = java.lang.Math.max(maxCamelContextLen, camelContextName.length());
            
            final List<Map<String, String>> validators = stringListEntry.getValue();


            for (Map<String, String> row : validators) {
                String type = row.get("type");
                maxTypeLen = java.lang.Math.max(maxTypeLen, type == null ? 0 : type.length());
                String status = row.get("state");
                maxStatusLen = java.lang.Math.max(maxStatusLen, status == null ? 0 : status.length());
                if (verbose) {
                    String desc = row.get("description");
                    maxDescLen = java.lang.Math.max(maxDescLen, desc == null ? 0 : desc.length());
                }
            }
        }
    
        final Map<String, Integer> retval = new Hashtable<>();
        retval.put(CONTEXT_NAME_COLUMN_LABEL, maxCamelContextLen);
        retval.put(TYPE_COLUMN_LABEL, maxTypeLen);
        retval.put(STATE_COLUMN_LABEL, maxStatusLen);
        if (verbose) {
            retval.put(DESCRIPTION_COLUMN_LABEL, maxDescLen);
        }

        return retval;
    }