Description
This is a refactoring ticket. Certain operations contain no body (for example Touch) and thus need no generic parameters. For these methods we should provide overrides like this:
IOperationResult SendWithRetry(IOperation op)
Task<IOperationResult> SendWithRetryAsync(IOperation op);
The current methods have placeholder types for the T (object for example) and the value or body is ignored. This is confusing and may be difficult to maintain. These should inherit from a base operation class that ignores the body. OperationBase<T> should be refactored as well, with most of the logic going into OperationBase with no generic type parameters.
Attachments
For Gerrit Dashboard: NCBC-842 | ||||||
---|---|---|---|---|---|---|
# | Subject | Branch | Project | Status | CR | V |
48990,1 | NCBC-842: Add overloads for non-generic SendWithRetry and SendWithRetryAsync [wip] | master | couchbase-net-client | Status: ABANDONED | 0 | 0 |
48997,1 | NCBC-842: Add overloads for non-generic SendWithRetry and SendWithRetryAsync [wip] | master | couchbase-net-client | Status: ABANDONED | 0 | 0 |
49003,1 | NCBC-842: Add overloads for non-generic SendWithRetry and SendWithRetryAsync [wip] | master | couchbase-net-client | Status: ABANDONED | 0 | 0 |
49004,6 | NCBC-842: Add overloads for non-generic SendWithRetry and SendWithRetryAsync | master | couchbase-net-client | Status: ABANDONED | 0 | 0 |
49142,2 | NCBC-842: Add overloads for non-generic SendWithRetry and SendWithRetryAsync | master | couchbase-net-client | Status: MERGED | +2 | +1 |