Closed Bug 298772 Opened 20 years ago Closed 19 years ago

Pluggable interfaces for import and export

Categories

(Calendar :: Internal Components, defect)

defect
Not set
normal

Tracking

(Not tracked)

RESOLVED FIXED

People

(Reporter: mvl, Assigned: mvl)

References

Details

Attachments

(1 file, 1 obsolete file)

import and export is currently done in one big (chrome) js file. This isn't
extendable. Also, the file isn't updated for the new api's.
Attached patch initial patch (obsolete) — — Splinter Review
This patch defines new interfaces and implements them. I didn't port all of the
importers/exporters. I doubt they are needed, but if they are, we can always
add them after we agree on an interface etc.

The importers/exporters are pluggable. nsICategoryManager is used to register
them
I don't like the way the extensions for the filepicker are stored in the
im/exporters. For example, *.htm and *.html will be two lines. That's not
really nice. But i do want to be able to have an extension that also exports to
html, but in some other cool layout, not the default boring list.

Comments on the interface or the impl?
Attachment #187285 - Flags: first-review?(dmose)
Blocks: 285016
Attachment #187285 - Flags: first-review?(dmose) → first-review?(pavlov)
Attached patch patch v2 — — Splinter Review
Updated patch. Moved the files to better locations, remove the gCalendarWindow
stuff etc.
Attachment #187285 - Attachment is obsolete: true
Attachment #187285 - Flags: first-review?(pavlov)
Attachment #188229 - Flags: first-review?(shaver)
Comment on attachment 188229 [details] [diff] [review]
patch v2

It's a shame we can't do arrays of AString, to avoid needing the calIFileType
interface...

I think we want the methods to be called importFromStream and exportToStream,
since we're not really exporting the stream.  (We sort of are importing the
stream, but I think the symmetry here will win.)

We should probably call the CSV importer "OutlookCSVImporter", since it's not
really a general CSV-handler, right?

spelling: "Comma Separated Values" (also  an l10n hazard, but that can be a
follow-up)

In parseTextField, you have an else after a return, which is a non-sequitur you
should avoid. =)

I don't see the calendar/Makefile.in change that would be needed to descend
into calendar/import-export and actually build all these goodies, which I
presume you want to do.

r=shaver with the above fixes made.  Sorry for the delay!
Attachment #188229 - Flags: first-review?(shaver) → first-review+
Patch checked in. I will file new bugs for the l10n issues.
Status: NEW → RESOLVED
Closed: 19 years ago
Resolution: --- → FIXED
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: