Feb 4, 2011 at 5:34 AM
Edited Feb 4, 2011 at 9:58 AM
I'm happy enough to answer the question about updating data, but questions like those are probably best posted to the HealthVault developer forums. They apply to all users regardless of SDK.
That said, updating is rare...very rare in practice. I wouldn't worry about the performance aspect. Retrieving the most current thing version is appropriate for several reasons including concurrent access and version conflicts. Things should
be treated as a unit and updated as an entire entity.
The "Connection" class may be a little bit of a misnomer. Your application is authenticated once and it's access credentials are cached to be used across your entire application at the same time. Creating a connection from the factory
is then super light weight. Only when you make a request is an HTTP connection used. It's not like opening up a database connection. Connection objects themselves, however, are not thread safe and should only be used by a single thread at a time.
Underlying the connection is a Transport object that does the dirty work of managing HTTP connections. By default, connections use the URLConnectionTransport class which utilizes java's URLConnection class. These connections may be pooled as
There are many high traffic applications against HealthVault that close the HTTP connection between every request. I would evaluate first if you really need to pool them.