> The separate clear() and revert() operations decouples functionality.  The
> revertAndClear() operations both couples functionality together.  You might
> find situations where you just need to clear() or just to revert() and
> sometimes to do both as is the case now.  When we break things down into
> simpler functions that do one thing and only one thing well then it's easier
> to recombine them to suite different situations.  This may also lead to
> better interface design.

Having thought about those methods a bit more, I think that clear()
and revert() are different. Clear() simply remove every entry from the
server _and_ from the changeLog, when revert() remove entries from the
server bug logs revert operations into the changeLog. You can't do a
revert() followed by a clear(), it's a waste, as everything you will
write in the changeLog in the revert() method will be erased by the
clear() method.

So the clear() semantic is : remove everything from server and
changelog up to the latest tag (or up to a specified tag)
and the revert() semantic is : revert everything from the serve, but
log the reverted operations in the changeLog. You can revert a revert
(redo).

>
> Alex
>
>



-- 
Regards,
Cordialement,
Emmanuel Lécharny
www.iktek.com

Reply via email to