| 39 | } |
| 40 | |
| 41 | int |
| 42 | Writer::svc () |
| 43 | { |
| 44 | ACE_DEBUG((LM_DEBUG, ACE_TEXT("(%P|%t) Writer::svc begins.\n"))); |
| 45 | |
| 46 | ::DDS::InstanceHandleSeq handles; |
| 47 | |
| 48 | OPENDDS_STRING from = "Comic Book Guy"; |
| 49 | from += name_; |
| 50 | |
| 51 | Messenger::MessageDataWriter_var message_dw = Messenger::MessageDataWriter::_narrow(writer_.in()); |
| 52 | |
| 53 | Messenger::Message message; |
| 54 | message.subject_id = 99; |
| 55 | ::DDS::InstanceHandle_t handle = message_dw->register_instance(message); |
| 56 | |
| 57 | message.from = from.c_str(); |
| 58 | message.subject = CORBA::string_dup("Review"); |
| 59 | message.text = CORBA::string_dup("Worst. Movie. Ever."); |
| 60 | message.count = 0; |
| 61 | |
| 62 | ACE_DEBUG((LM_DEBUG, ACE_TEXT("(%P|%t) %T Writer::svc starting to write.\n"))); |
| 63 | |
| 64 | for (int i = 0; i < write_count_; i ++) { |
| 65 | ++message.count; |
| 66 | |
| 67 | ::DDS::ReturnCode_t const ret = message_dw->write(message, handle); |
| 68 | |
| 69 | if (ret != ::DDS::RETCODE_OK) { |
| 70 | ACE_ERROR ((LM_ERROR, |
| 71 | ACE_TEXT("(%P|%t) ERROR: Writer::svc, ") |
| 72 | ACE_TEXT("%dth write() returned %d.\n"), |
| 73 | i, |
| 74 | ret)); |
| 75 | } |
| 76 | } |
| 77 | |
| 78 | const DDS::Duration_t d = { DDS::DURATION_INFINITE_SEC, DDS::DURATION_INFINITE_NSEC }; |
| 79 | const ::DDS::ReturnCode_t ret = writer_->wait_for_acknowledgments(d); |
| 80 | if (ret != DDS::RETCODE_OK) { |
| 81 | ACE_ERROR ((LM_ERROR, |
| 82 | ACE_TEXT("(%P|%t) ERROR: Writer::svc, ") |
| 83 | ACE_TEXT("wait_for_acknowledgments returned %d.\n"), |
| 84 | ret)); |
| 85 | } |
| 86 | |
| 87 | ACE_DEBUG ((LM_DEBUG, "(%P|%t) Done writing.\n")); |
| 88 | |
| 89 | return 0; |
| 90 | } |
nothing calls this directly
no test coverage detected