public static String concat( final EObject listOwner, final EList<? extends IdentifiableLangStringValue> list, final String filterString, final String separationString) { if (filterString == null) { throw new NullPointerException("language must not be null"); // $NON-NLS-1$ } String retString = ""; // $NON-NLS-1$ for (final IdentifiableLangStringValue obj : list) { if (obj != null && passesFilter(filterString.length() == 0 ? null : filterString, obj)) { String value = obj.getValue(); if (value != null) { value = value.trim(); if (retString.length() != 0) { retString += separationString; } retString += value; } } } return retString; }
private static boolean passesFilter( final String expectedLang, final IdentifiableLangStringValue langOwner) { final Object lang = langOwner.getLang(); return ((expectedLang == null && lang == null) || (expectedLang != null && expectedLang.equals(lang))); }