Проверка правильности создания документа

Метод publishSync возвращает код состояния после завершения создания документа. Кроме того, для проверки можно использовать асинхронный метод publish. Затем в нити клиента можно дождаться завершения нити и проверить состояние с помощью метода getStatus генератора.

Метод publishSync:

   RRDGEngine.EngineStatus status = generator.publishSync(docSpec, previewQueryLimit);
   // на этом этапе обработка завершена (успешно или нет) и состояние задания указано в переменной status

Метод publish:

В большинстве случаев наиболее удобным является метод publishSync. Метод publish можно использовать, если код клиента не ожидает завершения задания, чтобы не блокировать клиентское приложение (например, в сценарии удаленного создания документов).
Поток для асинхронных заданий выглядит следующим образом:
  • Запуск задания
  • Периодическая проверка состояния задания
        Thread t = generator.publish(docSpec, previewQueryLimit);
        // этот метод возвращает управление практически сразу и код клиента ожидает завершения процесса создания документа

        // ожидание завершения задания
        try
        {
            t.join();

            // задание завершено и можно проверить его состояние
            RRDGEngine.EngineStatus status = generator.getStatus();
        }
        catch (InterruptedException e)
        {
            throw new RPEException(e);
        }

Комментарии