diff --git a/smp-server-library/src/main/java/eu/europa/ec/edelivery/smp/config/init/SMPLocaleFileSystemInitializer.java b/smp-server-library/src/main/java/eu/europa/ec/edelivery/smp/config/init/SMPLocaleFileSystemInitializer.java index 14d15ef68eef7e7f841b2acaee5cbed155b13900..57210621057fe32bcd1d5bb1f238141bc030ef4b 100644 --- a/smp-server-library/src/main/java/eu/europa/ec/edelivery/smp/config/init/SMPLocaleFileSystemInitializer.java +++ b/smp-server-library/src/main/java/eu/europa/ec/edelivery/smp/config/init/SMPLocaleFileSystemInitializer.java @@ -8,6 +8,14 @@ import org.springframework.stereotype.Component; import javax.annotation.PostConstruct; +/** + * Updates locale files on the disk with locales provided by DomiSMP. Any existing locales on the disk matching the + * ones provided in DomiSMP are removed in the process of being replaced. + * + * @since 5.1 + * @author Sebastian-Ion TINCU + * @see eu.europa.ec.edelivery.smp.i18n.SMPLocale + */ @Component public class SMPLocaleFileSystemInitializer { diff --git a/smp-server-library/src/main/java/eu/europa/ec/edelivery/smp/i18n/SMPLocale.java b/smp-server-library/src/main/java/eu/europa/ec/edelivery/smp/i18n/SMPLocale.java index e15e88445e1d69ce7c1077e921e0e9d0273bbaa5..1502f16be55e8004767b88eb7bf105fbf81c15b9 100644 --- a/smp-server-library/src/main/java/eu/europa/ec/edelivery/smp/i18n/SMPLocale.java +++ b/smp-server-library/src/main/java/eu/europa/ec/edelivery/smp/i18n/SMPLocale.java @@ -4,10 +4,22 @@ import org.apache.commons.lang3.StringUtils; import java.util.EnumSet; +/** + * Locale enumeration for which DomiSMP is providing existing translations. + * + * @since 5.1 + * @author Sebastian-Ion TINCU + */ public enum SMPLocale { + /** + * The default English locale + */ EN_US ("en", "English"), + /** + * The Romanian locale + */ RO_RO ("ro", "Romanian"); private final String code; diff --git a/smp-server-library/src/main/java/eu/europa/ec/edelivery/smp/services/SMPLocaleService.java b/smp-server-library/src/main/java/eu/europa/ec/edelivery/smp/services/SMPLocaleService.java index e63653e00bb0b2fab2bed5a92f0a9000641dba03..a754c43fd2ce1ae554921129f0a48be3b28fadb7 100644 --- a/smp-server-library/src/main/java/eu/europa/ec/edelivery/smp/services/SMPLocaleService.java +++ b/smp-server-library/src/main/java/eu/europa/ec/edelivery/smp/services/SMPLocaleService.java @@ -13,6 +13,12 @@ import java.nio.file.Files; import java.nio.file.Path; import java.util.EnumSet; +/** + * Service providing operations for managing locales (e.g. updating locales on the disk). + * + * @since 5.1 + * @author Sebastian-Ion TINCU + */ @Service public class SMPLocaleService { diff --git a/smp-webapp/src/main/java/eu/europa/ec/edelivery/smp/config/SMPWebAppConfig.java b/smp-webapp/src/main/java/eu/europa/ec/edelivery/smp/config/SMPWebAppConfig.java index 17b5097df1877a099da3f6d26104cfd3567d51fe..66aea75739a6a5baa874338e3475f222024e78b8 100644 --- a/smp-webapp/src/main/java/eu/europa/ec/edelivery/smp/config/SMPWebAppConfig.java +++ b/smp-webapp/src/main/java/eu/europa/ec/edelivery/smp/config/SMPWebAppConfig.java @@ -133,6 +133,10 @@ public class SMPWebAppConfig implements WebMvcConfigurer { @Override public void extendMessageConverters(List<HttpMessageConverter<?>> converters) { + // Configure the resource message converter to allow the direct download of locale files from the disk + LOG.debug("Register ResourceHttpMessageConverter"); + converters.add(0, new ResourceHttpMessageConverter()); + // Configure Object Mapper with format date as: "2021-12-01T14:52:00Z" LOG.debug("Register MappingJackson2HttpMessageConverter"); MappingJackson2HttpMessageConverter converter = new MappingJackson2HttpMessageConverter(); @@ -148,7 +152,6 @@ public class SMPWebAppConfig implements WebMvcConfigurer { dateFormat.setTimeZone(TimeZone.getDefault()); objectMapper.setDateFormat(dateFormat); - converters.add(0, new ResourceHttpMessageConverter()); converters.add(1, converter); } diff --git a/smp-webapp/src/main/java/eu/europa/ec/edelivery/smp/ui/external/LocaleController.java b/smp-webapp/src/main/java/eu/europa/ec/edelivery/smp/ui/external/LocaleController.java index 7e9ce1aab6bd04a93a7f5b113067ec48d12ec346..2ff29caa323cb6e1969c961df6ffc03d24a349d2 100644 --- a/smp-webapp/src/main/java/eu/europa/ec/edelivery/smp/ui/external/LocaleController.java +++ b/smp-webapp/src/main/java/eu/europa/ec/edelivery/smp/ui/external/LocaleController.java @@ -9,7 +9,9 @@ import org.springframework.web.bind.annotation.*; import static eu.europa.ec.edelivery.smp.ui.ResourceConstants.CONTEXT_PATH_PUBLIC_LOCALE; /** - * @since + * Provides support for returning locale files required by the ngx-translation Angular library. + * + * @since 5.1 * @author Sebastian-Ion TINCU */ @RestController