@Override @Cacheable(value = "userSearchLocales") public List<Locale> getSearchLocales(Locale currentLocale, User user) throws APIException { Set<Locale> locales = new LinkedHashSet<>(); locales.add(currentLocale); //the currently used full locale locales.add(new Locale(currentLocale.getLanguage())); if (user != null) { List<Locale> proficientLocales = user.getProficientLocales(); if (proficientLocales != null) { locales.addAll(proficientLocales); } } //limit locales to only allowed locales List<Locale> allowedLocales = Context.getAdministrationService().getAllowedLocales(); if (allowedLocales != null) { Set<Locale> retainLocales = new HashSet<>(); for (Locale allowedLocale : allowedLocales) { retainLocales.add(allowedLocale); retainLocales.add(new Locale(allowedLocale.getLanguage())); } locales.retainAll(retainLocales); } return new ArrayList<>(locales); }
@Override public void validateFullRepresentation() throws Exception { super.validateFullRepresentation(); assertPropEquals("username", getObject().getUser().getUsername()); assertPropEquals("systemId", getObject().getUser().getSystemId()); assertPropEquals("userProperties", getObject().getUser().getUserProperties()); assertPropPresent("person"); assertPropPresent("privileges"); assertPropPresent("roles"); assertPropPresent("allRoles"); assertPropEquals("proficientLocales", getObject().getUser().getProficientLocales()); assertPropEquals("retired", getObject().getUser().getRetired()); }
@Override public void validateFullRepresentation() throws Exception { super.validateFullRepresentation(); assertPropEquals("username", getObject().getUser().getUsername()); assertPropEquals("systemId", getObject().getUser().getSystemId()); assertPropEquals("userProperties", getObject().getUser().getUserProperties()); assertPropPresent("person"); assertPropPresent("privileges"); assertPropPresent("roles"); assertPropPresent("allRoles"); assertPropEquals("proficientLocales", getObject().getUser().getProficientLocales()); assertPropEquals("secretQuestion", getObject().getUser().getSecretQuestion()); assertPropEquals("retired", getObject().getUser().getRetired()); }