| 289 | } |
| 290 | |
| 291 | void |
| 292 | TransformationPlugin::pause() |
| 293 | { |
| 294 | if (state_->paused_) { |
| 295 | LOG_ERROR("Can not pause transformation, already paused TransformationPlugin=%p (vconn)contp=%p tshttptxn=%p", this, |
| 296 | state_->vconn_, state_->txn_); |
| 297 | } else if (state_->input_complete_dispatched_) { |
| 298 | LOG_ERROR("Can not pause transformation (transformation completed) TransformationPlugin=%p (vconn)contp=%p tshttptxn=%p", this, |
| 299 | state_->vconn_, state_->txn_); |
| 300 | } else { |
| 301 | state_->paused_ = true; |
| 302 | if (!static_cast<bool>(static_cast<ResumeAfterPauseCont *>(state_))) { |
| 303 | *static_cast<ResumeAfterPauseCont *>(state_) = ResumeAfterPauseCont(TSContMutexGet(reinterpret_cast<TSCont>(state_->txn_))); |
| 304 | } |
| 305 | } |
| 306 | } |
| 307 | |
| 308 | bool |
| 309 | TransformationPlugin::isPaused() const |
nothing calls this directly
no test coverage detected