public class EntityCatalog<E extends Entity> extends java.lang.Object implements Translet.Parseable<E>
Entity
must be contained in one such EntityCatalog.
The name and documentation of the catalog itself is also multi lingual.
Modifier and Type | Field and Description |
---|---|
protected java.lang.String |
defaultLang |
protected Catalog<E> |
entityNames |
protected MuLi |
ownNames |
static java.lang.String |
symbolic
Language code of a pseudo language, used ot indes symbolic, non-national
representations.dot symbols like "." or "^"
for staccato articulation are indexed by this language code,
while the wording "staccato" would be indexed by "it", meaning "Italian".
|
Constructor and Description |
---|
EntityCatalog(java.lang.Class<E> itemClass,
java.lang.String defaultLang,
MuLi ownNames) |
EntityCatalog(java.lang.Class<E> itemClass,
java.lang.String defaultLang,
java.lang.String defaultLangOwnName) |
Modifier and Type | Method and Description |
---|---|
void |
addEntityName(E entity,
java.lang.String lang,
java.lang.String name)
Put additional names for an entity, beyond those defined at creation.
|
void |
addEntityNames(E entity,
MuLi humanNames)
Put additional names for an entity, beyond those defined at creation.
|
static boolean |
doesNotOverrideSymbolic(MuLi muli)
Checks whether the symbolic language is used in the MuLi argument.
|
void |
dump(java.io.PrintStream ps)
|
java.lang.String |
getDefaultLanguage() |
java.util.Set<E> |
getEntities() |
E |
getEntity(java.lang.String name) |
E |
getEntity(java.lang.String lang,
java.lang.String name) |
java.lang.String |
getName() |
java.lang.String |
getName(java.lang.String lang) |
MuLi |
getNames(E entity) |
Translet.Parser<E> |
getParser()
Get a lexer which accepts the names of the entities in the default language.
|
Translet.Parser<E> |
getParser(java.lang.String lang)
Get a lexer which accepts the names of the entities in the given
language and returns the possibly found Entity as its value.
|
void |
setDefaultLanguage(java.lang.String l)
Changes default language dynamically.
|
public static final java.lang.String symbolic
protected MuLi ownNames
protected java.lang.String defaultLang
public EntityCatalog(java.lang.Class<E> itemClass, java.lang.String defaultLang, MuLi ownNames)
defaultLang
- the language code used as default for all entities
contained herein, and for name and doc of the catalog itself.ownNames
- the names of the catalog, possibly in more than one language.public EntityCatalog(java.lang.Class<E> itemClass, java.lang.String defaultLang, java.lang.String defaultLangOwnName)
public static boolean doesNotOverrideSymbolic(MuLi muli)
public void dump(java.io.PrintStream ps)
public java.lang.String getDefaultLanguage()
public void setDefaultLanguage(java.lang.String l)
public java.lang.String getName()
public java.lang.String getName(java.lang.String lang)
public E getEntity(java.lang.String lang, java.lang.String name)
Entity
with the given name in the in given language,
"null" if no such present.public E getEntity(java.lang.String name)
Entity
with the given name in the catalog's default language,
"null" if no such present.public java.util.Set<E> getEntities()
public void addEntityNames(E entity, MuLi humanNames)
public void addEntityName(E entity, java.lang.String lang, java.lang.String name)
public Translet.Parser<E> getParser(java.lang.String lang)
eu.bandm.tools.ulex.ULex.ConstMap
, see there for
the behaviour in case of failure.getParser
in interface Translet.Parseable<E extends Entity>
public Translet.Parser<E> getParser()
getParser
in interface Translet.Parseable<E extends Entity>