/**
  * Form a single contact from cursor
  *
  * @param cursor
  * @return
  */
 public Contact getContact(Cursor cursor) {
   Contact contact = new Contact();
   contact.setFullName(cursor.getString(cursor.getColumnIndex(MobiComDatabaseHelper.FULL_NAME)));
   contact.setUserId(cursor.getString(cursor.getColumnIndex(MobiComDatabaseHelper.USERID)));
   contact.setLocalImageUrl(
       cursor.getString(cursor.getColumnIndex(MobiComDatabaseHelper.CONTACT_IMAGE_LOCAL_URI)));
   contact.setImageURL(
       cursor.getString(cursor.getColumnIndex(MobiComDatabaseHelper.CONTACT_IMAGE_URL)));
   String contactNumber =
       cursor.getString(cursor.getColumnIndex(MobiComDatabaseHelper.CONTACT_NO));
   if (TextUtils.isEmpty(contactNumber)) {
     contact.setContactNumber(
         cursor.getString(cursor.getColumnIndex(MobiComDatabaseHelper.USERID)));
   } else {
     contact.setContactNumber(
         cursor.getString(cursor.getColumnIndex(MobiComDatabaseHelper.CONTACT_NO)));
   }
   contact.setApplicationId(
       cursor.getString(cursor.getColumnIndex(MobiComDatabaseHelper.APPLICATION_ID)));
   Long connected = cursor.getLong(cursor.getColumnIndex(MobiComDatabaseHelper.CONNECTED));
   contact.setConnected(connected != 0 && connected.intValue() == 1);
   contact.setLastSeenAt(
       cursor.getLong(cursor.getColumnIndex(MobiComDatabaseHelper.LAST_SEEN_AT_TIME)));
   contact.processContactNumbers(context);
   return contact;
 }