Class MapleDataProvider

java.lang.Object
provider.MapleDataProvider

public class MapleDataProvider extends Object
單一 WZ 根目錄(如 CharacterMapItem)的資料提供者。

建構時以遞迴方式掃描指定的 File 目錄, 將所有子目錄與 .xml 檔案登錄至以 MapleDataDirectoryEntry 為根的 輕量索引樹,供快速導覽。實際節點資料採按需解析:getData(String) 接受以 / 分隔的相對路徑,定位並解析對應的 XML 檔案,回傳 MapleData 根節點。

本類別由 MapleDataProviderFactory.getDataProvider(String)ConcurrentHashMap 快取管理,每個 WZ 根目錄名稱對應 一個共享的 MapleDataProvider 實例;伺服器啟動時由 MapleItemInformationProviderMapleLifeFactorySkillFactoryMapleQuest 等內容工廠各自取用。