blob: 66c424c23e33d5aa922a75f0f27a3cf720c910e3 [file] [log] [blame]
/*
* Copyright (C) 2018 The Android Open Source Project
* Copyright (C) 2023 The LineageOS Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package com.android.dialer.calllogutils;
import android.text.TextUtils;
import com.android.dialer.NumberAttributes;
import com.android.dialer.phonelookup.PhoneLookupInfo;
import com.android.dialer.phonelookup.consolidator.PhoneLookupInfoConsolidator;
/** Builds {@link NumberAttributes} from other data types. */
public final class NumberAttributesBuilder {
/** Returns a {@link NumberAttributes.Builder} with info from {@link PhoneLookupInfo}. */
public static NumberAttributes.Builder fromPhoneLookupInfo(PhoneLookupInfo phoneLookupInfo) {
PhoneLookupInfoConsolidator phoneLookupInfoConsolidator =
new PhoneLookupInfoConsolidator(phoneLookupInfo);
return NumberAttributes.newBuilder()
.setName(phoneLookupInfoConsolidator.getName())
.setPhotoUri(
!TextUtils.isEmpty(phoneLookupInfoConsolidator.getPhotoThumbnailUri())
? phoneLookupInfoConsolidator.getPhotoThumbnailUri()
: phoneLookupInfoConsolidator.getPhotoUri())
.setPhotoId(phoneLookupInfoConsolidator.getPhotoId())
.setLookupUri(phoneLookupInfoConsolidator.getLookupUri())
.setNumberTypeLabel(phoneLookupInfoConsolidator.getNumberLabel())
.setIsBusiness(phoneLookupInfoConsolidator.isBusiness())
.setIsBlocked(phoneLookupInfoConsolidator.isBlocked())
.setIsSpam(phoneLookupInfoConsolidator.isSpam())
.setCanReportAsInvalidNumber(phoneLookupInfoConsolidator.canReportAsInvalidNumber())
.setIsCp2InfoIncomplete(phoneLookupInfoConsolidator.isDefaultCp2InfoIncomplete())
.setContactSource(phoneLookupInfoConsolidator.getContactSource())
.setCanSupportCarrierVideoCall(phoneLookupInfoConsolidator.canSupportCarrierVideoCall())
.setGeolocation(phoneLookupInfoConsolidator.getGeolocation())
.setIsEmergencyNumber(phoneLookupInfoConsolidator.isEmergencyNumber());
}
}