/android/import-contacts

To get this branch, use:
bzr branch http://bzr.ed.am/android/import-contacts

« back to all changes in this revision

Viewing changes to src/org/waxworlds/importcontacts/Importer.java

  • Committer: edam
  • Date: 2009-01-13 06:37:52 UTC
  • Revision ID: edam@waxworlds.org-20090113063752-kjbyjqksaez1g7uv
updated todo list

Show diffs side-by-side

added added

removed removed

465
465
                Long contactId = ContentUris.parseId( contactUri );
466
466
                Uri contactPhonesUri = Uri.withAppendedPath( contactUri,
467
467
                                Contacts.People.Phones.CONTENT_DIRECTORY );
468
 
 
469
 
                // add phone numbers
470
468
                Set phonesKeys = phones.keySet();
 
469
 
 
470
                // add phone numbers
471
471
                Iterator i = phonesKeys.iterator();
472
472
                while( i.hasNext() ) {
473
473
                        ContactData.PhoneData phone = phones.get( i.next() );
491
491
                        if( phone._isPreferred ) values.put( Contacts.Phones.ISPRIMARY, 1 );
492
492
                        _doit.getContentResolver().insert( contactPhonesUri, values );
493
493
                }
 
494
 
 
495
                // now add those phone numbers to the cache to prevent the addition of
 
496
                // duplicate data from another file
 
497
                i = phonesKeys.iterator();
 
498
                while( i.hasNext() ) {
 
499
                        ContactData.PhoneData phone = phones.get( i.next() );
 
500
 
 
501
                        String number = sanitisePhoneNumber( phone._number );
 
502
                        if( number != null ) {
 
503
                                HashSet< String > numbers = _contactNumbers.get( contactId );
 
504
                                if( numbers == null ) {
 
505
                                        _contactNumbers.put( contactId, new HashSet< String >() );
 
506
                                        numbers = _contactNumbers.get( contactId );
 
507
                                }
 
508
                                numbers.add( number );
 
509
                        }
 
510
                }
494
511
        }
495
512
 
496
513
        private void importContactEmails( Uri contactUri,
499
516
                Long contactId = ContentUris.parseId( contactUri );
500
517
                Uri contactContactMethodsUri = Uri.withAppendedPath( contactUri,
501
518
                                Contacts.People.ContactMethods.CONTENT_DIRECTORY );
502
 
 
503
 
                // add phone numbers
504
519
                Set emailsKeys = emails.keySet();
 
520
 
 
521
                // add email addresses
505
522
                Iterator i = emailsKeys.iterator();
506
523
                while( i.hasNext() ) {
507
524
                        ContactData.EmailData email = emails.get( i.next() );
523
540
                        _doit.getContentResolver().insert( contactContactMethodsUri,
524
541
                                        values );
525
542
                }
 
543
 
 
544
                // now add those email addresses to the cache to prevent the addition of
 
545
                // duplicate data from another file
 
546
                i = emailsKeys.iterator();
 
547
                while( i.hasNext() ) {
 
548
                        ContactData.EmailData email = emails.get( i.next() );
 
549
 
 
550
                        String address = sanitiseEmailAddress( email.getAddress() );
 
551
                        if( address != null ) {
 
552
                                HashSet< String > addresses = _contactEmails.get( contactId );
 
553
                                if( addresses == null ) {
 
554
                                        _contactEmails.put( contactId, new HashSet< String >() );
 
555
                                        addresses = _contactEmails.get( contactId );
 
556
                                }
 
557
                                addresses.add( address );
 
558
                        }
 
559
                }
526
560
        }
527
561
 
528
562
        synchronized protected void checkAbort() throws AbortImportException