Skip to content

Interface IRegistryHolder

Namespace: Void.Minecraft.Network.Registries
Assembly: Void.Minecraft.dll

Groups the system and plugin packet-ID and transformation registries for one network channel.

public interface IRegistryHolder : IDisposable

Implements

IDisposable

Properties

PacketIdPlugins

Gets packet-ID mappings partitioned by contributing plugin.

IMinecraftPacketIdPluginsRegistry PacketIdPlugins { get; }

Property Value

IMinecraftPacketIdPluginsRegistry

PacketIdSystem

Gets packet-ID mappings owned by the system protocol plugin.

IMinecraftPacketIdSystemRegistry PacketIdSystem { get; }

Property Value

IMinecraftPacketIdSystemRegistry

PacketTransformationsPlugins

Gets packet transformations partitioned by contributing plugin.

IMinecraftPacketTransformationsPluginsRegistry PacketTransformationsPlugins { get; }

Property Value

IMinecraftPacketTransformationsPluginsRegistry

PacketTransformationsSystem

Gets packet transformations owned by the system protocol plugin.

IMinecraftPacketTransformationsSystemRegistry PacketTransformationsSystem { get; }

Property Value

IMinecraftPacketTransformationsSystemRegistry

ProtocolVersion

Gets the protocol version configured for the registries.

ProtocolVersion ProtocolVersion { get; }

Property Value

ProtocolVersion

Methods

ClearPlugin(IPlugin)

Removes packet IDs and transformations contributed by one plugin.

void ClearPlugin(IPlugin plugin)

Parameters

plugin IPlugin

The plugin whose entries are removed.

ClearPlugins()

Clears every plugin-contributed packet ID and transformation while preserving system registries.

void ClearPlugins()

ClearPlugins(Direction, Operation)

Clears plugin-contributed registrations for selected directions and operations.

void ClearPlugins(Direction direction, Operation operation)

Parameters

direction Direction

The packet direction to remove.

operation Operation

The read and/or write operations to remove.

DisposeBy(IPlugin)

Resets the held registries when they are all managed by the specified plugin.

void DisposeBy(IPlugin managedBy)

Parameters

managedBy IPlugin

The plugin that must own every held registry before disposal occurs.

PrintPackets()

Formats the packet types currently present in each held registry.

string PrintPackets()

Returns

string

A multiline diagnostic description of system and plugin packet registries.

Setup(IPlugin, ProtocolVersion)

Assigns a common owner and protocol version to all held registries.

void Setup(IPlugin managedBy, ProtocolVersion protocolVersion)

Parameters

managedBy IPlugin

The plugin responsible for registry lifecycle.

protocolVersion ProtocolVersion

The channel protocol version used to select mappings.

Exceptions

InvalidOperationException

Any held registry already has an owner.