本文整理汇总了C++中TAO_InputCDR::read_octet方法的典型用法代码示例。如果您正苦于以下问题:C++ TAO_InputCDR::read_octet方法的具体用法?C++ TAO_InputCDR::read_octet怎么用?C++ TAO_InputCDR::read_octet使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类TAO_InputCDR
的用法示例。
在下文中一共展示了TAO_InputCDR::read_octet方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: request
bool
Routing_Slip::unmarshal (TAO_Notify_EventChannelFactory &ecf, TAO_InputCDR & cdr)
{
CORBA::ULong count = 0;
cdr.read_ulong (count);
for (size_t nreq = 0; nreq < count; ++nreq)
{
ACE_CDR::Octet code = 0;
while (cdr.read_octet(code))
{
try
{
if (code == TAO_Notify_Method_Request_Dispatch::persistence_code)
{
Delivery_Request * prequest;
ACE_NEW_THROW_EX (
prequest,
Delivery_Request(this_ptr_, this->delivery_requests_.size ()),
CORBA::NO_MEMORY ());
Delivery_Request_Ptr request(prequest);
TAO_Notify_Method_Request_Dispatch_Queueable * method =
TAO_Notify_Method_Request_Dispatch::unmarshal (
request,
ecf,
cdr);
if (method != 0)
{
this->delivery_requests_.push_back (request);
this->delivery_methods_.push_back (method);
}
}
else if (code == TAO_Notify_Method_Request_Lookup::persistence_code)
{
Delivery_Request_Ptr request(new Delivery_Request(this_ptr_, this->delivery_requests_.size ()));
TAO_Notify_Method_Request_Lookup_Queueable * method =
TAO_Notify_Method_Request_Lookup::unmarshal (
request,
ecf,
cdr);
if (method != 0)
{
this->delivery_requests_.push_back (request);
this->delivery_methods_.push_back (method);
}
}
}
catch (const CORBA::Exception&)
{
// @@todo should we log this?
// just ignore failures
}
}
}
return this->delivery_requests_.size () > 0;
}