Class GeneratePluginServerAttribute
Namespace: DotBoxD.Abstractions
Assembly: DotBoxD.Abstractions.dll
Requests a generated plugin facade and builder for the annotated partial class.
[AttributeUsage(AttributeTargets.Class, Inherited = false)]public sealed class GeneratePluginServerAttribute : AttributeInheritance
Section titled “Inheritance”object ← Attribute ← GeneratePluginServerAttribute
Inherited Members
Section titled “Inherited Members”Attribute.Equals(object?), Attribute.GetCustomAttribute(Assembly, Type), Attribute.GetCustomAttribute(Assembly, Type, bool), Attribute.GetCustomAttribute(MemberInfo, Type), Attribute.GetCustomAttribute(MemberInfo, Type, bool), Attribute.GetCustomAttribute(Module, Type), Attribute.GetCustomAttribute(Module, Type, bool), Attribute.GetCustomAttribute(ParameterInfo, Type), Attribute.GetCustomAttribute(ParameterInfo, Type, bool), Attribute.GetCustomAttributes(Assembly), Attribute.GetCustomAttributes(Assembly, bool), Attribute.GetCustomAttributes(Assembly, Type), Attribute.GetCustomAttributes(Assembly, Type, bool), Attribute.GetCustomAttributes(MemberInfo), Attribute.GetCustomAttributes(MemberInfo, bool), Attribute.GetCustomAttributes(MemberInfo, Type), Attribute.GetCustomAttributes(MemberInfo, Type, bool), Attribute.GetCustomAttributes(Module), Attribute.GetCustomAttributes(Module, bool), Attribute.GetCustomAttributes(Module, Type), Attribute.GetCustomAttributes(Module, Type, bool), Attribute.GetCustomAttributes(ParameterInfo), Attribute.GetCustomAttributes(ParameterInfo, bool), Attribute.GetCustomAttributes(ParameterInfo, Type), Attribute.GetCustomAttributes(ParameterInfo, Type, bool), Attribute.GetHashCode(), Attribute.IsDefaultAttribute(), Attribute.IsDefined(Assembly, Type), Attribute.IsDefined(Assembly, Type, bool), Attribute.IsDefined(MemberInfo, Type), Attribute.IsDefined(MemberInfo, Type, bool), Attribute.IsDefined(Module, Type), Attribute.IsDefined(Module, Type, bool), Attribute.IsDefined(ParameterInfo, Type), Attribute.IsDefined(ParameterInfo, Type, bool), Attribute.Match(object?), Attribute.TypeId, object.Equals(object?), object.Equals(object?, object?), object.GetHashCode(), object.GetType(), object.ReferenceEquals(object?, object?), object.ToString()
Properties
Section titled “Properties”Context
Section titled “ Context”The server-authored context type augmented by the generator and used by parameterless hooks.
public Type? Context { get; set; }Property Value
Section titled “Property Value”Type?
ContextFactory
Section titled “ ContextFactory”Optional static factory method name on DotBoxD.Abstractions.GeneratePluginServerAttribute.Context with signature
TContext Factory(HookContext raw).
public string? ContextFactory { get; set; }Property Value
Section titled “Property Value”ControlService
Section titled “ ControlService”Optional control-plane service contract for install, live-settings, and lifecycle calls. When omitted,
the generator falls back to the legacy {WorldNamespace}.Ipc.IGamePluginControlService convention.
The contract must declare an UpdateSettingsAsync method with a typed array parameter for the update
batch (e.g. UpdateSettingsAsync(string pluginId, TUpdate[] updates, …)); the generator infers the
live-setting update element type (TUpdate) from that array, so the parameter need not be named
updates.
public Type? ControlService { get; set; }Property Value
Section titled “Property Value”Type?