Interview Mock SOAP 1.0.0 WSDL 1.1
RPC-style XML přes HTTP nad endpointem POST /soap. WSDL kontrakt: /soap?wsdl. Bez WS-Security headeru server odpovídá 401 SOAP Faultem AUTHENTICATION_REQUIRED.
| WS-Security username | books-user |
|---|---|
| WS-Security password | Books!2026 |
Operace přehled
| Operace | Request | Co dělá |
|---|---|---|
ListLoans | <status?>, <bookId?> | Vypíše všechny výpůjčky. Volitelné filtry status a bookId. |
GetLoan | <id> | Detail výpůjčky podle ID. LOAN_NOT_FOUND fault při neexistenci. |
CreateLoan | <bookId>, <borrowerName>, <dueDate?> | Vytvoří výpůjčku v REQUESTED. BOOK_NOT_AVAILABLE fault pro nedostupnou knihu. |
UpdateLoanStatus | <id>, <status> | Přechod stavu. INVALID_STATUS_TRANSITION fault mimo povolené přechody. |
ReviewLoan | <id>, <rating> | Set RETURNED + rating + recommendation. Druhý protokol nad stejným stavem — po SOAP ReviewLoan vidí REST RETURNED. |
Operations
POST
/soap
ListLoans
Vypíše seznam výpůjček
Volitelné filtry <status> a <bookId>. Bez filtrů vrátí všechny výpůjčky včetně embedded <book>.
Request envelope
POST /soap
POST
/soap
GetLoan
Detail výpůjčky podle ID
Vrátí výpůjčku s embedded <book>. Při neexistenci: SOAP Fault LOAN_NOT_FOUND + HTTP 404.
Request envelope
POST /soap
POST
/soap
CreateLoan
Vytvoří výpůjčku (status REQUESTED)
<bookId> musí existovat a být dostupná. <dueDate> je nepovinné (default +14 dní). Při nedostupné knize: SOAP Fault BOOK_NOT_AVAILABLE + HTTP 409.
Request envelope
POST /soap
POST
/soap
UpdateLoanStatus
Změna statusu výpůjčky
Přechody podle stavového automatu. Mimo povolené přechody: SOAP Fault INVALID_STATUS_TRANSITION + HTTP 409.
Request envelope
POST /soap
POST
/soap
ReviewLoan
Hodnocení po vrácení (set status RETURNED)
<rating> 1–5. Server nastaví status=RETURNED, vypočte recommendation (≥4 → RECOMMENDED, 3 → NEUTRAL, <3 → NOT_RECOMMENDED) a uvolní knihu.
Request envelope
POST /soap
Stavový automat výpůjčky
Server odmítá přechody mimo tabulku SOAP Faultem INVALID_STATUS_TRANSITION (REST: HTTP 409).
REQUESTED | → BORROWED, CANCELLED |
|---|---|
BORROWED | → RETURNED, OVERDUE, LOST |
OVERDUE | → RETURNED, LOST |
RETURNED | terminální |
CANCELLED | terminální |
LOST | terminální |
Po RETURNED nebo CANCELLED se kniha vrací do available=true. Po BORROWED/REQUESTED se zamyká na available=false.