Table of Contents

Interface IManageableLifecycle<T>

Namespace
RisingV.Shared.Managers
Assembly
RisingV.Shared.dll

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

manager T
plugins List<IPlugin>

Load(T, List<IPlugin>)

Loads the manager and its dependencies with a specific type.

void Load(T manager, List<IPlugin> plugins)

Parameters

manager T
plugins List<IPlugin>

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 T
plugins 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

manager T
plugins List<IPlugin>

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 T
plugins 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

manager T
plugins List<IPlugin>

Unload(T, List<IPlugin>)

Unloads the manager and its dependencies with a specific type.

void Unload(T manager, List<IPlugin> plugins)

Parameters

manager T
plugins List<IPlugin>