From f02b5418486bbec8a355a0b1ee963fd2155f419e Mon Sep 17 00:00:00 2001 From: Robert von Burg Date: Fri, 1 Mar 2024 16:21:52 +0100 Subject: [PATCH] [Minor] Sorting of supported languages --- .../rest/endpoint/LanguagesResource.java | 24 ++++++++++++------- 1 file changed, 16 insertions(+), 8 deletions(-) diff --git a/web-rest/src/main/java/li/strolch/rest/endpoint/LanguagesResource.java b/web-rest/src/main/java/li/strolch/rest/endpoint/LanguagesResource.java index 28d8eb615..f563f1ae4 100644 --- a/web-rest/src/main/java/li/strolch/rest/endpoint/LanguagesResource.java +++ b/web-rest/src/main/java/li/strolch/rest/endpoint/LanguagesResource.java @@ -13,8 +13,10 @@ import li.strolch.runtime.configuration.SupportedLanguage; import org.slf4j.Logger; import org.slf4j.LoggerFactory; +import java.util.Comparator; import java.util.Set; +import static java.util.Comparator.*; import static li.strolch.utils.helper.ExceptionHelper.getRootCauseMessage; @Path("strolch/languages") @@ -27,14 +29,20 @@ public class LanguagesResource { @Produces(MediaType.APPLICATION_JSON) public Response getSupportedLanguages() { try { - Set supportedLanguages = RestfulStrolchComponent.getInstance().getAgent() - .getStrolchConfiguration().getRuntimeConfiguration().getSupportedLanguages(); - JsonArray result = supportedLanguages.stream().map(language -> { - JsonObject jsonObject = new JsonObject(); - jsonObject.addProperty(Tags.Json.LOCALE, language.locale()); - jsonObject.addProperty(Tags.Json.NAME, language.name()); - return jsonObject; - }).collect(JsonArray::new, JsonArray::add, JsonArray::addAll); + JsonArray result = RestfulStrolchComponent + .getInstance() + .getAgent() + .getRuntimeConfiguration() + .getSupportedLanguages() + .stream() + .sorted(comparing(SupportedLanguage::name)) + .map(language -> { + JsonObject jsonObject = new JsonObject(); + jsonObject.addProperty(Tags.Json.LOCALE, language.locale()); + jsonObject.addProperty(Tags.Json.NAME, language.name()); + return jsonObject; + }) + .collect(JsonArray::new, JsonArray::add, JsonArray::addAll); return Response.ok().entity(result.toString()).build(); } catch (Exception e) {