Asynchroniczne przetwarzanie dokumentów

Każde z narzędzi pozwala na przetworzenie pliku (ew. katalogu) i w efekcie generuje nowy plik. Pliki (katalogi) identyfikowane są przez unikalne id.
Id pliku można uzyskać po jego załadowaniu.
Dla każdego narzędzia plik wejściowy poddawany jest automatycznej konwersji na format tekstowy. Można zatem lądować plik w różnych formatach: txt, doc, docx, pdf, odt, rtf, ...

Rozpoczęcie przetwarzania metodą POST

POST /nlprest2/base/startTask
  • Protokół:
    • application/json
  • Dane wejściowe (json):
    • text (opcjonalne) = tekst do przetworzenia (string), alternatywnie można podać id pliku
    • file (opcjonalne) = id pliku (uzyskane przez /nlprest2/base/upload (string)
    • lpmn = pełny łańcuch przetwarzania (np. any2txt|wcrft2|liner2) przykład zgodnie z notacją LPMN
      • w przypadku nie użycia pól text lub file, lpmn musi zawierać odwołanie do źródła danych (file, filezip, urlzip itd).
    • user = nazwa użytkownika, aplikacji używającej usługi, zalecane podanie własnego e-maila
  • Przykład:
    { "lpmn":"any2txt|wcrft2",
            "text": "Ala ma kota" 
     }
    
  • Dane wyjściowe:
    • tekst reprezentujący ID zadania

Sprawdzenie statusu zadania

GET /nlprest2/base/getStatus/{IDzadania}
  • Zwraca:
    • Format JSON: {"value":"...","status":"DONE"| “ERROR” | “QUEUING”}
    • W przypadku „DONE” wartość „value” reprezentuje JSONArray z nazwami i ID pliku z wynikami.
    • W przypadku „PROCESSING” wartość „value” reprezentuje stopień wykonania zadania
    • W przypadku „ERROR” wartość „value” zawiersa opis błędu

Przykładowy kod w JAVIE