Package jetbrains.mps.smodel
Class StaticReference
- java.lang.Object
 - 
- jetbrains.mps.smodel.SReference
 - 
- jetbrains.mps.smodel.SReferenceBase
 - 
- jetbrains.mps.smodel.StaticReference
 
 
 
 
- 
- All Implemented Interfaces:
 SReference
public final class StaticReference extends SReferenceBase
 
- 
- 
Nested Class Summary
- 
Nested classes/interfaces inherited from class jetbrains.mps.smodel.SReference
SReference.ProblemDescription 
 - 
 
- 
Field Summary
- 
Fields inherited from class jetbrains.mps.smodel.SReferenceBase
myImmatureTargetNode 
- 
Fields inherited from class jetbrains.mps.smodel.SReference
EMPTY_ARRAY, mySourceNode 
 - 
 
- 
Constructor Summary
Constructors Constructor Description StaticReference(String role, SNode sourceNode, SModelReference targetModelReference, SNodeId nodeId, String resolveInfo)Deprecated.StaticReference(String role, SNode sourceNode, SNode immatureTargetNode)Deprecated.StaticReference(SReferenceLink role, SNode sourceNode, SModelReference targetModelReference, SNodeId nodeId, String resolveInfo)create 'mature' referenceStaticReference(SReferenceLink role, SNode sourceNode, SNode immatureTargetNode)create 'young' reference 
- 
Method Summary
All Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description protected SNodegetTargetNode_internal()SNodeIdgetTargetNodeId()SModelgetTargetSModel()Deprecated.(1) Implementation detail, shall be private.SModelReferencegetTargetSModelReference()The following two operations are defined only for references which can instantly respond to the request (e.g.voidmakeDirect()protected voidmakeMature()voidsetTargetNodeId(SNodeId nodeId)voidsetTargetSModelReference(SModelReference modelReference)StringtoString()- 
Methods inherited from class jetbrains.mps.smodel.SReferenceBase
getResolveInfo, isDirect, makeIndirect, makeIndirect 
- 
Methods inherited from class jetbrains.mps.smodel.SReference
create, create, create, create, create, disableLogging, enableLogging, error, getLink, getResolveInfo, getRole, getSourceNode, getTargetNode, getTargetNodeReference, getTargetNodeSilently, setResolveInfo 
 - 
 
 - 
 
- 
- 
Constructor Detail
- 
StaticReference
public StaticReference(@NotNull SReferenceLink role, @NotNull SNode sourceNode, @NotNull SNode immatureTargetNode)
create 'young' reference 
- 
StaticReference
public StaticReference(@NotNull SReferenceLink role, @NotNull SNode sourceNode, @Nullable SModelReference targetModelReference, @Nullable SNodeId nodeId, @Nullable String resolveInfo)
create 'mature' reference 
- 
StaticReference
@Deprecated public StaticReference(@NotNull String role, @NotNull SNode sourceNode, @NotNull SNode immatureTargetNode)
Deprecated.create 'young' reference 
 - 
 
- 
Method Detail
- 
getTargetSModelReference
public SModelReference getTargetSModelReference()
Description copied from interface:SReferenceThe following two operations are defined only for references which can instantly respond to the request (e.g. they store the target model reference and/or node id as a part of the reference).- Specified by:
 getTargetSModelReferencein interfaceSReference- Specified by:
 getTargetSModelReferencein classSReferenceBase- Returns:
 - target model reference (if available)
 
 
- 
getTargetNodeId
@Nullable public SNodeId getTargetNodeId()
- Specified by:
 getTargetNodeIdin interfaceSReference- Overrides:
 getTargetNodeIdin classSReference
 
- 
setTargetSModelReference
public void setTargetSModelReference(@NotNull SModelReference modelReference)
- Overrides:
 setTargetSModelReferencein classSReferenceBase
 
- 
setTargetNodeId
public void setTargetNodeId(SNodeId nodeId)
 
- 
getTargetNode_internal
protected SNode getTargetNode_internal()
- Specified by:
 getTargetNode_internalin classSReference
 
- 
getTargetSModel
@Deprecated public SModel getTargetSModel()
Deprecated.(1) Implementation detail, shall be private. Now, with ClassCreator that no longer casts to StaticReference to access this method, can be made private. LEAVE as public till the end of 2018.3 release cycle to give clients time to update, just in case, make private once 2018.3 is out (2) Is flawed with respect to global repository assumption, references are resolved with null repository To be replaced with #getTargetModel_Fair 
- 
makeDirect
public void makeDirect()
- Overrides:
 makeDirectin classSReference
 
- 
makeMature
protected void makeMature()
- Overrides:
 makeMaturein classSReferenceBase
 
 - 
 
 -