| 137 | } |
| 138 | |
| 139 | void event::set_payload(const std::shared_ptr<payload>& _payload, bool _force) { |
| 140 | |
| 141 | std::scoped_lock its_lock(mutex_); |
| 142 | if (is_provided_) { |
| 143 | if (prepare_update_payload_unlocked(_payload, _force)) { |
| 144 | if (is_updating_on_change_) { |
| 145 | if (change_resets_cycle_) |
| 146 | stop_cycle(); |
| 147 | |
| 148 | notify(_force); |
| 149 | |
| 150 | if (change_resets_cycle_) |
| 151 | start_cycle(); |
| 152 | |
| 153 | update_payload_unlocked(); |
| 154 | } |
| 155 | } |
| 156 | } else { |
| 157 | VSOMEIP_INFO_P << "Cannot set payload for event [" << hex4(current_->get_service()) << "." << hex4(current_->get_instance()) << "." |
| 158 | << hex4(current_->get_method()) << "]. It isn't provided"; |
| 159 | } |
| 160 | } |
| 161 | |
| 162 | void event::set_payload(const std::shared_ptr<payload>& _payload, client_t _client, bool _force) { |
| 163 | |