Skip to content

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 : Attribute

objectAttributeGeneratePluginServerAttribute

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()

The server-authored context type augmented by the generator and used by parameterless hooks.

public Type? Context { get; set; }

Type?

Optional static factory method name on DotBoxD.Abstractions.GeneratePluginServerAttribute.Context with signature TContext Factory(HookContext raw).

public string? ContextFactory { get; set; }

string?

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; }

Type?