public class LabelGeneratorRegistry extends java.lang.Object implements ILabelGenerator.Registry
MethodCall registrations may be made via registerInstanceMethod or registerStaticMethod.
A debug string may be obtained via DebugString.toDebug(object).
DebugString providers string formatters for simple classes such as String, Number, Boolean and Ecore components such as EObject, Resource and ResourceSet.
User extensions should be registered prior to use. Beware that late registration can give misleading results since in the absence of an exact MethodCall registration the class hierarchy is search first for base classes then for instances for which there is an exact MethodCall match. This result is then cached and so may occlude a late registration.
Modifier and Type | Field and Description |
---|---|
protected ILabelGenerator.Registry |
delegate |
INSTANCE
Constructor and Description |
---|
LabelGeneratorRegistry()
Construct a registry that resolves label generators locally.
|
LabelGeneratorRegistry(ILabelGenerator.Registry delegate)
Construct a registry that resolves label generators locally when possible
but which delegates to delegate otherwise.
|
Modifier and Type | Method and Description |
---|---|
<T> void |
buildLabelFor(ILabelGenerator.Builder s,
T labelledObject) |
<T> void |
buildSubLabelFor(ILabelGenerator.Builder labelBuilder,
T labelledObject) |
ILabelGenerator.Builder |
createDefaultLabelBuilder(java.util.Map<ILabelGenerator.Option<?>,java.lang.Object> options) |
static java.lang.String |
debugLabelFor(java.lang.Object object) |
ILabelGenerator<?> |
get(java.lang.Class<?> labelledClass) |
protected ILabelGenerator<?> |
getLabelGenerator(java.lang.Class<?> cls) |
static void |
initialize(ILabelGenerator.Registry registry) |
java.lang.Object |
install(java.lang.Class<?> labelledClass,
ILabelGenerator.Descriptor labelDescriptor) |
java.lang.Object |
install(java.lang.Class<?> labelledClass,
ILabelGenerator<?> labelGenerator) |
java.lang.String |
labelFor(java.lang.Object labelledObject) |
java.lang.String |
labelFor(java.lang.Object labelledObject,
java.util.Map<ILabelGenerator.Option<?>,java.lang.Object> options) |
void |
uninstall(java.lang.Class<?> labelledClass) |
protected final ILabelGenerator.Registry delegate
public LabelGeneratorRegistry()
public LabelGeneratorRegistry(ILabelGenerator.Registry delegate)
public static java.lang.String debugLabelFor(java.lang.Object object)
public static void initialize(ILabelGenerator.Registry registry)
public <T> void buildLabelFor(ILabelGenerator.Builder s, T labelledObject)
buildLabelFor
in interface ILabelGenerator.Registry
public <T> void buildSubLabelFor(ILabelGenerator.Builder labelBuilder, T labelledObject)
buildSubLabelFor
in interface ILabelGenerator.Registry
public ILabelGenerator.Builder createDefaultLabelBuilder(java.util.Map<ILabelGenerator.Option<?>,java.lang.Object> options)
public ILabelGenerator<?> get(java.lang.Class<?> labelledClass)
get
in interface ILabelGenerator.Registry
protected ILabelGenerator<?> getLabelGenerator(java.lang.Class<?> cls)
public java.lang.Object install(java.lang.Class<?> labelledClass, ILabelGenerator.Descriptor labelDescriptor)
install
in interface ILabelGenerator.Registry
public java.lang.Object install(java.lang.Class<?> labelledClass, ILabelGenerator<?> labelGenerator)
install
in interface ILabelGenerator.Registry
public java.lang.String labelFor(java.lang.Object labelledObject)
labelFor
in interface ILabelGenerator.Registry
public java.lang.String labelFor(java.lang.Object labelledObject, java.util.Map<ILabelGenerator.Option<?>,java.lang.Object> options)
labelFor
in interface ILabelGenerator.Registry
public void uninstall(java.lang.Class<?> labelledClass)
uninstall
in interface ILabelGenerator.Registry