Metoda publishSync se při dokončení vzdáleného generování dokumentů pouze vrátí, ať již bylo generování úspěšné či nikoli. Při návratu této metody můžete určit stav kontrolou návratového kódu. Další možností verifikace je použití metody publish, která je asynchronní.
Pak můžete v podprocesu klienta počkat na dokončení podprocesu a zkontrolovat stav pomocí metody getStatus generátoru.
Použití metody publishSync:
RRDGEngine.EngineStatus status = generator.publishSync(docSpec, previewQueryLimit);
// V tomto bodě je vše dokončeno (ať již úspěšně či nikoli) a stav úlohy je v proměnné stavu
Použití metody publish:
Ve většině případů je nejpohodlnější metodou metoda
publishSync. Metodu
publish lze použít, když kód klienta nečeká na dokončení úlohy, zejména ve scénáři vzdáleného generování dokumentů, aby verifikace neuzamkla klientskou aplikaci.
Tok pro asynchronní úlohy:
- Spuštění úlohy.
- Pravidelné vyzývání úlohy ke zjištění, zda již skončila.
Thread t = generator.publish(docSpec, previewQueryLimit);
// vrátí se téměř okamžitě a docgen v tomto bodě obvykle dosud běží, takže na něj musí kód klienta počkat
// počkat na dokončení úlohy
try
{
t.join();
// zde je úloha dokončena a její stav lze získat pomocí
RRDGEngine.EngineStatus status = generator.getStatus();
}
catch (InterruptedException e)
{
throw new RPEException(e);
}