12644d947574240b71c427d457f7a775dc160ec09Yorke Lee/* 22644d947574240b71c427d457f7a775dc160ec09Yorke Lee * Copyright (C) 2012 The Android Open Source Project 32644d947574240b71c427d457f7a775dc160ec09Yorke Lee * 42644d947574240b71c427d457f7a775dc160ec09Yorke Lee * Licensed under the Apache License, Version 2.0 (the "License"); 52644d947574240b71c427d457f7a775dc160ec09Yorke Lee * you may not use this file except in compliance with the License. 62644d947574240b71c427d457f7a775dc160ec09Yorke Lee * You may obtain a copy of the License at 72644d947574240b71c427d457f7a775dc160ec09Yorke Lee * 82644d947574240b71c427d457f7a775dc160ec09Yorke Lee * http://www.apache.org/licenses/LICENSE-2.0 92644d947574240b71c427d457f7a775dc160ec09Yorke Lee * 102644d947574240b71c427d457f7a775dc160ec09Yorke Lee * Unless required by applicable law or agreed to in writing, software 112644d947574240b71c427d457f7a775dc160ec09Yorke Lee * distributed under the License is distributed on an "AS IS" BASIS, 122644d947574240b71c427d457f7a775dc160ec09Yorke Lee * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 132644d947574240b71c427d457f7a775dc160ec09Yorke Lee * See the License for the specific language governing permissions and 142644d947574240b71c427d457f7a775dc160ec09Yorke Lee * limitations under the License. 152644d947574240b71c427d457f7a775dc160ec09Yorke Lee */ 162644d947574240b71c427d457f7a775dc160ec09Yorke Lee 1769c182afb0e6d82a341a28b4317aa703af768906Gary Maipackage com.android.contacts.model.dataitem; 182644d947574240b71c427d457f7a775dc160ec09Yorke Lee 192644d947574240b71c427d457f7a775dc160ec09Yorke Leeimport android.content.ContentValues; 202644d947574240b71c427d457f7a775dc160ec09Yorke Leeimport android.provider.ContactsContract; 212644d947574240b71c427d457f7a775dc160ec09Yorke Leeimport android.provider.ContactsContract.CommonDataKinds.StructuredName; 222644d947574240b71c427d457f7a775dc160ec09Yorke Leeimport android.provider.ContactsContract.Contacts.Data; 232644d947574240b71c427d457f7a775dc160ec09Yorke Lee 242644d947574240b71c427d457f7a775dc160ec09Yorke Lee/** 252644d947574240b71c427d457f7a775dc160ec09Yorke Lee * Represents a structured name data item, wrapping the columns in 262644d947574240b71c427d457f7a775dc160ec09Yorke Lee * {@link ContactsContract.CommonDataKinds.StructuredName}. 272644d947574240b71c427d457f7a775dc160ec09Yorke Lee */ 282644d947574240b71c427d457f7a775dc160ec09Yorke Leepublic class StructuredNameDataItem extends DataItem { 292644d947574240b71c427d457f7a775dc160ec09Yorke Lee 302644d947574240b71c427d457f7a775dc160ec09Yorke Lee public StructuredNameDataItem() { 312644d947574240b71c427d457f7a775dc160ec09Yorke Lee super(new ContentValues()); 322644d947574240b71c427d457f7a775dc160ec09Yorke Lee getContentValues().put(Data.MIMETYPE, StructuredName.CONTENT_ITEM_TYPE); 332644d947574240b71c427d457f7a775dc160ec09Yorke Lee } 342644d947574240b71c427d457f7a775dc160ec09Yorke Lee 352644d947574240b71c427d457f7a775dc160ec09Yorke Lee /* package */ StructuredNameDataItem(ContentValues values) { 362644d947574240b71c427d457f7a775dc160ec09Yorke Lee super(values); 372644d947574240b71c427d457f7a775dc160ec09Yorke Lee } 382644d947574240b71c427d457f7a775dc160ec09Yorke Lee 392644d947574240b71c427d457f7a775dc160ec09Yorke Lee public String getDisplayName() { 402644d947574240b71c427d457f7a775dc160ec09Yorke Lee return getContentValues().getAsString(StructuredName.DISPLAY_NAME); 412644d947574240b71c427d457f7a775dc160ec09Yorke Lee } 422644d947574240b71c427d457f7a775dc160ec09Yorke Lee 432644d947574240b71c427d457f7a775dc160ec09Yorke Lee public void setDisplayName(String name) { 442644d947574240b71c427d457f7a775dc160ec09Yorke Lee getContentValues().put(StructuredName.DISPLAY_NAME, name); 452644d947574240b71c427d457f7a775dc160ec09Yorke Lee } 462644d947574240b71c427d457f7a775dc160ec09Yorke Lee 472644d947574240b71c427d457f7a775dc160ec09Yorke Lee public String getGivenName() { 482644d947574240b71c427d457f7a775dc160ec09Yorke Lee return getContentValues().getAsString(StructuredName.GIVEN_NAME); 492644d947574240b71c427d457f7a775dc160ec09Yorke Lee } 502644d947574240b71c427d457f7a775dc160ec09Yorke Lee 512644d947574240b71c427d457f7a775dc160ec09Yorke Lee public String getFamilyName() { 522644d947574240b71c427d457f7a775dc160ec09Yorke Lee return getContentValues().getAsString(StructuredName.FAMILY_NAME); 532644d947574240b71c427d457f7a775dc160ec09Yorke Lee } 542644d947574240b71c427d457f7a775dc160ec09Yorke Lee 552644d947574240b71c427d457f7a775dc160ec09Yorke Lee public String getPrefix() { 562644d947574240b71c427d457f7a775dc160ec09Yorke Lee return getContentValues().getAsString(StructuredName.PREFIX); 572644d947574240b71c427d457f7a775dc160ec09Yorke Lee } 582644d947574240b71c427d457f7a775dc160ec09Yorke Lee 592644d947574240b71c427d457f7a775dc160ec09Yorke Lee public String getMiddleName() { 602644d947574240b71c427d457f7a775dc160ec09Yorke Lee return getContentValues().getAsString(StructuredName.MIDDLE_NAME); 612644d947574240b71c427d457f7a775dc160ec09Yorke Lee } 622644d947574240b71c427d457f7a775dc160ec09Yorke Lee 632644d947574240b71c427d457f7a775dc160ec09Yorke Lee public String getSuffix() { 642644d947574240b71c427d457f7a775dc160ec09Yorke Lee return getContentValues().getAsString(StructuredName.SUFFIX); 652644d947574240b71c427d457f7a775dc160ec09Yorke Lee } 662644d947574240b71c427d457f7a775dc160ec09Yorke Lee 672644d947574240b71c427d457f7a775dc160ec09Yorke Lee public String getPhoneticGivenName() { 682644d947574240b71c427d457f7a775dc160ec09Yorke Lee return getContentValues().getAsString(StructuredName.PHONETIC_GIVEN_NAME); 692644d947574240b71c427d457f7a775dc160ec09Yorke Lee } 702644d947574240b71c427d457f7a775dc160ec09Yorke Lee 712644d947574240b71c427d457f7a775dc160ec09Yorke Lee public String getPhoneticMiddleName() { 722644d947574240b71c427d457f7a775dc160ec09Yorke Lee return getContentValues().getAsString(StructuredName.PHONETIC_MIDDLE_NAME); 732644d947574240b71c427d457f7a775dc160ec09Yorke Lee } 742644d947574240b71c427d457f7a775dc160ec09Yorke Lee 752644d947574240b71c427d457f7a775dc160ec09Yorke Lee public String getPhoneticFamilyName() { 762644d947574240b71c427d457f7a775dc160ec09Yorke Lee return getContentValues().getAsString(StructuredName.PHONETIC_FAMILY_NAME); 772644d947574240b71c427d457f7a775dc160ec09Yorke Lee } 782644d947574240b71c427d457f7a775dc160ec09Yorke Lee 792644d947574240b71c427d457f7a775dc160ec09Yorke Lee public String getFullNameStyle() { 802644d947574240b71c427d457f7a775dc160ec09Yorke Lee return getContentValues().getAsString(StructuredName.FULL_NAME_STYLE); 812644d947574240b71c427d457f7a775dc160ec09Yorke Lee } 822644d947574240b71c427d457f7a775dc160ec09Yorke Lee 832644d947574240b71c427d457f7a775dc160ec09Yorke Lee public void setPhoneticFamilyName(String name) { 842644d947574240b71c427d457f7a775dc160ec09Yorke Lee getContentValues().put(StructuredName.PHONETIC_FAMILY_NAME, name); 852644d947574240b71c427d457f7a775dc160ec09Yorke Lee } 862644d947574240b71c427d457f7a775dc160ec09Yorke Lee 872644d947574240b71c427d457f7a775dc160ec09Yorke Lee public void setPhoneticMiddleName(String name) { 882644d947574240b71c427d457f7a775dc160ec09Yorke Lee getContentValues().put(StructuredName.PHONETIC_MIDDLE_NAME, name); 892644d947574240b71c427d457f7a775dc160ec09Yorke Lee } 902644d947574240b71c427d457f7a775dc160ec09Yorke Lee 912644d947574240b71c427d457f7a775dc160ec09Yorke Lee public void setPhoneticGivenName(String name) { 922644d947574240b71c427d457f7a775dc160ec09Yorke Lee getContentValues().put(StructuredName.PHONETIC_GIVEN_NAME, name); 932644d947574240b71c427d457f7a775dc160ec09Yorke Lee } 948010cd5a07502e894bb6ef86ce706afcc3fdf1e8Walter Jang 958010cd5a07502e894bb6ef86ce706afcc3fdf1e8Walter Jang public boolean isSuperPrimary() { 96f3a95a986fb25fb97b8ea45e778aaf86752f4e29Walter Jang final ContentValues contentValues = getContentValues(); 97f3a95a986fb25fb97b8ea45e778aaf86752f4e29Walter Jang return contentValues == null || !contentValues.containsKey(StructuredName.IS_SUPER_PRIMARY) 98f3a95a986fb25fb97b8ea45e778aaf86752f4e29Walter Jang ? false : contentValues.getAsBoolean(StructuredName.IS_SUPER_PRIMARY); 998010cd5a07502e894bb6ef86ce706afcc3fdf1e8Walter Jang } 1002644d947574240b71c427d457f7a775dc160ec09Yorke Lee} 101