Przegląd API
Działające Java MarketAPI w pluginie 1.0.3 oraz planowane, nieistniejące HTTP API.
Na podstawie kodu GrzybcioRynek 1.0.3 i web 0.1.0.
W 1.0.3 istnieje tylko Java API dla innych pluginów na tym samym serwerze Paper. Warstwy HTTP i webhooków nie ma.
Co działa
| Powierzchnia | Status | Pakiet / plik |
|---|---|---|
MarketAPI | działa | com.example.marketplace.api.MarketAPI |
| Eventy Bukkit | działają | com.example.marketplace.api.event |
| PlaceholderAPI | opcjonalnie | identifier grybciorynek |
| HTTP REST | 🚧 Planned | brak kodu |
| Webhooki | 🚧 Planned | brak kodu |
MarketAPI.init jest wołane w finishEnable() po złożeniu magazynu i MarketManager. Przed tym isReady() jest false.
Szczegóły: Java MarketAPI, Eventy.
Czego nie ma
Nie ma serwera HTTP w pluginie. Strona/ to mock Next.js 0.1.0 — api.ts czyta mock.ts, nie plugin.
Logowanie na stronie: localStorage klucz grzybciorynek.session. Brak auth tokenów, sesji serwerowej i webhooków.
Propozycja endpointów (niezaimplementowana): Planowane HTTP API.
Wątki
Mutacje sellItem / removeListing muszą iść z głównego wątku serwera. Inaczej:
IllegalStateException: MarketAPI mutacje muszą być wywoływane z głównego wątku serweraPlugin niegotowy:
IllegalStateException: GrzybcioRynek API nie jest gotowe