Class IdInfoRegistry
- java.lang.Object
 - 
- jetbrains.mps.persistence.registry.IdInfoRegistry
 
 
- 
public class IdInfoRegistry extends Object
Fraction of a structure model, sufficient to serialize/de-serialize given model/nodes. No thread safety is ensured, deemed to be populated from a single thread. 
- 
- 
Nested Class Summary
Nested Classes Modifier and Type Class Description static interfaceIdInfoRegistry.IndexEncoder 
- 
Constructor Summary
Constructors Constructor Description IdInfoRegistry() 
- 
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description ConceptInfofind(SConcept concept)AggregationLinkInfofind(SContainmentLink link)PropertyInfofind(SProperty property)AssociationLinkInfofind(SReferenceLink link)ConceptInfoget(SConceptId concept)List<LangInfo>getLanguagesInUse()voidinitializeIndexValues(IdInfoRegistry.IndexEncoder indexEncoder)Treat set of known meta-objects as closed and assign string index values to each and every meta-object registeredbooleanknows(SConceptId concept)booleanknows(SLanguageId lang)ConceptInforegisterConcept(SConceptId concept, String conceptName)Records a concept (unless already known) in the collector.LangInforegisterLanguage(SLanguageId lang, String languageName)Records a language (unless already known) in the collector 
 - 
 
- 
- 
Method Detail
- 
getLanguagesInUse
public List<LangInfo> getLanguagesInUse()
- Returns:
 - ordered set of languages known to this registry
 
 
- 
registerLanguage
@NotNull public LangInfo registerLanguage(@NotNull SLanguageId lang, @NotNull String languageName)
Records a language (unless already known) in the collector- Returns:
 - utility object that keeps language information essential for persistence
 
 
- 
registerConcept
@NotNull public ConceptInfo registerConcept(@NotNull SConceptId concept, @NotNull String conceptName) throws IllegalArgumentException
Records a concept (unless already known) in the collector. NOTE, concept's language has to be registered beforehand.- Returns:
 - utility object that keeps concept information essential for persistence
 - Throws:
 IllegalArgumentException- if concept to register comes from unknown language
 
- 
knows
public boolean knows(@NotNull SLanguageId lang)
 
- 
knows
public boolean knows(@NotNull SConceptId concept)
 
- 
get
@Nullable public ConceptInfo get(@NotNull SConceptId concept)
 
- 
find
public ConceptInfo find(@NotNull SConcept concept)
 
- 
find
public PropertyInfo find(@NotNull SProperty property)
 
- 
find
public AssociationLinkInfo find(@NotNull SReferenceLink link)
 
- 
find
public AggregationLinkInfo find(@NotNull SContainmentLink link)
 
- 
initializeIndexValues
public void initializeIndexValues(@NotNull IdInfoRegistry.IndexEncoder indexEncoder)
Treat set of known meta-objects as closed and assign string index values to each and every meta-object registered- Parameters:
 indexEncoder- translates internal identity integer value into an index for textual persistence- See Also:
 BaseInfo.getIndex()
 
 - 
 
 -