From 4f02639a38aa0fe522cfeb4c316d5bdffdeca7cd Mon Sep 17 00:00:00 2001 From: roldenburg Date: Fri, 13 Oct 2017 18:42:20 -0700 Subject: Rename Lightbringer to Duo Now that our Duo integration is public, we no longer need a code name. To avoid any disruption, logging and config related names were not changed. Bug: 63753964 Test: manual, existing tests PiperOrigin-RevId: 172172738 Change-Id: Ib9d3d80761944d850c8c4886def9fef9a28539a4 --- java/com/android/incallui/call/DialerCall.java | 11 +- .../incallui/videotech/duo/DuoVideoTech.java | 195 +++++++++++++++++++++ .../videotech/lightbringer/LightbringerTech.java | 195 --------------------- 3 files changed, 199 insertions(+), 202 deletions(-) create mode 100644 java/com/android/incallui/videotech/duo/DuoVideoTech.java delete mode 100644 java/com/android/incallui/videotech/lightbringer/LightbringerTech.java (limited to 'java/com/android/incallui') diff --git a/java/com/android/incallui/call/DialerCall.java b/java/com/android/incallui/call/DialerCall.java index 47a4a70f5..d911a4c4f 100644 --- a/java/com/android/incallui/call/DialerCall.java +++ b/java/com/android/incallui/call/DialerCall.java @@ -51,6 +51,7 @@ import com.android.dialer.common.Assert; import com.android.dialer.common.LogUtil; import com.android.dialer.compat.telephony.TelephonyManagerCompat; import com.android.dialer.configprovider.ConfigProviderBindings; +import com.android.dialer.duo.DuoComponent; import com.android.dialer.enrichedcall.EnrichedCallCapabilities; import com.android.dialer.enrichedcall.EnrichedCallComponent; import com.android.dialer.enrichedcall.EnrichedCallManager; @@ -58,7 +59,6 @@ import com.android.dialer.enrichedcall.EnrichedCallManager.CapabilitiesListener; import com.android.dialer.enrichedcall.EnrichedCallManager.Filter; import com.android.dialer.enrichedcall.EnrichedCallManager.StateChangedListener; import com.android.dialer.enrichedcall.Session; -import com.android.dialer.lightbringer.LightbringerComponent; import com.android.dialer.location.GeoUtil; import com.android.dialer.logging.ContactLookupResult; import com.android.dialer.logging.ContactLookupResult.Type; @@ -72,9 +72,9 @@ import com.android.incallui.latencyreport.LatencyReport; import com.android.incallui.util.TelecomCallUtil; import com.android.incallui.videotech.VideoTech; import com.android.incallui.videotech.VideoTech.VideoTechListener; +import com.android.incallui.videotech.duo.DuoVideoTech; import com.android.incallui.videotech.empty.EmptyVideoTech; import com.android.incallui.videotech.ims.ImsVideoTech; -import com.android.incallui.videotech.lightbringer.LightbringerTech; import com.android.incallui.videotech.utils.VideoUtils; import java.lang.annotation.Retention; import java.lang.annotation.RetentionPolicy; @@ -1614,11 +1614,8 @@ public class DialerCall implements VideoTechListener, StateChangedListener, Capa } videoTechs.add( - new LightbringerTech( - LightbringerComponent.get(call.mContext).getLightbringer(), - call, - call.mTelecomCall, - phoneNumber)); + new DuoVideoTech( + DuoComponent.get(call.mContext).getDuo(), call, call.mTelecomCall, phoneNumber)); } VideoTech getVideoTech() { diff --git a/java/com/android/incallui/videotech/duo/DuoVideoTech.java b/java/com/android/incallui/videotech/duo/DuoVideoTech.java new file mode 100644 index 000000000..c858ae1f2 --- /dev/null +++ b/java/com/android/incallui/videotech/duo/DuoVideoTech.java @@ -0,0 +1,195 @@ +/* + * Copyright (C) 2017 The Android Open Source 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.incallui.videotech.duo; + +import android.content.Context; +import android.support.annotation.NonNull; +import android.support.annotation.Nullable; +import android.telecom.Call; +import com.android.dialer.common.Assert; +import com.android.dialer.common.LogUtil; +import com.android.dialer.configprovider.ConfigProviderBindings; +import com.android.dialer.duo.Duo; +import com.android.dialer.duo.DuoListener; +import com.android.dialer.logging.DialerImpression; +import com.android.incallui.video.protocol.VideoCallScreen; +import com.android.incallui.video.protocol.VideoCallScreenDelegate; +import com.android.incallui.videotech.VideoTech; +import com.android.incallui.videotech.utils.SessionModificationState; +import com.google.common.base.Optional; +import com.google.common.collect.ImmutableList; + +public class DuoVideoTech implements VideoTech, DuoListener { + private final Duo duo; + private final VideoTechListener listener; + private final Call call; + private final String callingNumber; + private int callState = Call.STATE_NEW; + private boolean isRemoteUpgradeAvailabilityQueried; + + public DuoVideoTech( + @NonNull Duo duo, + @NonNull VideoTechListener listener, + @NonNull Call call, + @NonNull String callingNumber) { + this.duo = Assert.isNotNull(duo); + this.listener = Assert.isNotNull(listener); + this.call = Assert.isNotNull(call); + this.callingNumber = Assert.isNotNull(callingNumber); + + duo.registerListener(this); + } + + @Override + public boolean isAvailable(Context context) { + if (!ConfigProviderBindings.get(context) + .getBoolean("enable_lightbringer_video_upgrade", true)) { + LogUtil.v("DuoVideoTech.isAvailable", "upgrade disabled by flag"); + return false; + } + + if (callState != Call.STATE_ACTIVE) { + LogUtil.v("DuoVideoTech.isAvailable", "upgrade unavailable, call must be active"); + return false; + } + Optional localResult = duo.supportsUpgrade(context, callingNumber); + if (localResult.isPresent()) { + LogUtil.v( + "DuoVideoTech.isAvailable", "upgrade supported in local cache: " + localResult.get()); + return localResult.get(); + } + + if (!isRemoteUpgradeAvailabilityQueried) { + LogUtil.v("DuoVideoTech.isAvailable", "reachability unknown, starting remote query"); + isRemoteUpgradeAvailabilityQueried = true; + duo.updateReachability(context, ImmutableList.of(callingNumber)); + } + + return false; + } + + @Override + public boolean isTransmittingOrReceiving() { + return false; + } + + @Override + public boolean isSelfManagedCamera() { + return false; + } + + @Override + public boolean shouldUseSurfaceView() { + return false; + } + + @Override + public boolean isPaused() { + return false; + } + + @Override + public VideoCallScreenDelegate createVideoCallScreenDelegate( + Context context, VideoCallScreen videoCallScreen) { + throw Assert.createUnsupportedOperationFailException(); + } + + @Override + public void onCallStateChanged(Context context, int newState) { + if (newState == Call.STATE_DISCONNECTING) { + duo.unregisterListener(this); + } + + callState = newState; + } + + @Override + public void onRemovedFromCallList() { + duo.unregisterListener(this); + } + + @Override + public int getSessionModificationState() { + return SessionModificationState.NO_REQUEST; + } + + @Override + public void upgradeToVideo(@NonNull Context context) { + listener.onImpressionLoggingNeeded(DialerImpression.Type.LIGHTBRINGER_UPGRADE_REQUESTED); + duo.requestUpgrade(context, call); + } + + @Override + public void acceptVideoRequest(@NonNull Context context) { + throw Assert.createUnsupportedOperationFailException(); + } + + @Override + public void acceptVideoRequestAsAudio() { + throw Assert.createUnsupportedOperationFailException(); + } + + @Override + public void declineVideoRequest() { + throw Assert.createUnsupportedOperationFailException(); + } + + @Override + public boolean isTransmitting() { + return false; + } + + @Override + public void stopTransmission() { + throw Assert.createUnsupportedOperationFailException(); + } + + @Override + public void resumeTransmission(@NonNull Context context) { + throw Assert.createUnsupportedOperationFailException(); + } + + @Override + public void pause() {} + + @Override + public void unpause() {} + + @Override + public void setCamera(@Nullable String cameraId) { + throw Assert.createUnsupportedOperationFailException(); + } + + @Override + public void becomePrimary() { + listener.onImpressionLoggingNeeded( + DialerImpression.Type.UPGRADE_TO_VIDEO_CALL_BUTTON_SHOWN_FOR_LIGHTBRINGER); + } + + @Override + public void setDeviceOrientation(int rotation) {} + + @Override + public void onDuoStateChanged() { + listener.onVideoTechStateChanged(); + } + + @Override + public com.android.dialer.logging.VideoTech.Type getVideoTechType() { + return com.android.dialer.logging.VideoTech.Type.LIGHTBRINGER_VIDEO_TECH; + } +} diff --git a/java/com/android/incallui/videotech/lightbringer/LightbringerTech.java b/java/com/android/incallui/videotech/lightbringer/LightbringerTech.java deleted file mode 100644 index eb2e92e85..000000000 --- a/java/com/android/incallui/videotech/lightbringer/LightbringerTech.java +++ /dev/null @@ -1,195 +0,0 @@ -/* - * Copyright (C) 2017 The Android Open Source 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.incallui.videotech.lightbringer; - -import android.content.Context; -import android.support.annotation.NonNull; -import android.support.annotation.Nullable; -import android.telecom.Call; -import com.android.dialer.common.Assert; -import com.android.dialer.common.LogUtil; -import com.android.dialer.configprovider.ConfigProviderBindings; -import com.android.dialer.lightbringer.Lightbringer; -import com.android.dialer.lightbringer.LightbringerListener; -import com.android.dialer.logging.DialerImpression; -import com.android.incallui.video.protocol.VideoCallScreen; -import com.android.incallui.video.protocol.VideoCallScreenDelegate; -import com.android.incallui.videotech.VideoTech; -import com.android.incallui.videotech.utils.SessionModificationState; -import com.google.common.base.Optional; -import com.google.common.collect.ImmutableList; - -public class LightbringerTech implements VideoTech, LightbringerListener { - private final Lightbringer lightbringer; - private final VideoTechListener listener; - private final Call call; - private final String callingNumber; - private int callState = Call.STATE_NEW; - private boolean isRemoteUpgradeAvailabilityQueried; - - public LightbringerTech( - @NonNull Lightbringer lightbringer, - @NonNull VideoTechListener listener, - @NonNull Call call, - @NonNull String callingNumber) { - this.lightbringer = Assert.isNotNull(lightbringer); - this.listener = Assert.isNotNull(listener); - this.call = Assert.isNotNull(call); - this.callingNumber = Assert.isNotNull(callingNumber); - - lightbringer.registerListener(this); - } - - @Override - public boolean isAvailable(Context context) { - if (!ConfigProviderBindings.get(context) - .getBoolean("enable_lightbringer_video_upgrade", true)) { - LogUtil.v("LightbringerTech.isAvailable", "upgrade disabled by flag"); - return false; - } - - if (callState != Call.STATE_ACTIVE) { - LogUtil.v("LightbringerTech.isAvailable", "upgrade unavailable, call must be active"); - return false; - } - Optional localResult = lightbringer.supportsUpgrade(context, callingNumber); - if (localResult.isPresent()) { - LogUtil.v( - "LightbringerTech.isAvailable", "upgrade supported in local cache: " + localResult.get()); - return localResult.get(); - } - - if (!isRemoteUpgradeAvailabilityQueried) { - LogUtil.v("LightbringerTech.isAvailable", "reachability unknown, starting remote query"); - isRemoteUpgradeAvailabilityQueried = true; - lightbringer.updateReachability(context, ImmutableList.of(callingNumber)); - } - - return false; - } - - @Override - public boolean isTransmittingOrReceiving() { - return false; - } - - @Override - public boolean isSelfManagedCamera() { - return false; - } - - @Override - public boolean shouldUseSurfaceView() { - return false; - } - - @Override - public boolean isPaused() { - return false; - } - - @Override - public VideoCallScreenDelegate createVideoCallScreenDelegate( - Context context, VideoCallScreen videoCallScreen) { - throw Assert.createUnsupportedOperationFailException(); - } - - @Override - public void onCallStateChanged(Context context, int newState) { - if (newState == Call.STATE_DISCONNECTING) { - lightbringer.unregisterListener(this); - } - - callState = newState; - } - - @Override - public void onRemovedFromCallList() { - lightbringer.unregisterListener(this); - } - - @Override - public int getSessionModificationState() { - return SessionModificationState.NO_REQUEST; - } - - @Override - public void upgradeToVideo(@NonNull Context context) { - listener.onImpressionLoggingNeeded(DialerImpression.Type.LIGHTBRINGER_UPGRADE_REQUESTED); - lightbringer.requestUpgrade(context, call); - } - - @Override - public void acceptVideoRequest(@NonNull Context context) { - throw Assert.createUnsupportedOperationFailException(); - } - - @Override - public void acceptVideoRequestAsAudio() { - throw Assert.createUnsupportedOperationFailException(); - } - - @Override - public void declineVideoRequest() { - throw Assert.createUnsupportedOperationFailException(); - } - - @Override - public boolean isTransmitting() { - return false; - } - - @Override - public void stopTransmission() { - throw Assert.createUnsupportedOperationFailException(); - } - - @Override - public void resumeTransmission(@NonNull Context context) { - throw Assert.createUnsupportedOperationFailException(); - } - - @Override - public void pause() {} - - @Override - public void unpause() {} - - @Override - public void setCamera(@Nullable String cameraId) { - throw Assert.createUnsupportedOperationFailException(); - } - - @Override - public void becomePrimary() { - listener.onImpressionLoggingNeeded( - DialerImpression.Type.UPGRADE_TO_VIDEO_CALL_BUTTON_SHOWN_FOR_LIGHTBRINGER); - } - - @Override - public void setDeviceOrientation(int rotation) {} - - @Override - public void onLightbringerStateChanged() { - listener.onVideoTechStateChanged(); - } - - @Override - public com.android.dialer.logging.VideoTech.Type getVideoTechType() { - return com.android.dialer.logging.VideoTech.Type.LIGHTBRINGER_VIDEO_TECH; - } -} -- cgit v1.2.3