Search in sources :

Example 6 with PostalAddress

use of org.thoughtcrime.securesms.contactshare.Contact.PostalAddress in project Signal-Android by signalapp.

the class ContactModelMapper method localToRemoteBuilder.

public static SharedContact.Builder localToRemoteBuilder(@NonNull Contact contact) {
    List<SharedContact.Phone> phoneNumbers = new ArrayList<>(contact.getPhoneNumbers().size());
    List<SharedContact.Email> emails = new ArrayList<>(contact.getEmails().size());
    List<SharedContact.PostalAddress> postalAddresses = new ArrayList<>(contact.getPostalAddresses().size());
    for (Phone phone : contact.getPhoneNumbers()) {
        phoneNumbers.add(new SharedContact.Phone.Builder().setValue(phone.getNumber()).setType(localToRemoteType(phone.getType())).setLabel(phone.getLabel()).build());
    }
    for (Email email : contact.getEmails()) {
        emails.add(new SharedContact.Email.Builder().setValue(email.getEmail()).setType(localToRemoteType(email.getType())).setLabel(email.getLabel()).build());
    }
    for (PostalAddress postalAddress : contact.getPostalAddresses()) {
        postalAddresses.add(new SharedContact.PostalAddress.Builder().setType(localToRemoteType(postalAddress.getType())).setLabel(postalAddress.getLabel()).setStreet(postalAddress.getStreet()).setPobox(postalAddress.getPoBox()).setNeighborhood(postalAddress.getNeighborhood()).setCity(postalAddress.getCity()).setRegion(postalAddress.getRegion()).setPostcode(postalAddress.getPostalCode()).setCountry(postalAddress.getCountry()).build());
    }
    SharedContact.Name name = new SharedContact.Name.Builder().setDisplay(contact.getName().getDisplayName()).setGiven(contact.getName().getGivenName()).setFamily(contact.getName().getFamilyName()).setPrefix(contact.getName().getPrefix()).setSuffix(contact.getName().getSuffix()).setMiddle(contact.getName().getMiddleName()).build();
    return new SharedContact.Builder().setName(name).withOrganization(contact.getOrganization()).withPhones(phoneNumbers).withEmails(emails).withAddresses(postalAddresses);
}
Also used : Email(org.thoughtcrime.securesms.contactshare.Contact.Email) ArrayList(java.util.ArrayList) Name(org.thoughtcrime.securesms.contactshare.Contact.Name) PostalAddress(org.thoughtcrime.securesms.contactshare.Contact.PostalAddress) Phone(org.thoughtcrime.securesms.contactshare.Contact.Phone) SharedContact(org.whispersystems.signalservice.api.messages.shared.SharedContact)

Aggregations

PostalAddress (org.thoughtcrime.securesms.contactshare.Contact.PostalAddress)6 LinkedList (java.util.LinkedList)4 Email (org.thoughtcrime.securesms.contactshare.Contact.Email)4 Name (org.thoughtcrime.securesms.contactshare.Contact.Name)4 Phone (org.thoughtcrime.securesms.contactshare.Contact.Phone)4 SharedContact (org.whispersystems.signalservice.api.messages.shared.SharedContact)4 Cursor (android.database.Cursor)2 NonNull (androidx.annotation.NonNull)2 WorkerThread (androidx.annotation.WorkerThread)2 ArrayList (java.util.ArrayList)2 Attachment (org.thoughtcrime.securesms.attachments.Attachment)2 PointerAttachment (org.thoughtcrime.securesms.attachments.PointerAttachment)2 Avatar (org.thoughtcrime.securesms.contactshare.Contact.Avatar)2