Implemented a Locale-to-String converter
[jpa-converters] / src / main / java / de / juplo / jpa / converters / LocaleConverter.java
1 package de.juplo.jpa.converters;
2
3 import java.util.Locale;
4 import javax.persistence.AttributeConverter;
5 import javax.persistence.Converter;
6
7
8 /**
9  * Converts a {@link Locale} into its {@link String} representation as a
10  * well-formed IETF BCP 47 language tag.
11  * @author Kai Moritz
12  */
13 @Converter(autoApply = true)
14 public class LocaleConverter implements AttributeConverter<Locale, String>
15 {
16   @Override
17   public String convertToDatabaseColumn(Locale locale)
18   {
19     return locale.toLanguageTag();
20   }
21
22   @Override
23   public Locale convertToEntityAttribute(String string)
24   {
25     return Locale.forLanguageTag(string);
26   }
27 }