mirror of
https://github.com/valitydev/limiter-proto.git
synced 2024-11-06 00:35:18 +00:00
TD-550: Defines business exceptions for rollback method (#33)
This commit is contained in:
parent
e46f732ae3
commit
bbd2c0dce0
@ -84,9 +84,9 @@ service Limiter {
|
||||
|
||||
Clock Hold(1: LimitChange change, 2: Clock clock, 3: LimitContext context) throws (
|
||||
1: LimitNotFound e1,
|
||||
3: base.InvalidRequest e2
|
||||
4: InvalidOperationCurrency e3
|
||||
5: OperationContextNotSupported e4
|
||||
3: base.InvalidRequest e2,
|
||||
4: InvalidOperationCurrency e3,
|
||||
5: OperationContextNotSupported e4,
|
||||
6: PaymentToolNotSupported e5
|
||||
)
|
||||
|
||||
@ -100,7 +100,20 @@ service Limiter {
|
||||
Clock Rollback(1: LimitChange change, 2: Clock clock, 3: LimitContext context) throws (
|
||||
1: LimitNotFound e1,
|
||||
2: LimitChangeNotFound e2,
|
||||
3: base.InvalidRequest e3
|
||||
3: base.InvalidRequest e3,
|
||||
/*
|
||||
* Исключения бизнес-логики повторяются для `Rollback` с целью
|
||||
* согласованности контракта при вызове метода с тем же контекстом что
|
||||
* и в методе `Hold`.
|
||||
* То есть клиенту при последовательном обращении к методам удержания и
|
||||
* отката с одними и теми же контекстом и идентификаторами изменений
|
||||
* гарантируется что те же самые ошибки бизнес-логики будут явно
|
||||
* сообщены, а операция отката не будет пытаться найти и изменить
|
||||
* состояния не удержанного изменения.
|
||||
*/
|
||||
4: InvalidOperationCurrency e4,
|
||||
5: OperationContextNotSupported e5,
|
||||
6: PaymentToolNotSupported e6
|
||||
)
|
||||
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user