| 270 | } |
| 271 | |
| 272 | void Unregister_Callback(CONNECTION_ID_TYPE connection_id, |
| 273 | RETURN_CODE_TYPE& return_code) |
| 274 | { |
| 275 | try { |
| 276 | Entities& entities = *Entities::instance(); |
| 277 | Entities::ConnIdToReceiverMap& readers = entities.receivers_; |
| 278 | if (readers.count(connection_id)) { |
| 279 | readers[connection_id]->dr->set_listener(NULL, 0); |
| 280 | return_code = RC_NO_ERROR; |
| 281 | return; |
| 282 | } |
| 283 | } catch (const CORBA::BAD_PARAM&) { |
| 284 | if (OpenDDS::DCPS::DCPS_debug_level) { |
| 285 | ACE_ERROR((LM_ERROR, "(%P|%t) ERROR: Unregister_Callback - INVALID_PARAM\n")); |
| 286 | } |
| 287 | } |
| 288 | |
| 289 | return_code = INVALID_PARAM; |
| 290 | } |
| 291 | |
| 292 | void Destroy_Connection(CONNECTION_ID_TYPE connection_id, |
| 293 | RETURN_CODE_TYPE& return_code) |