RspmGeyserBridgeExtension
Entry point Geyser loads for the RSPM custom Bedrock entity bridge.
Geyser's event bus reflects over every declared method of this class when the extension is enabled (getDeclaredMethods()), which resolves the classes in every method signature. If any signature referenced a class a given Geyser build does not ship, that resolution would throw NoClassDefFoundError inside Geyser's own initialization and take all of Geyser down with it — not just this bridge. That includes Geyser internals AND newer API classes: the custom-entity API this bridge uses only exists on Geyser 2.11+.
So this class must stay a pure shell referencing only API classes that exist on every Geyser build we might be dropped into: no imports of org.geysermc.geyser.* outside long-standing org.geysermc.geyser.api.* classes, nothing from mcprotocollib, and no 2.11+ API types. All real logic lives in RspmGeyserBridgeCore, which is only constructed after missingRequiredClass confirms the running Geyser build ships everything we compile against; 2.11+ events are subscribed dynamically from the core for the same reason. If the probe fails, the bridge disables itself with a warning and Geyser keeps running without custom entities.