> On 2011-04-20 18:04:37, Chug Rolke wrote:
> > 1. To be complete the equality tests must propagate to the .NET binding as
> > well. See patch below.
> >
> > 2. This patch changes the API/ABI a little does it not?
> > For the .NET case assume you have Duration A(100) and Duration B(100).
> > Before this patch A==B is false and after this patch A==B is true.
> > How can we sell that?
> >
> > -Chuck
> >
> >
> > Index: qpid/cpp/bindings/qpid/dotnet/src/Duration.h
> > ===================================================================
> > --- qpid/cpp/bindings/qpid/dotnet/src/Duration.h (revision 1089977)
> > +++ qpid/cpp/bindings/qpid/dotnet/src/Duration.h (working copy)
> > @@ -81,8 +81,18 @@
> > Duration ^ result = gcnew Duration(multiplier *
> > dur->Milliseconds);
> > return result;
> > }
> > - };
> >
> > + static bool operator == (Duration ^ a, Duration ^ b)
> > + {
> > + return a->Milliseconds == b->Milliseconds;
> > + }
> > +
> > + static bool operator != (Duration ^ a, Duration ^ b)
> > + {
> > + return a->Milliseconds != b->Milliseconds;
> > + }
> > +};
> > +
> > public ref class DurationConstants sealed
> > {
> > private:
> >
As far as c++ API/ABI goes this is purely additive (it is a change but can't
break anything). Prior to this change comparing two durations for equality
would fail to compile due to the lack of equality operator.
I would expect though that the semantic change from a .NET perspective would
not only be acceptable but actually desired, no?
- Gordon
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/627/#review506
-----------------------------------------------------------
On 2011-04-20 16:47:00, Gordon Sim wrote:
>
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/627/
> -----------------------------------------------------------
>
> (Updated 2011-04-20 16:47:00)
>
>
> Review request for qpid, Andrew Stitcher, Alan Conway, Chug Rolke, and Steve
> Huston.
>
>
> Summary
> -------
>
> Fixes ttl overflow on the broker. Added equality operator for
> qpid::messaging::Duration (needed it in test and seemed generally valuable).
>
>
> This addresses bug QPID-3222.
> https://issues.apache.org/jira/browse/QPID-3222
>
>
> Diffs
> -----
>
> /trunk/qpid/cpp/include/qpid/messaging/Duration.h 1090157
> /trunk/qpid/cpp/src/qpid/broker/Message.cpp 1090157
> /trunk/qpid/cpp/src/qpid/messaging/Duration.cpp 1090157
> /trunk/qpid/cpp/src/tests/MessagingSessionTests.cpp 1090157
>
> Diff: https://reviews.apache.org/r/627/diff
>
>
> Testing
> -------
>
> New test added, make check passes.
>
>
> Thanks,
>
> Gordon
>
>