Package org.ivoa.dm.registry.tap
Class Language
java.lang.Object
org.ivoa.dm.registry.tap.Language
- All Implemented Interfaces:
org.ivoa.vodml.jpa.JPAManipulations,org.ivoa.vodml.jpa.JPAManipulationsForObjectType<Long>
@Entity
@VoDml(id="TAPRegExt:Language",
role=objectType)
public class Language
extends Object
implements org.ivoa.vodml.jpa.JPAManipulationsForObjectType<Long>
A query language supported by the service.
Each language element can describe one or more versions
of a language. Either name alone or name-version can be
used as values for the server's LANG parameter.
objectType: Language
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic classA builder class for Language, mainly for use in the functional builder pattern. -
Field Summary
FieldsModifier and TypeFieldDescriptionprotected Longinserted database keyprotected StringA short, human-readable description of the query language.protected List<LanguageFeatureList>Optional features of the query language, grouped by feature type.protected StringThe name of the language without a version suffix.A version of the language supported by the server. -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidAdd a org.ivoa.dm.registry.tap.LanguageFeatureList to the composition.static Languagecreate a Language in functional builder style.voiddelete(jakarta.persistence.EntityManager em) voidReturns description Attribute.getId()Returns languageFeatures composition as an immutable list.getName()Returns name Attribute.Returns version Attribute.voidRemove a org.ivoa.dm.registry.tap.LanguageFeatureList from the composition.voidupdate a org.ivoa.dm.registry.tap.LanguageFeatureList in the composition.voidsetDescription(String pDescription) Set description Attribute.voidsetLanguageFeatures(List<LanguageFeatureList> pLanguageFeatures) Defines whole languageFeatures composition.voidSet name Attribute.voidsetVersion(List<Version> pVersion) Set version Attribute.voidupdateUsing(Language other) Update this object with the content of the given object.withDescription(String pDescription) fluent setter for description Attribute.fluent setter for name Attribute.withVersion(List<Version> pVersion) fluent setter for version Attribute.
-
Field Details
-
_id
inserted database key -
name
@VoDml(id="TAPRegExt:Language.name", role=attribute, type="ivoa:string", typeRole=primitiveType) protected String nameThe name of the language without a version suffix. : Attribute name : multiplicity 1 -
version
@VoDml(id="TAPRegExt:Language.version", role=attribute, type="TAPRegExt:Version", typeRole=dataType) protected List<Version> versionA version of the language supported by the server. : Attribute version : multiplicity 1..* -
description
@VoDml(id="TAPRegExt:Language.description", role=attribute, type="ivoa:string", typeRole=primitiveType) protected String descriptionA short, human-readable description of the query language. : Attribute description : multiplicity 0..1 -
languageFeatures
@VoDml(id="TAPRegExt:Language.languageFeatures", role=composition, type="TAPRegExt:LanguageFeatureList", typeRole=objectType) protected List<LanguageFeatureList> languageFeaturesOptional features of the query language, grouped by feature type. This includes listing user defined functions, geometry support, or similar concepts. composition languageFeatures : ( Multiplicity : 0..* )
-
-
Constructor Details
-
Language
public Language()Creates a new Language -
Language
public Language(String name, List<Version> version, String description, List<LanguageFeatureList> languageFeatures) full parameter constructor.- Parameters:
name- The name of the language without a version suffix.version- A version of the language supported by the server.description- A short, human-readable description of the query language.languageFeatures- Optional features of the query language, grouped by feature type. This includes listing user defined functions, geometry support, or similar concepts.
-
Language
Copy Constructor. Note that references will remain as is rather than be copied.- Parameters:
other- the object to be copied.
-
-
Method Details
-
getId
- Specified by:
getIdin interfaceorg.ivoa.vodml.jpa.JPAManipulationsForObjectType<Long>- Returns:
- the id
-
updateUsing
Update this object with the content of the given object. Note that references will remain as is rather than be copied.- Parameters:
other- the object to be copied.
-
getName
Returns name Attribute.- Returns:
- name Attribute
-
setName
Set name Attribute.- Parameters:
pName- value to set
-
withName
fluent setter for name Attribute.- Parameters:
pName- value to set- Returns:
- Language
-
getVersion
Returns version Attribute.- Returns:
- version Attribute
-
setVersion
Set version Attribute.- Parameters:
pVersion- value to set
-
withVersion
fluent setter for version Attribute.- Parameters:
pVersion- value to set- Returns:
- Language
-
getDescription
Returns description Attribute.- Returns:
- description Attribute
-
setDescription
Set description Attribute.- Parameters:
pDescription- value to set
-
withDescription
fluent setter for description Attribute.- Parameters:
pDescription- value to set- Returns:
- Language
-
getLanguageFeatures
Returns languageFeatures composition as an immutable list.- Returns:
- languageFeatures composition.
-
setLanguageFeatures
Defines whole languageFeatures composition.- Parameters:
pLanguageFeatures- composition to set.
-
addToLanguageFeatures
Add a org.ivoa.dm.registry.tap.LanguageFeatureList to the composition.- Parameters:
p- org.ivoa.dm.registry.tap.LanguageFeatureList to add
-
removeFromLanguageFeatures
Remove a org.ivoa.dm.registry.tap.LanguageFeatureList from the composition.- Parameters:
p- org.ivoa.dm.registry.tap.LanguageFeatureList to remove
-
replaceInLanguageFeatures
update a org.ivoa.dm.registry.tap.LanguageFeatureList in the composition.- Parameters:
_p- org.ivoa.dm.registry.tap.LanguageFeatureList to update the match is done via the database key
-
createLanguage
create a Language in functional builder style.- Parameters:
f- the functional builder.- Returns:
- an object initialized from the builder.
-
forceLoad
public void forceLoad()- Specified by:
forceLoadin interfaceorg.ivoa.vodml.jpa.JPAManipulations
-
delete
public void delete(jakarta.persistence.EntityManager em) - Specified by:
deletein interfaceorg.ivoa.vodml.jpa.JPAManipulationsForObjectType<Long>
-