On Friday, February 11, 2011 06:18:45 am Milan Crha wrote:
> so I did some tests and fetching with FXCopyMessages is significantly
> faster, comparing it downloading all the bits of messages, not only its
> properties, but also attachments and other, then it's still not the
> exact thing I would like to have. Not talking about that I feel like
> misusing the function, because I'm actually not going to copy messages
> anywhere, I'm only reading its properties.
OK, but I think this is misplaced concern. The background to the whole
FastTransfer / Incremental Change Synchronization (FX/ICS) capability is to
support Outlook "cached" mode, where a local store is used for when the server
is offline or is bandwidth limited. So conceptually you're copying from one
store (the server) to another (the local copy).
> My only concern is that I would like to have something between
> FXCopyMessages and FXCopyProperties, an option to ask for particular
> messages, but only some properties from them, without attachments and
> such, for a summary fetching. We use quite limited list of properties
> for summary, so avoiding download of "all" properties, and subobjects is
> the main goal. Of course, FXCopyProperties is not usable because it
> requires particular object, which means OpenMessage/mapi_object_release
> calls, which are also pretty slow.
The general form is CopyTo, which takes a list of properties to exclude
(perhaps the bodies?). You can choose whether to do a "shallow" copy or not -
there is a flag ("level") for that.
One thing that might help are packed rops (where you can do multiple
operations in one call), which we don't have general support for on the client
side yet, but if there is one particular call sequence you always do, that
particular might be able to be accelerated.
Otherwise it will have to wait for some incremental change synchronization
(ICS) support - I don't have plans to work on this until at least May 2011.
Note that ICS will probably impose additional (perhaps impossible) constraints
on management of the local store. In particular, you'll have to flag / modify
particular properties whenever anything changes (e.g. user marks message as
read).
HTH
Brad
_______________________________________________
devel mailing list
[email protected]
http://mailman.openchange.org/listinfo/devel