Dokumentumelőállítás sikerének ellenőrzése

A publishSync metódus csak akkor tér vissza, amikor a távoli dokumentumelőállítás befejeződött, akár sikeres az előállítás, akár nem. A metódus visszatérése után az eredménykódból határozhatja meg az állapotot. Másik ellenőrzési mód a publish metódus használata, ami aszinkron. Ezután az ügyfél szálon megvárhatja, hogy befejeződjön a szál, majd az előállító getStatus metódusával ellenőrizheti az állapotot.

A publishSync metódus használata:

   RRDGEngine.EngineStatus status = generator.publishSync(docSpec, previewQueryLimit);
   // Ezen a ponton minden befejeződött (sikeresen vagy sikertelenül) és az állapot változó tartalmazza a feladat állapotát

A publish metódus használata:

Az esetek többségében a publishSync metódus a legkényelmesebb. A publish metódus akkor használható, amikor az ügyfél kód nem várja meg a feladat befejeződését, különösen a távoli dokumentumelőállítási példahelyzetben, így az ellenőrzés nem zárolja az ügyfélalkalmazást.
Aszinkron feladat esetén a folyam:
  • Feladat indítása
  • A feladat lekérdezése rendszeres időközönként, hogy megtudja, ha befejeződött
        Thread t = generator.publish(docSpec, previewQueryLimit);
        // ez majdnem azonnal visszatér és ezen a ponton a dokumentumelőállítás általában még fut, így az ügyfél kódnak várnia kell rá

        // várakozás a feladat befejeződésére
        try
        {
            t.join();

            // itt a feladat befejeződött és a következővel lehet megszerezni az állapotát:
            RRDGEngine.EngineStatus status = generator.getStatus();
        }
        catch (InterruptedException e)
        {
            throw new RPEException(e);
        }

Visszajelzés