[interfacekit] Re: MimeDatabase

  • From: "Ingo Weinhold" <bonefish@xxxxxxxxxxxxxxx>
  • To: interfacekit@xxxxxxxxxxxxx
  • Date: Wed, 21 Aug 2002 02:27:16 CEST (+0200)

Weird, this mail just appeared in my new mails query after booting. The 
live query update message apparently got lost when it was fetched from 
my account earlier this day.

> > BTW, I finished the work on BNodeInfo. The tests are complete and 
> > the
> > implementation passes them. The class is not included in the build 
> > yet,
> > as it wouldn't work well with a partial BMimeType implementation. I
> > will add it as soon as all needed features are available.
> 
> In addition to everything else I mentioned earlier, 
> BMimeType::IconForType() should work now as well. Was there anything 
> else you needed (I'm tired and it's late, else I'd try it myself 
> :-)?

Cool. No, IIRC only GetPreferredApp(), GetIcon() and GetIconForType() 
are needed for BNodeInfo. But as BAppFileInfo needs some more methods 
and will itself communicate with the registrar, I guess -- not 
completely sure yet, still investigating -- it doesn't make that much 
sense to add it to the build now anyway. I will come back with this 
topic when I actually start implementing BAppFileInfo and something is 
missing. But, I suppose, you will be done earlier.

Just to prevent you running out of work: You might also want to think 
about what additional MIME database related structures we need to 
maintain in the registrar. The quite vague `app meta MIME' comes to my 
mind, but I suspect, it will turn out, that this just denotes the sum 
of application specific MIME data (supported types, icons for 
types,...) only stored in attributes as the other data. Then there is 
`__mime_table' which is certainly also held in memory to speed up 
BMimeType::GetSupportingTypes(). This map must be kept in sync when 
changes to the database are done. I think, this does basically concern 
BMimeType::Delete() and BAppFileInfo::SetSupportedTypes() (watch out 
the private BMimeType::{Set,Get}SupportedTypes(), that we may or may 
not want to implement as well).

CU, Ingo



Other related posts: