public class StructuredReferenceService extends AbstractStructuredReferenceService
StructuredReference
for the specified domain element,
and to resolve specified StructuredReference
to a domain Element.
This service consults all IStructuredReferenceHandler
and IStructuredReferenceProvider registered with
with com.ibm.xtools.mmi.core.StructuredReferenceProviders extension point. The registered IStructuredReferenceHandler
are assumed to be at ProviderPriority.MEDIUM
.
Modifier and Type | Method and Description |
---|---|
protected java.lang.Object |
getCachingKey(org.eclipse.gmf.runtime.common.core.service.IOperation operation) |
IStructuredReferenceHandler |
getHandler(java.lang.String providerId)
Returns an instance of IStructuredReferenceHandler for the specified
providerId , |
static java.lang.Object |
getInfo(java.lang.Object referencedContext,
StructuredReference sRef,
java.lang.String infoName)
Finds an appropriate
IStructuredReferenceHandler for specified StructuredReference
and returns the result of call to IStructuredReferenceHandler.getInfo(Object, StructuredReference, String) |
static StructuredReferenceService |
getInstance()
Returns the shared instance of the StructuredReferenceService
|
java.lang.String |
getPriority(org.eclipse.core.runtime.IConfigurationElement element) |
static StructuredReference |
getStructuredReference(java.lang.Object referencedContext,
java.lang.Object domainElement)
Finds an appropriate
IStructuredReferenceHandler for specified Domain element, and returns the result of
the call to IStructuredReferenceHandler.getStructuredReference(Object, Object) |
static StructuredReference |
getStructuredReferenceFromURI(java.lang.Object referencedContext,
java.lang.String sRefString)
Finds an appropriate
IStructuredReferenceHandler based on provider ID encoded in specified sRefString and
returns the result of the call to IStructuredReferenceHandler.getStructuredReference(Object, String) |
protected StructuredReference |
internalGetStructuredReferenceFromSRef(java.lang.Object referencedContext,
java.lang.String sRefString,
com.ibm.xtools.mmi.core.internal.ref.InternalStructuredReference reference)
Finds an appropriate
IStructuredReferenceHandler based on provider ID encoded in specified sRefString and
returns the result of querying the StructuredReferenceService. |
protected org.eclipse.gmf.runtime.common.core.service.Service.ProviderDescriptor |
newProviderDescriptor(org.eclipse.core.runtime.IConfigurationElement element) |
static java.lang.Object |
resolveToDomainElement(java.lang.Object referencedContext,
StructuredReference sRef)
Finds an appropriate
IStructuredReferenceHandler for specified StructuredReference and
returns the result of the call to IStructuredReferenceHandler.resolveToDomainElement(Object, StructuredReference) |
createModifier
addProvider, clearCache, configureProviders, configureProviders, createPriorityCache, execute, executeUnique, getAllProviders, getProviders, isOptimistic, isOptimized, providerChanged, provides, provides, removeProvider
addProviderChangeListener, fireProviderChange, removeProviderChangeListener
public static final StructuredReferenceService getInstance()
protected StructuredReference internalGetStructuredReferenceFromSRef(java.lang.Object referencedContext, java.lang.String sRefString, com.ibm.xtools.mmi.core.internal.ref.InternalStructuredReference reference)
IStructuredReferenceHandler
based on provider ID encoded in specified sRefString
and
returns the result of querying the StructuredReferenceService.internalGetStructuredReferenceFromSRef
in class AbstractStructuredReferenceService
referencedContext
- Context in which this reference will be used, usually an instance of TransactionalEditingDomainsRefString
- serialized form of the StructuredReferencereference
- the StructuredReference to check the cache forsRefString
public static StructuredReference getStructuredReferenceFromURI(java.lang.Object referencedContext, java.lang.String sRefString)
IStructuredReferenceHandler
based on provider ID encoded in specified sRefString
and
returns the result of the call to IStructuredReferenceHandler.getStructuredReference(Object, String)
referencedContext
- Context in which this reference will be used, usually an instance of TransactionalEditingDomainsRefString
- serialized form of the StructuredReferencesRefString
public static StructuredReference getStructuredReference(java.lang.Object referencedContext, java.lang.Object domainElement)
IStructuredReferenceHandler
for specified Domain element, and returns the result of
the call to IStructuredReferenceHandler.getStructuredReference(Object, Object)
referencedContext
- Context in which this reference will be used, usually an instance of TransactionalEditingDomaindomainElement
- Domain Element for which the StructuredReference is requesteddomainElement
IStructuredReferenceHandler.getStructuredReference(Object, Object)
public static java.lang.Object resolveToDomainElement(java.lang.Object referencedContext, StructuredReference sRef)
IStructuredReferenceHandler
for specified StructuredReference
and
returns the result of the call to IStructuredReferenceHandler.resolveToDomainElement(Object, StructuredReference)
referencedContext
- Context in which this reference is used, usually an instance of TransactionalEditingDomainsRef
- StructuredReference
for which the domain element is requested.null
if no IStructuredReferenceHandler
is found
or sRef
is unresolvable.IStructuredReferenceHandler.resolveToDomainElement(Object, StructuredReference)
public static java.lang.Object getInfo(java.lang.Object referencedContext, StructuredReference sRef, java.lang.String infoName)
IStructuredReferenceHandler
for specified StructuredReference
and returns the result of call to IStructuredReferenceHandler.getInfo(Object, StructuredReference, String)
referencedContext
- Context in which this reference is used, usually an instance of TransactionalEditingDomainsRef
- StructuredReference
for which the information is required.infoName
- Identifier for the information requested, usually constants defined in StructuredReferenceInfoConstants
IStructuredReferenceHandler.getInfo(Object, StructuredReference, String)
protected org.eclipse.gmf.runtime.common.core.service.Service.ProviderDescriptor newProviderDescriptor(org.eclipse.core.runtime.IConfigurationElement element)
newProviderDescriptor
in class org.eclipse.gmf.runtime.common.core.service.Service
Service.newProviderDescriptor(org.eclipse.core.runtime.IConfigurationElement)
public java.lang.String getPriority(org.eclipse.core.runtime.IConfigurationElement element)
getPriority
in class org.eclipse.gmf.runtime.common.core.service.Service
protected java.lang.Object getCachingKey(org.eclipse.gmf.runtime.common.core.service.IOperation operation)
getCachingKey
in class org.eclipse.gmf.runtime.common.core.service.Service
public IStructuredReferenceHandler getHandler(java.lang.String providerId)
providerId
,providerId
- Provider Id for the requested IStructuredReferenceHandler