[omniORB] upgrade from omniORB280 to omniORB305

Smith, Wayne wsmith2@titan.com
Wed Nov 6 20:18:01 2002


This message is in MIME format. Since your mail reader does not understand
this format, some or all of this message may not be legible.

------_=_NextPart_001_01C285D1.8D8DBA50
Content-Type: text/plain;
	charset="iso-8859-1"

I'm attempting to upgrade from omniORB280 to omniORB305. It appears as
though I'm having difficulty 
with a macro we use in our baseline to compile different ORBs.

To compile omniORB we use the following macro:

   #define ACTIVATE_OBJECT(o) (boa->obj_is_ready(o), o->_this())

Each file that contains this macro dies similarly on o->_this.
The first of which is eventSupplier.C
The class definition is in eventSupplier.h:

  class EventSupplier
      : public virtual CosEventComm::_objref_PushSupplier

In eventSupplier constructor is where the compilation dies:

  EventSupplier::EventSupplier(const char *name, const char *userid)
      : CosEventComm::PushSupplier
  {
    char channel_name[256];
    utlExpandEnvironment(channel_name, name);
    char event_name[256];
    sprintf(event_name, "%s_%s", channel_name, userid);

    CosEventChannelAdmin::EventChannel_var eventChannel;
    eventChannel = createChannel(event_name);

    CORBA::BOA_ptr boa = _boa();

    ACTIVATE_OBJECT(eventChannel);

    CosEventChannelAdmin::SupplierAdmin_var s =
eventChannel->for_suppliers();
    pushConsumer = s->obtain_push_consumer();
    pushConsumer->connect_push_supplier(this);
    alive = 1;
  }

with the following errors:

  Compiling: eventSupplier.C
  eventSupplier.C: In method `EventSupplier::EventSupplier(const char *,
const char *)':
  eventSupplier.C:47: no matching function for call to
`CosEventChannelAdmin::_objref_EventChannel::_this ()'

Does this bring a revelation off of the top of your head? I'm kind of
stumped.


------_=_NextPart_001_01C285D1.8D8DBA50
Content-Type: text/html;
	charset="iso-8859-1"

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
<HTML>
<HEAD>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-1">
<META NAME="Generator" CONTENT="MS Exchange Server version 5.5.2653.12">
<TITLE> upgrade from omniORB280 to omniORB305</TITLE>
</HEAD>
<BODY>

<P><FONT SIZE=2>I'm attempting to upgrade from omniORB280 to omniORB305. It appears as though I'm having difficulty </FONT>
<BR><FONT SIZE=2>with a macro we use in our baseline to compile different ORBs.</FONT>
</P>

<P><FONT SIZE=2>To compile omniORB we use the following macro:</FONT>
</P>

<P><FONT SIZE=2>&nbsp;&nbsp; #define ACTIVATE_OBJECT(o) (boa-&gt;obj_is_ready(o), o-&gt;_this())</FONT>
</P>

<P><FONT SIZE=2>Each file that contains this macro dies similarly on o-&gt;_this.</FONT>
<BR><FONT SIZE=2>The first of which is eventSupplier.C</FONT>
<BR><FONT SIZE=2>The class definition is in eventSupplier.h:</FONT>
</P>

<P><FONT SIZE=2>&nbsp; class EventSupplier</FONT>
<BR><FONT SIZE=2>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; : public virtual CosEventComm::_objref_PushSupplier</FONT>
</P>

<P><FONT SIZE=2>In eventSupplier constructor is where the compilation dies:</FONT>
</P>

<P><FONT SIZE=2>&nbsp; EventSupplier::EventSupplier(const char *name, const char *userid)</FONT>
<BR><FONT SIZE=2>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; : CosEventComm::PushSupplier</FONT>
<BR><FONT SIZE=2>&nbsp; {</FONT>
<BR><FONT SIZE=2>&nbsp;&nbsp;&nbsp; char channel_name[256];</FONT>
<BR><FONT SIZE=2>&nbsp;&nbsp;&nbsp; utlExpandEnvironment(channel_name, name);</FONT>
<BR><FONT SIZE=2>&nbsp;&nbsp;&nbsp; char event_name[256];</FONT>
<BR><FONT SIZE=2>&nbsp;&nbsp;&nbsp; sprintf(event_name, &quot;%s_%s&quot;, channel_name, userid);</FONT>
</P>

<P><FONT SIZE=2>&nbsp;&nbsp;&nbsp; CosEventChannelAdmin::EventChannel_var eventChannel;</FONT>
<BR><FONT SIZE=2>&nbsp;&nbsp;&nbsp; eventChannel = createChannel(event_name);</FONT>
</P>

<P><FONT SIZE=2>&nbsp;&nbsp;&nbsp; CORBA::BOA_ptr boa = _boa();</FONT>
</P>

<P><FONT SIZE=2>&nbsp;&nbsp;&nbsp; ACTIVATE_OBJECT(eventChannel);</FONT>
</P>

<P><FONT SIZE=2>&nbsp;&nbsp;&nbsp; CosEventChannelAdmin::SupplierAdmin_var s = eventChannel-&gt;for_suppliers();</FONT>
<BR><FONT SIZE=2>&nbsp;&nbsp;&nbsp; pushConsumer = s-&gt;obtain_push_consumer();</FONT>
<BR><FONT SIZE=2>&nbsp;&nbsp;&nbsp; pushConsumer-&gt;connect_push_supplier(this);</FONT>
<BR><FONT SIZE=2>&nbsp;&nbsp;&nbsp; alive = 1;</FONT>
<BR><FONT SIZE=2>&nbsp; }</FONT>
</P>

<P><FONT SIZE=2>with the following errors:</FONT>
</P>

<P><FONT SIZE=2>&nbsp; Compiling: eventSupplier.C</FONT>
<BR><FONT SIZE=2>&nbsp; eventSupplier.C: In method `EventSupplier::EventSupplier(const char *, const char *)':</FONT>
<BR><FONT SIZE=2>&nbsp; eventSupplier.C:47: no matching function for call to `CosEventChannelAdmin::_objref_EventChannel::_this ()'</FONT>
</P>

<P><FONT SIZE=2>Does this bring a revelation off of the top of your head? I'm kind of stumped.</FONT>
</P>

</BODY>
</HTML>
------_=_NextPart_001_01C285D1.8D8DBA50--