+ if (surf_action_->get_state() == resource::Action::State::FAILED) {
+ if (host_ && not host_->is_on())
+ set_state(State::SRC_HOST_FAILURE);
+ else
+ set_state(State::CANCELED);
+ } else if (surf_action_->get_state() == resource::Action::State::FINISHED) {
+ set_state(State::DONE);
+ }
+
+ clean_action();
+ /* Answer all simcalls associated with the synchro */
+ finish();
+}
+void SleepImpl::set_exception(actor::ActorImpl* issuer)
+{
+ /* FIXME: Really, nothing bad can happen while we sleep? */
+}
+void SleepImpl::finish()
+{
+ XBT_DEBUG("SleepImpl::finish() in state %s", get_state_str());