OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.

 


Help: OASIS Mailing Lists Help | MarkMail Help

cmis-comment message

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]


Subject: Re: [cmis-comment] getContentChanges and Paging


Hi Achim and Nicolas,

We (the CMIS TC) have reviewed this design and affirmed that your interpretation was correct. It is by design for the repository to return an "overlapped" event so that the client can be assured that there is no missing event between two successively returned lists of change events. The need to remove the duplicated event from the beginning of each returned list is a small price to pay for gaining this benefit. A clarification will be added to the CMIS spec the next time it is updated. We thank you for your kind comment.

Best regards,

David


On Thu, Nov 28, 2013 at 4:58 PM, Nicolas Raoul <nicolas.raoul@gmail.com> wrote:
Hello Achim&David,

That's something that also surprised me when I read the CMIS specification.

If I understand correctly, tools that want to process each change once need to:
- At the first call, process all received change items,
- At every subsequent call, process all received change items except the first one.

Or am I mistaken?

Kind regards,
Nicolas Raoul
http://CmisSync.com - Aegif


On Fri, Nov 29, 2013 at 6:42 AM, David Choy <david.choy500@gmail.com> wrote:
Hi Achim,

This mechanism is not meant to be used for conventional paging, although it may be used for that purpose. The getContentChanges service is used by a client to poll a repository to get all the changes the repository has made since the last time the client polled the repository (instead of returning all the repository changes since the beginning of time). The latestChangeLogToken is a logical time marker returned by the repository the last time getContentChanges was called by the client. It can only be interpreted by the repository who generated it. Whether or not this token corresponds to a specific event in a repository's internal change log is a repository's implementation choice. Semantically, the repository should return a list of changes the repository has made between the time mark submitted by the caller and the current time mark to be returned to the caller.
Hope this helps.

Regards,

David
 


On Thu, Nov 28, 2013 at 9:04 AM, Achim Derigs <achim.derigs@graudata.com> wrote:
Hi,

I have question about getContentChanges:

   http://docs.oasis-open.org/cmis/CMIS/v1.1/os/CMIS-v1.1-os.html#x1-3190002

Calling getContentChanges returns a change log token (latestChangeLogToken) corresponding to the last change event in changeEvents. Calling getContentChanges again (Paging) with the previous latestChangeLogToken returns the change event corresponding to the value of the specified change log token as the first result in the output.

This means each page (except the first one) starts with the last changeEvent of the page before!? Is this really what you want? Normally you don't want overlaps in paging!

Best regards
Achim





[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]