/android/import-contacts

To get this branch, use:
bzr branch http://bzr.ed.am/android/import-contacts
41 by edam
- updated TODO
1
* rename VCFImporter to VcardImporter and VCard to Vcard
2
* VcardImporter.Vcard.finaliseParsing() should be renamed to finalise() to
3
	override Importer.ContactData.finalise(), if Java will permit us to do that
4
	(fnaliseParsing() throws stuff that finalise() doesn't), and should call
5
	super.finalise().
6
* rename Importer.isImportRequired() to checkForDuplicate() and make it private.
7
	This should be called from Importer.importContact(), which should then call
8
	skipContact() to update the UI and return if checkForDuplicate() returns
9
	false.
10
* ContactData.finalise should create a ContactsCache.CacheIdentifier and throw
11
	ContactCannotBeIdentifiedException() if that fails, which can be picked up
12
	in Vcard.finalise(). Importer.importContact() and the renamed
13
	Importer.checkForDuplicates() should use the ContactData's CacheIdentifier
14
	and not create their own. This will also ensure that ContactData.finalise()
15
	has been correctly called (or the identifier would be null).
16
* import a crap-load of contacts before release!
40 by edam
- fixed logic for vcard field types (home, work, cell, etc) so it works
17
* change some public final static ints, that aren't really consts, in to enums
18
* create a back-end object to read/write to android. This can be overridden to
19
	use the new ContractsContacts API.
20
* add warnings when email addresses, phone numbers, etc, fail sanitisation (and
21
	are ignored) during the import
38 by edam
- updated TODO
22
* add base64 decoding to support (even if to ignore) vcards with image data
17 by edam
- updated NEWS, TODO and manifest
23
* possible bug: when displaying "aborting import" toaster, make sure the back
24
	button is enabled and the abort button is hidden (as if abort were pressed)
25
	since this can happen if, say, the alarm goes off.
26
* in the long term, we need to save/restore state from doit/importer