001package com.ericlam.mc.eld.common;
002
003import com.ericlam.mc.eld.registration.CommandRegistry;
004import com.ericlam.mc.eld.registration.ListenerRegistry;
005
006/**
007 * 泛平台指令註冊類,用於不同平台作擴展
008 * @param <CommandNode> 平台所屬的指令類
009 * @param <Listener> 平台所屬的事件監聽類
010 */
011public interface CommonRegistry<CommandNode extends CommonCommandNode<?>, Listener> {
012
013    /**
014     * 註冊指令
015     *
016     * @param registry 指令註冊
017     */
018    void registerCommand(CommandRegistry<CommandNode> registry);
019
020    /**
021     * 註冊事件監聽器
022     *
023     * @param registry 事件監聽器註冊
024     */
025    void registerListeners(ListenerRegistry<Listener> registry);
026
027
028}