| 130 | } |
| 131 | |
| 132 | Future<shared_ptr<const ObjectApprover>> getApprover( |
| 133 | const Option<authorization::Subject>& subject, |
| 134 | const authorization::Action& action) |
| 135 | { |
| 136 | Future<shared_ptr<const ObjectApprover>> future = |
| 137 | underlying_->getApprover(subject, action); |
| 138 | |
| 139 | if (!blocked_) { |
| 140 | return future; |
| 141 | } |
| 142 | |
| 143 | // The future is linked to the returned promise in `unleash()`. |
| 144 | futures_.push(future); |
| 145 | promises_.emplace(); |
| 146 | return promises_.back().future(); |
| 147 | } |
| 148 | |
| 149 | Future<size_t> pending() |
| 150 | { |
nothing calls this directly
no test coverage detected