cgeo/c-geo-opensource — pull request #1035 by blafoo (2012-01-24 22:15:58+00:00)
Title: [DON'T MERGE] Stronger use of CacheCache

Analysing #949 i found out that most of the time (~98%) is spent for the sequence cgData.loadCache() + cgData.storeCache() for each cache retrieved by the search (by viewport).

This search returns only rudimentary informations about each cache. Information that is not worth to be saved in the database BUT must be stored there because of the architecture of c:geo (intents use the geocode and not a cache object e.g.).

Instead of really storing and loading each minimalistic cache into and from the database (what is very, veeery, vvvvvvvvveeeeeeerrrrrrrrryyyyyyy slow) i tried to use more often the CacheCache - with success. The in-memory-db cache is now controlled fully by cgData. The advantages are:
- less DB operations
- better overall performance
- smaller DB. Only fully detailed caches are stored now.

Please have a look at the changes in cgeoapplication and cgData. These changes could be merged into the market release to solve #949.
As further steps i will move CacheCache into an inner class of cgData and will have a look at ParseResult (if it is still needed).