Útmutatók

Fájlok és tárolás

A példány mappája

A Context.StorageDirectory a példány saját, megmaradó mappája (Linuxon /var/lib/kofa/instances/<id>/). Ide írj mindent, aminek túl kell élnie az újraindítást: felvett adathalmaz, tanított modell, gyorsítótár.

A mappa a példány oldal Fájlok paneljén böngészhető, letölthető (mappa zipként), és Operator szereppel feltölthető és törölhető. Így jut ki a felvett adat és jut be például egy modell; a Komodnak csak a fájlt kell figyelnie. A feltöltés atomikus: előbb ideiglenes néven íródik, aztán átnevezés történik, így nem látsz félig írt fájlt.

Feltöltés a Komod felületéről

Egy Komod saját nézete is tölthet fel fájlt a példány mappájába:

await Kofa.UploadFileAsync(InstanceId, "maps", "terkep.pbf", stream);

Operator szerep kell hozzá, és a szerver méretkorlátja érvényes.

JSON és a hot unload

A port adatai a KOFA JSON konvencióját követik (camelCase, enum szövegként). A Komod kódjában ne használj reflexiós JsonSerializer-t a saját típusaidra az alapértelmezett (statikus) beállításokkal: a System.Text.Json gyorsítótára életben tartaná a csomag betöltési környezetét, és a csomag nem lenne kitölthető (frissítéskor memóriaszivárgás).

Saját JSON-hoz használd az Utf8JsonWriter-t és a JsonDocument-et, vagy adj át saját JsonSerializerOptions példányt, amelyet a csomaggal együtt eldobsz. A parancsok argumentumát és eredményét a KOFA csomagonkénti beállításokkal szerializálja.