On 23 January 2013 15:40, Rafael Schloming <r...@alum.mit.edu> wrote:
> Yeah, it appears to be a bug. I checked in a potential fix on trunk. Give
> it a shot and see if it's still an issue.
>
> --Rafael

Thanks, that has indeed addressed the issue.  The Message system tests
which previously failed now run cleanly against the Proton-JNI (on the
jni-branch).

It does leave the question regarding the differences in usage of the
Proton-API. The Python/C binding makes calls to pn_message,
pn_message_id, and pn_message_correlation_id when creating its Message
facade object.  The Ruby/C and Java/C bindings call only pn_message
during construction of their facade object.

Python/C binding:

def __init__(self):
  self._msg = pn_message()
  self._id = Data(pn_message_id(self._msg))
  self._correlation_id = Data(pn_message_correlation_id(self._msg))

Ruby/C binding:

def initialize
  @impl = Cproton.pn_message
  ObjectSpace.define_finalizer(self, self.class.finalize!(@impl))
  end

Java/C binding (jni-branch only)

JNIMessage()
{
  _impl = Proton.pn_message();
}

Is there any reason why Python/C works in a different manner?

Kind regards, Keith.

Reply via email to