private String getName(Contact contact, String charSet) { StringBuilder builder = new StringBuilder(); builder.append("N;").append(charSet).append(':'); // $NON-NLS-1$ builder.append(contact.getLastName()).append(';'); builder.append(contact.getFirstName()).append(';'); builder.append(contact.getMiddleName()); String title = contact.getTitle(); if (title.length() != 0) { builder.append(';').append(title); } builder.append('\n'); return builder.toString(); }
@Persist public void doSave(@Optional IProgressMonitor monitor) throws IOException, InterruptedException { if (monitor == null) { monitor = new NullProgressMonitor(); } monitor.beginTask("Saving contact details to vCard...", 16); Contact originalContact = detailComposite.getOriginalContact(); Contact modifiedContact = detailComposite.getModifiedContact(); saveAsVCard(modifiedContact, modifiedContact.getSourceFile()); originalContact.setCity(modifiedContact.getCity()); Thread.sleep(50); monitor.worked(1); originalContact.setCompany(modifiedContact.getCompany()); Thread.sleep(50); monitor.worked(1); originalContact.setCountry(modifiedContact.getCountry()); Thread.sleep(50); monitor.worked(1); originalContact.setEmail(modifiedContact.getEmail()); Thread.sleep(50); monitor.worked(1); originalContact.setFirstName(modifiedContact.getFirstName()); Thread.sleep(50); monitor.worked(1); originalContact.setJobTitle(modifiedContact.getJobTitle()); Thread.sleep(50); monitor.worked(1); originalContact.setLastName(modifiedContact.getLastName()); Thread.sleep(50); monitor.worked(1); originalContact.setMiddleName(modifiedContact.getMiddleName()); Thread.sleep(50); monitor.worked(1); originalContact.setMobile(modifiedContact.getMobile()); Thread.sleep(50); monitor.worked(1); originalContact.setNote(modifiedContact.getNote()); Thread.sleep(50); monitor.worked(1); originalContact.setPhone(modifiedContact.getPhone()); Thread.sleep(50); monitor.worked(1); originalContact.setState(modifiedContact.getState()); Thread.sleep(50); monitor.worked(1); originalContact.setStreet(modifiedContact.getStreet()); Thread.sleep(50); monitor.worked(1); originalContact.setTitle(modifiedContact.getTitle()); Thread.sleep(50); monitor.worked(1); originalContact.setWebPage(modifiedContact.getWebPage()); Thread.sleep(50); monitor.worked(1); originalContact.setZip(modifiedContact.getZip()); Thread.sleep(50); monitor.worked(1); updatePartTitle(originalContact); monitor.done(); dirtyable.setDirty(false); }