Class ExtensionTypeRegistry
A registry mapping extension type names to their ExtensionDefinition factories. The Default registry starts empty; users must register extension definitions to enable automatic resolution during deserialization.
public class ExtensionTypeRegistry
- Inheritance
-
ExtensionTypeRegistry
- Inherited Members
Constructors
ExtensionTypeRegistry()
public ExtensionTypeRegistry()
Properties
Default
The process-wide default registry. Starts empty.
public static ExtensionTypeRegistry Default { get; }
Property Value
Methods
Clone()
Create a snapshot copy of this registry.
public ExtensionTypeRegistry Clone()
Returns
Register(ExtensionDefinition)
Register an extension definition. Overwrites any existing definition with the same name.
public void Register(ExtensionDefinition definition)
Parameters
definitionExtensionDefinition
RegisterTemporary(ExtensionDefinition)
Temporarily register an extension definition. Overwrites any existing definition with the same name. Restores the original definition when the returned IDisposable is disposed.
public IDisposable RegisterTemporary(ExtensionDefinition definition)
Parameters
definitionExtensionDefinition
Returns
TryGetDefinition(string, out ExtensionDefinition)
Try to get a registered extension definition by name.
public bool TryGetDefinition(string extensionName, out ExtensionDefinition definition)
Parameters
extensionNamestringdefinitionExtensionDefinition
Returns
Unregister(ExtensionDefinition)
Unregisters an extension definition
public void Unregister(ExtensionDefinition definition)
Parameters
definitionExtensionDefinition