Thunderbird:Pluggable Store Migration: Difference between revisions

Jump to navigation Jump to search
no edit summary
No edit summary
No edit summary
Line 8: Line 8:


What, if anything, should we do with .mozmsgs directories? I guess we don't want to copy them because we'd need to mark the headers in the .msf file in the new directory as being indexed. The maildir store is special because the indexers should be able to use the messages in the store directly, and not make a copy. We need a way for the os search indexers to know this. Perhaps a boolean attribute on the store. Will the indexer need to know how to get the file from the message id? More likely, we'll need to be able to go from the file name to the message id, in order to open search hits. Perhaps we can add a new interface for this, and if the pluggable store implements that interface, the indexer will use it.
What, if anything, should we do with .mozmsgs directories? I guess we don't want to copy them because we'd need to mark the headers in the .msf file in the new directory as being indexed. The maildir store is special because the indexers should be able to use the messages in the store directly, and not make a copy. We need a way for the os search indexers to know this. Perhaps a boolean attribute on the store. Will the indexer need to know how to get the file from the message id? More likely, we'll need to be able to go from the file name to the message id, in order to open search hits. Perhaps we can add a new interface for this, and if the pluggable store implements that interface, the indexer will use it.
What about offline stores? In theory, we could just let nature take its course and let autosync repopulate the offline store, but that harm bandwidth-limited folks. I think we want to do something slightly different. We don't want to create a folder per se, just an offline store. And we only want to stream messages that we have offline. I think we want to call nsIMsgFolder::GetOfflineStoreOutputStream() and stream the message to the offline store. So the algorithm for offline stores would probably look something like this, for each folder:
For each header in the source db,
  copy hdr to the dest db
  if msg is offline, stream the message to the offline store
589

edits

Navigation menu