diff options
Diffstat (limited to 'java/com/android/dialer/enrichedcall')
-rw-r--r-- | java/com/android/dialer/enrichedcall/EnrichedCallComponent.java | 20 |
1 files changed, 14 insertions, 6 deletions
diff --git a/java/com/android/dialer/enrichedcall/EnrichedCallComponent.java b/java/com/android/dialer/enrichedcall/EnrichedCallComponent.java index c773a2dfa..5291e292f 100644 --- a/java/com/android/dialer/enrichedcall/EnrichedCallComponent.java +++ b/java/com/android/dialer/enrichedcall/EnrichedCallComponent.java @@ -18,19 +18,27 @@ package com.android.dialer.enrichedcall; import android.content.Context; import android.support.annotation.NonNull; -import com.android.dialer.inject.HasRootComponent; import dagger.Subcomponent; +import com.android.dialer.enrichedcall.stub.EnrichedCallManagerStub; /** Subcomponent that can be used to access the enriched call implementation. */ -@Subcomponent -public abstract class EnrichedCallComponent { +public class EnrichedCallComponent { + private static EnrichedCallComponent instance; + private EnrichedCallManager enrichedCallManager; @NonNull - public abstract EnrichedCallManager getEnrichedCallManager(); + public EnrichedCallManager getEnrichedCallManager() { + if (enrichedCallManager == null) { + enrichedCallManager = new EnrichedCallManagerStub(); + } + return enrichedCallManager; + } public static EnrichedCallComponent get(Context context) { - return ((HasComponent) ((HasRootComponent) context.getApplicationContext()).component()) - .enrichedCallComponent(); + if (instance == null) { + instance = new EnrichedCallComponent(); + } + return instance; } /** Used to refer to the root application component. */ |