auto import from //branches/cupcake_rel/...@140373
diff --git a/src/com/google/wireless/gdata/contacts/data/ContactEntry.java b/src/com/google/wireless/gdata/contacts/data/ContactEntry.java
index 2d3246e..716a5fe 100644
--- a/src/com/google/wireless/gdata/contacts/data/ContactEntry.java
+++ b/src/com/google/wireless/gdata/contacts/data/ContactEntry.java
@@ -25,6 +25,7 @@
   private final Vector organizations = new Vector();
   private final Vector extendedProperties = new Vector();
   private final Vector groups = new Vector();
+  private String yomiName;
 
   public ContactEntry() {
     super();
@@ -112,6 +113,14 @@
     return organizations;
   }
 
+  public void setYomiName(String yomiName) {
+    this.yomiName = yomiName;
+  }
+
+  public String getYomiName() {
+    return yomiName;
+  }
+
   /*
   * (non-Javadoc)
   * @see com.google.wireless.gdata.data.Entry#clear()
@@ -129,6 +138,7 @@
     organizations.removeAllElements();
     extendedProperties.removeAllElements();
     groups.removeAllElements();
+    yomiName = null;
   }
 
   protected void toString(StringBuffer sb) {
@@ -189,6 +199,9 @@
       ((GroupMembershipInfo) iter.nextElement()).toString(sb);
       sb.append("\n");
     }
+    if (!StringUtils.isEmpty(yomiName)) {
+      sb.append(" yomiName:").append(yomiName).append("\n");
+    }
   }
 
   public void validate() throws ParseException {
diff --git a/src/com/google/wireless/gdata/contacts/parser/xml/XmlContactsGDataParser.java b/src/com/google/wireless/gdata/contacts/parser/xml/XmlContactsGDataParser.java
index 5c7f551..42a2534 100644
--- a/src/com/google/wireless/gdata/contacts/parser/xml/XmlContactsGDataParser.java
+++ b/src/com/google/wireless/gdata/contacts/parser/xml/XmlContactsGDataParser.java
@@ -237,6 +237,9 @@
       group.setGroup(parser.getAttributeValue(null  /* ns */, "href"));
       group.setDeleted("true".equals(parser.getAttributeValue(null  /* ns */, "deleted")));
       contactEntry.addGroup(group);
+    } else if ("yomiName".equals(name)) {
+      String yomiName = XmlUtils.extractChildText(parser);
+      contactEntry.setYomiName(yomiName);
     }
   }
 
diff --git a/src/com/google/wireless/gdata/contacts/serializer/xml/XmlContactEntryGDataSerializer.java b/src/com/google/wireless/gdata/contacts/serializer/xml/XmlContactEntryGDataSerializer.java
index 670e24b..70752b3 100644
--- a/src/com/google/wireless/gdata/contacts/serializer/xml/XmlContactEntryGDataSerializer.java
+++ b/src/com/google/wireless/gdata/contacts/serializer/xml/XmlContactEntryGDataSerializer.java
@@ -94,6 +94,8 @@
     while (eachGroup.hasMoreElements()) {
       serialize(serializer, (GroupMembershipInfo) eachGroup.nextElement());
     }
+
+    serializeYomiName(serializer, entry.getYomiName());
   }
 
   private static void serialize(XmlSerializer serializer, EmailAddress email)
@@ -240,4 +242,15 @@
       throws IOException, ParseException {
      serializer.text(blob);
   }
+
+  private static void serializeYomiName(XmlSerializer serializer,
+      String yomiName)
+      throws IOException {
+    if (StringUtils.isEmpty(yomiName)) {
+      return;
+    }
+    serializer.startTag(XmlContactsGDataParser.NAMESPACE_CONTACTS_URI, "yomiName");
+    serializer.text(yomiName);
+    serializer.endTag(XmlContactsGDataParser.NAMESPACE_CONTACTS_URI, "yomiName");
+  }
 }