Class SnippetContext
- All Implemented Interfaces:
Serializable
Holds context data like language, country, assortment, well, target group, market etc.
SnippetContext contains a list of data used to specify or filter snippets.
- Since:
- 4.0.0
- See Also:
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionbooleanstatic booleanCompare language and country.static Optional<SnippetContext>Creates a snippetContext from JSON stringstatic SnippetContextfromLanguageAndCountry(String language, String country) Creates a context prefilled with language and country codes.static SnippetContextfromLanguageTag(String languageTag) Creates a context from a IETF Language Tag (IETF BCP 47) and sets country, language and script fields accordingly.static SnippetContextfromLanguageTagAndCountry(String languageTag, String country) Creates a context filled with language and country codes.Gets assortment name.Get country value.Gets default identifier.Get language value.Get name of a market in a content systemGet script value.Get name of a target group in a content systemGet name of well, i.e.inthashCode()static SnippetContextnewContext(String language, String country) Creates a new Context object from language and country tag.voidsetAssortmentName(String assortmentName) Sets assortment name.voidsetCountry(String country) Set the context country.voidsetLanguage(String language) Set the context language.voidsetMarketName(String marketName) Sets market name.voidSet the context script (writing system).voidsetTargetGroup(String targetGroup) Sets target group.voidsetWellName(String wellName) Sets well name.static StringsnippetContextToJSON(SnippetContext snippetContext) Snippet context to json string.Returns a well-formed IETF BCP 47 language tag representing the locale of this context.
Well, assortment, publication are not part of this representation.toString()
-
Constructor Details
-
SnippetContext
public SnippetContext()
-
-
Method Details
-
getDefaultIdentifier
Gets default identifier.- Returns:
- default identifier is constructed from context data already set.
-
getCountry
Get country value.ISO 3166 alpha-2 country code (two-letter upper-case representation) e.g. "DE" for Germany or "CH" for Switzerland.
Empty string is used for ANY country.- Returns:
- country country
-
setCountry
Set the context country.In cases where the calling source code uses country codes different from ISO 3166-1 (or UN M.49) you have to transform the input argument in advance.
Example for codes in IOC (International Olympic Committee):
new Context().setCountry(LocaleUtils.getPubServerCountry(country, "IOC"));
This expects that a translation table from IOC to ISO 3166-1 has been loaded (e.g. translating "GER" to "DE").- Parameters:
country- a valid ISO 3166-1 country code, e.g. "DE" (Germany), or "EG" (Egypt)
-
getLanguage
Get language value.ISO 639 alpha-3 language code (three-letter lower-case representation) e.g. "deu" for German or "fra" for French.
Empty string is used for ANY language.- Returns:
- language value
-
setLanguage
Set the context language.In cases where the calling source code uses language codes different from ISO-639-2-Alpha3/B you have to transform the input argument in advance.
Example for codes in ISO_639_1_Alpha2:
new Context().setLanguage(LocaleUtils.getPubServerLanguage(language, LocaleUtils.ISO_639_1_Alpha2));
Example for codes in ISO 639-2/T:
new Context().setLanguage(LocaleUtils.getPubServerLanguage(language, "ISO-639-2/T"));
This expects that a translation table from ISO-639-2/T to ISO-639-2/B has been loaded (e.g. translating "ger" to "deu").- Parameters:
language- a valid ISO_639_3_Alpha3 language code, e.g. "deu" (German), or "ara" (Arabic)
-
getScript
Get script value.ISO 15924 four letter code for writing system (four-letter title-case presentation) e.g. "Latn" oder "Cyrl"
Empty string is used for ANY script.- Returns:
- script value
-
setScript
Set the context script (writing system). Script hat to be a 4-letter code conforming ISO-15924.Examples for codes "Latn" or "Cyrl".
In cases where the calling source code uses script codes different from ISO-15924 you have to transform the input argument in advance.
Example for codes in ISO_15924:
new Context().setScript(LocaleUtils.getPubServerScript(script, LocaleUtils.ISO_15924));
- Parameters:
script- a valid ISO_15924 script code, e.g. "Latn" (Latin), or "Hang" (Hangul - i.e. Korean alphabet)
-
getWellName
Get name of well, i.e. a string representing a data "pool" in a content system- Returns:
- well name
-
setWellName
Sets well name.- Parameters:
wellName- seegetWellName()
-
getAssortmentName
Gets assortment name.- Returns:
- assortment of goods to which this context is bound
-
setAssortmentName
Sets assortment name.- Parameters:
assortmentName- seegetAssortmentName()
-
getTargetGroup
Get name of a target group in a content system- Returns:
- target group
-
setTargetGroup
Sets target group.- Parameters:
targetGroup- seegetTargetGroup()
-
getMarketName
Get name of a market in a content system- Returns:
- target group
-
setMarketName
Sets market name.- Parameters:
marketName- seegetMarketName()
-
toString
-
equals
-
hashCode
public int hashCode() -
fromLanguageTagAndCountry
Creates a context filled with language and country codes.- Parameters:
languageTag- IETF Language Tagcountry- a valid ISO_3166_1_Alpha2 country code or an empty string- Returns:
- created context object
- Throws:
NullPointerException- - if languageTag or country are nullIllegalArgumentException- - if language, region or country are not listed in pubservers key lists
-
fromJSON
Creates a snippetContext from JSON string- Parameters:
jsonString- json String stored in the column SnippetContext- Returns:
- optional of created snippet context object, if jsonString is invalid or empty, returns Optional.empty()
-
fromLanguageTag
Creates a context from a IETF Language Tag (IETF BCP 47) and sets country, language and script fields accordingly.
Compare to @link{LocaleLocale.forLanguageTag(String)- Parameters:
languageTag- IETF Language Tag- Returns:
- new context object filled with language, country and script
- Throws:
NullPointerException- - if languageTag is null
-
fromLanguageAndCountry
Creates a context prefilled with language and country codes.- Parameters:
language- a valid ISO_639_3_Alpha3 language code or an empty stringcountry- a valid ISO_3166_1_Alpha2 country code or an empty string- Returns:
- created context object
- Throws:
NullPointerException- - if language or country are nullIllegalArgumentException- - if language or country are not listed in pubservers key lists
-
toLanguageTag
Returns a well-formed IETF BCP 47 language tag representing the locale of this context.
Well, assortment, publication are not part of this representation.
ISO_639_1_Alpha2 is preferred if existing, otherwise three letter language representation is used. For details seeLocale.toLanguageTag()- Returns:
- IETF Language Tag
-
newContext
Creates a new Context object from language and country tag.
- Parameters:
language- language tagcountry- country tag- Returns:
- new SnippetContext object
-
equalsLanguageAndCountry
Compare language and country.
- Parameters:
sc- language tagsc2- country tag- Returns:
- true if language and country from both SnippetContext objects are equal
-
snippetContextToJSON
Snippet context to json string.- Parameters:
snippetContext- the snippet context- Returns:
- the string
-