summaryrefslogtreecommitdiff
path: root/java/com/android/dialer/precall
diff options
context:
space:
mode:
Diffstat (limited to 'java/com/android/dialer/precall')
-rw-r--r--java/com/android/dialer/precall/impl/PreCallImpl.java18
-rw-r--r--java/com/android/dialer/precall/impl/PreCallModule.java18
2 files changed, 25 insertions, 11 deletions
diff --git a/java/com/android/dialer/precall/impl/PreCallImpl.java b/java/com/android/dialer/precall/impl/PreCallImpl.java
index bd23f9ece..2f9b2784c 100644
--- a/java/com/android/dialer/precall/impl/PreCallImpl.java
+++ b/java/com/android/dialer/precall/impl/PreCallImpl.java
@@ -25,7 +25,6 @@ import com.android.dialer.logging.DialerImpression;
import com.android.dialer.logging.Logger;
import com.android.dialer.precall.PreCall;
import com.android.dialer.precall.PreCallAction;
-import com.android.dialer.precall.PreCallComponent;
import com.android.dialer.precall.PreCallCoordinator;
import com.google.common.collect.ImmutableList;
import javax.inject.Inject;
@@ -33,17 +32,16 @@ import javax.inject.Inject;
/** Implementation of {@link PreCall} */
public class PreCallImpl implements PreCall {
+ private final ImmutableList<PreCallAction> actions;
+
@Inject
- PreCallImpl() {}
+ PreCallImpl(ImmutableList<PreCallAction> actions) {
+ this.actions = actions;
+ }
@Override
public ImmutableList<PreCallAction> getActions() {
- return ImmutableList.of(
- new PermissionCheckAction(),
- new MalformedNumberRectifier(
- ImmutableList.of(new UkRegionPrefixInInternationalFormatHandler())),
- new CallingAccountSelector(),
- new AssistedDialAction());
+ return actions;
}
@NonNull
@@ -52,7 +50,7 @@ public class PreCallImpl implements PreCall {
Logger.get(context).logImpression(DialerImpression.Type.PRECALL_INITIATED);
if (!requiresUi(context, builder)) {
LogUtil.i("PreCallImpl.buildIntent", "No UI requested, running pre-call directly");
- for (PreCallAction action : PreCallComponent.get(context).getPreCall().getActions()) {
+ for (PreCallAction action : actions) {
action.runWithoutUi(context, builder);
}
return builder.build();
@@ -64,7 +62,7 @@ public class PreCallImpl implements PreCall {
}
private boolean requiresUi(Context context, CallIntentBuilder builder) {
- for (PreCallAction action : PreCallComponent.get(context).getPreCall().getActions()) {
+ for (PreCallAction action : actions) {
if (action.requiresUi(context, builder)) {
LogUtil.i("PreCallImpl.requiresUi", action + " requested UI");
return true;
diff --git a/java/com/android/dialer/precall/impl/PreCallModule.java b/java/com/android/dialer/precall/impl/PreCallModule.java
index 608cd5a8f..4643b1976 100644
--- a/java/com/android/dialer/precall/impl/PreCallModule.java
+++ b/java/com/android/dialer/precall/impl/PreCallModule.java
@@ -17,15 +17,31 @@
package com.android.dialer.precall.impl;
import com.android.dialer.precall.PreCall;
+import com.android.dialer.precall.PreCallAction;
+import com.google.common.collect.ImmutableList;
import dagger.Binds;
import dagger.Module;
+import dagger.Provides;
import javax.inject.Singleton;
/** Dagger module for {@link PreCall}. */
@Module
public abstract class PreCallModule {
+ private PreCallModule() {}
+
@Binds
@Singleton
- public abstract PreCall bindPreCall(PreCallImpl simulator);
+ public abstract PreCall to(PreCallImpl impl);
+
+ @Provides
+ @Singleton
+ public static ImmutableList<PreCallAction> provideActions() {
+ return ImmutableList.of(
+ new PermissionCheckAction(),
+ new MalformedNumberRectifier(
+ ImmutableList.of(new UkRegionPrefixInInternationalFormatHandler())),
+ new CallingAccountSelector(),
+ new AssistedDialAction());
+ }
}