Interface IManageableLifecycle<T>
Represents an interface for manageable components that have a lifecycle and are associated with a specific type of manager.
public interface IManageableLifecycle<in T> : IManageableLifecycle, IReloadable, IManageable<T>, IManageable where T : class, IManager
Type Parameters
T
The type of manager this manageable component is associated with.
- Inherited Members
- Extension Methods
Methods
Initialize(T, List<IPlugin>)
Initializes the lifecycle of the manager with a specific type.
void Initialize(T manager, List<IPlugin> plugins)
Parameters
Load(T, List<IPlugin>)
Loads the manager and its dependencies with a specific type.
void Load(T manager, List<IPlugin> plugins)
Parameters
OnReload(T, List<IPlugin>, ReloadReason)
Called when the manager is reloaded with a specific type. This can be used to handle any specific logic needed during a reload. This can also override the default reload behavior.
bool OnReload(T manager, List<IPlugin> plugins, ReloadReason reason)
Parameters
manager
Tplugins
List<IPlugin>reason
ReloadReason
Returns
- bool
true to allow default reload behaviour, false to stop
Ready(T, List<IPlugin>)
Prepares the manager for use with a specific type, typically after loading.
void Ready(T manager, List<IPlugin> plugins)
Parameters
Reload(T, List<IPlugin>, ReloadReason)
Reloads the manager and its dependencies with a specific type.
void Reload(T manager, List<IPlugin> plugins, ReloadReason reason)
Parameters
manager
Tplugins
List<IPlugin>reason
ReloadReason
Terminate(T, List<IPlugin>)
Terminates the manager and cleans up resources with a specific type.
void Terminate(T manager, List<IPlugin> plugins)
Parameters
Unload(T, List<IPlugin>)
Unloads the manager and its dependencies with a specific type.
void Unload(T manager, List<IPlugin> plugins)