Archived
This forum has been archived. Please start a new discussion on GitHub.
Blobject
mwilson
in Help Center
When ice_invoke is invoked on a Blobject, is any demarshalling done to obtain the operation name, or is the operation name just part of the message request?
0
Comments
-
Yes, the operation name is unmarshaled, just like for any other operation. Only the operation parameters are not unmarshaled, but instead provided as a blob (sequence of bytes).
Note that you should never invoke ice_invoke() on a blobject. ice_invoke() is invoked by the object adapter. Your code should implement ice_invoke() on a blobject, but never call it (in contrast to ice_invoke() on a proxy, where it is just reversed).0 -
Not the message body (parameters, return values, etc.), because these are never unmarshaled. Only the message header (which includes identity, operation name, context, etc.) is remarshaled. Being able to forward requests without touching the message body is one of the big advantages of Blobjects, and allows to have fast request forwarding.0
