From 37b588d56db13b9c89d8ccd7dd799b0cbddb1b75 Mon Sep 17 00:00:00 2001 From: wangqi Date: Mon, 14 May 2018 15:26:49 -0700 Subject: Move SpamStub to separate package. This is necessary to avoid potential conflict binding with spam/testing on auto generated components in tests. Test: presubmit PiperOrigin-RevId: 196577184 Change-Id: I2aac0df138b7efb62cdcc35b2a79ce889d001cd8 --- java/com/android/dialer/spam/SpamSettingsStub.java | 88 ---------------- java/com/android/dialer/spam/SpamStub.java | 116 -------------------- java/com/android/dialer/spam/StubSpamModule.java | 34 ------ .../android/dialer/spam/stub/SpamSettingsStub.java | 89 ++++++++++++++++ java/com/android/dialer/spam/stub/SpamStub.java | 117 +++++++++++++++++++++ .../android/dialer/spam/stub/StubSpamModule.java | 36 +++++++ 6 files changed, 242 insertions(+), 238 deletions(-) delete mode 100644 java/com/android/dialer/spam/SpamSettingsStub.java delete mode 100644 java/com/android/dialer/spam/SpamStub.java delete mode 100644 java/com/android/dialer/spam/StubSpamModule.java create mode 100644 java/com/android/dialer/spam/stub/SpamSettingsStub.java create mode 100644 java/com/android/dialer/spam/stub/SpamStub.java create mode 100644 java/com/android/dialer/spam/stub/StubSpamModule.java (limited to 'java/com/android/dialer/spam') diff --git a/java/com/android/dialer/spam/SpamSettingsStub.java b/java/com/android/dialer/spam/SpamSettingsStub.java deleted file mode 100644 index 905daa45c..000000000 --- a/java/com/android/dialer/spam/SpamSettingsStub.java +++ /dev/null @@ -1,88 +0,0 @@ -/* - * Copyright (C) 2018 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.dialer.spam; - -import android.content.Context; -import android.content.Intent; -import javax.inject.Inject; - -/** Default implementation of SpamSettings. */ -public class SpamSettingsStub implements SpamSettings { - - @Inject - public SpamSettingsStub() {} - - @Override - public boolean isSpamEnabled() { - return false; - } - - @Override - public boolean isSpamNotificationEnabled() { - return false; - } - - @Override - public boolean isSpamBlockingEnabledByFlag() { - return false; - } - - @Override - public boolean isSpamBlockingControlledByCarrier() { - return false; - } - - @Override - public boolean isSpamBlockingEnabled() { - return false; - } - - @Override - public boolean isSpamBlockingEnabledByUser() { - return false; - } - - @Override - public boolean isDialogEnabledForSpamNotification() { - return false; - } - - @Override - public boolean isDialogReportSpamCheckedByDefault() { - return false; - } - - @Override - public int percentOfSpamNotificationsToShow() { - return 0; - } - - @Override - public int percentOfNonSpamNotificationsToShow() { - return 0; - } - - @Override - public void modifySpamBlockingSetting(boolean enabled, ModifySettingListener listener) { - listener.onComplete(false); - } - - @Override - public Intent getSpamBlockingSettingIntent(Context context) { - return new Intent(); - } -} diff --git a/java/com/android/dialer/spam/SpamStub.java b/java/com/android/dialer/spam/SpamStub.java deleted file mode 100644 index 1ba9b76dd..000000000 --- a/java/com/android/dialer/spam/SpamStub.java +++ /dev/null @@ -1,116 +0,0 @@ -/* - * Copyright (C) 2016 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.dialer.spam; - -import android.support.annotation.Nullable; -import com.android.dialer.DialerPhoneNumber; -import com.android.dialer.common.concurrent.Annotations.BackgroundExecutor; -import com.android.dialer.logging.ContactLookupResult; -import com.android.dialer.logging.ContactSource; -import com.android.dialer.logging.ReportingLocation; -import com.android.dialer.spam.status.SimpleSpamStatus; -import com.android.dialer.spam.status.SpamStatus; -import com.google.common.collect.ImmutableMap; -import com.google.common.collect.ImmutableSet; -import com.google.common.util.concurrent.Futures; -import com.google.common.util.concurrent.ListenableFuture; -import com.google.common.util.concurrent.ListeningExecutorService; -import javax.inject.Inject; - -/** Default implementation of Spam. */ -public class SpamStub implements Spam { - - private final ListeningExecutorService backgroundExecutorService; - - @Inject - public SpamStub(@BackgroundExecutor ListeningExecutorService backgroundExecutorService) { - this.backgroundExecutorService = backgroundExecutorService; - } - - @Override - public ListenableFuture> batchCheckSpamStatus( - ImmutableSet dialerPhoneNumbers) { - return backgroundExecutorService.submit( - () -> { - ImmutableMap.Builder resultBuilder = - new ImmutableMap.Builder<>(); - for (DialerPhoneNumber dialerPhoneNumber : dialerPhoneNumbers) { - resultBuilder.put(dialerPhoneNumber, SimpleSpamStatus.notSpam()); - } - return resultBuilder.build(); - }); - } - - @Override - public ListenableFuture checkSpamStatus(DialerPhoneNumber dialerPhoneNumber) { - return Futures.immediateFuture(SimpleSpamStatus.notSpam()); - } - - @Override - public ListenableFuture checkSpamStatus( - String number, @Nullable String defaultCountryIso) { - return Futures.immediateFuture(SimpleSpamStatus.notSpam()); - } - - @Override - public ListenableFuture updateSpamListDownload(boolean isEnabledByUser) { - // no-op - return Futures.immediateFuture(null); - } - - @Override - public boolean checkSpamStatusSynchronous(String number, String countryIso) { - return false; - } - - @Override - public ListenableFuture dataUpdatedSince(long timestampMillis) { - return Futures.immediateFuture(false); - } - - @Override - public void reportSpamFromAfterCallNotification( - String number, - String countryIso, - int callType, - ReportingLocation.Type from, - ContactLookupResult.Type contactLookupResultType) {} - - @Override - public void reportSpamFromCallHistory( - String number, - String countryIso, - int callType, - ReportingLocation.Type from, - ContactSource.Type contactSourceType) {} - - @Override - public void reportNotSpamFromAfterCallNotification( - String number, - String countryIso, - int callType, - ReportingLocation.Type from, - ContactLookupResult.Type contactLookupResultType) {} - - @Override - public void reportNotSpamFromCallHistory( - String number, - String countryIso, - int callType, - ReportingLocation.Type from, - ContactSource.Type contactSourceType) {} -} diff --git a/java/com/android/dialer/spam/StubSpamModule.java b/java/com/android/dialer/spam/StubSpamModule.java deleted file mode 100644 index b60967475..000000000 --- a/java/com/android/dialer/spam/StubSpamModule.java +++ /dev/null @@ -1,34 +0,0 @@ -/* - * Copyright (C) 2016 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.dialer.spam; - -import com.android.dialer.inject.DialerVariant; -import com.android.dialer.inject.InstallIn; -import dagger.Binds; -import dagger.Module; - -/** Module which binds {@link SpamStub}. */ -@InstallIn(variants = {DialerVariant.DIALER_TEST}) -@Module -public abstract class StubSpamModule { - - @Binds - public abstract Spam bindSpam(SpamStub stub); - - @Binds - public abstract SpamSettings bindSpamSettings(SpamSettingsStub stub); -} diff --git a/java/com/android/dialer/spam/stub/SpamSettingsStub.java b/java/com/android/dialer/spam/stub/SpamSettingsStub.java new file mode 100644 index 000000000..194d18451 --- /dev/null +++ b/java/com/android/dialer/spam/stub/SpamSettingsStub.java @@ -0,0 +1,89 @@ +/* + * Copyright (C) 2018 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.dialer.spam.stub; + +import android.content.Context; +import android.content.Intent; +import com.android.dialer.spam.SpamSettings; +import javax.inject.Inject; + +/** Default implementation of SpamSettings. */ +public class SpamSettingsStub implements SpamSettings { + + @Inject + public SpamSettingsStub() {} + + @Override + public boolean isSpamEnabled() { + return false; + } + + @Override + public boolean isSpamNotificationEnabled() { + return false; + } + + @Override + public boolean isSpamBlockingEnabledByFlag() { + return false; + } + + @Override + public boolean isSpamBlockingControlledByCarrier() { + return false; + } + + @Override + public boolean isSpamBlockingEnabled() { + return false; + } + + @Override + public boolean isSpamBlockingEnabledByUser() { + return false; + } + + @Override + public boolean isDialogEnabledForSpamNotification() { + return false; + } + + @Override + public boolean isDialogReportSpamCheckedByDefault() { + return false; + } + + @Override + public int percentOfSpamNotificationsToShow() { + return 0; + } + + @Override + public int percentOfNonSpamNotificationsToShow() { + return 0; + } + + @Override + public void modifySpamBlockingSetting(boolean enabled, ModifySettingListener listener) { + listener.onComplete(false); + } + + @Override + public Intent getSpamBlockingSettingIntent(Context context) { + return new Intent(); + } +} diff --git a/java/com/android/dialer/spam/stub/SpamStub.java b/java/com/android/dialer/spam/stub/SpamStub.java new file mode 100644 index 000000000..5eeed4571 --- /dev/null +++ b/java/com/android/dialer/spam/stub/SpamStub.java @@ -0,0 +1,117 @@ +/* + * Copyright (C) 2016 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.dialer.spam.stub; + +import android.support.annotation.Nullable; +import com.android.dialer.DialerPhoneNumber; +import com.android.dialer.common.concurrent.Annotations.BackgroundExecutor; +import com.android.dialer.logging.ContactLookupResult; +import com.android.dialer.logging.ContactSource; +import com.android.dialer.logging.ReportingLocation; +import com.android.dialer.spam.Spam; +import com.android.dialer.spam.status.SimpleSpamStatus; +import com.android.dialer.spam.status.SpamStatus; +import com.google.common.collect.ImmutableMap; +import com.google.common.collect.ImmutableSet; +import com.google.common.util.concurrent.Futures; +import com.google.common.util.concurrent.ListenableFuture; +import com.google.common.util.concurrent.ListeningExecutorService; +import javax.inject.Inject; + +/** Default implementation of Spam. */ +public class SpamStub implements Spam { + + private final ListeningExecutorService backgroundExecutorService; + + @Inject + public SpamStub(@BackgroundExecutor ListeningExecutorService backgroundExecutorService) { + this.backgroundExecutorService = backgroundExecutorService; + } + + @Override + public ListenableFuture> batchCheckSpamStatus( + ImmutableSet dialerPhoneNumbers) { + return backgroundExecutorService.submit( + () -> { + ImmutableMap.Builder resultBuilder = + new ImmutableMap.Builder<>(); + for (DialerPhoneNumber dialerPhoneNumber : dialerPhoneNumbers) { + resultBuilder.put(dialerPhoneNumber, SimpleSpamStatus.notSpam()); + } + return resultBuilder.build(); + }); + } + + @Override + public ListenableFuture checkSpamStatus(DialerPhoneNumber dialerPhoneNumber) { + return Futures.immediateFuture(SimpleSpamStatus.notSpam()); + } + + @Override + public ListenableFuture checkSpamStatus( + String number, @Nullable String defaultCountryIso) { + return Futures.immediateFuture(SimpleSpamStatus.notSpam()); + } + + @Override + public ListenableFuture updateSpamListDownload(boolean isEnabledByUser) { + // no-op + return Futures.immediateFuture(null); + } + + @Override + public boolean checkSpamStatusSynchronous(String number, String countryIso) { + return false; + } + + @Override + public ListenableFuture dataUpdatedSince(long timestampMillis) { + return Futures.immediateFuture(false); + } + + @Override + public void reportSpamFromAfterCallNotification( + String number, + String countryIso, + int callType, + ReportingLocation.Type from, + ContactLookupResult.Type contactLookupResultType) {} + + @Override + public void reportSpamFromCallHistory( + String number, + String countryIso, + int callType, + ReportingLocation.Type from, + ContactSource.Type contactSourceType) {} + + @Override + public void reportNotSpamFromAfterCallNotification( + String number, + String countryIso, + int callType, + ReportingLocation.Type from, + ContactLookupResult.Type contactLookupResultType) {} + + @Override + public void reportNotSpamFromCallHistory( + String number, + String countryIso, + int callType, + ReportingLocation.Type from, + ContactSource.Type contactSourceType) {} +} diff --git a/java/com/android/dialer/spam/stub/StubSpamModule.java b/java/com/android/dialer/spam/stub/StubSpamModule.java new file mode 100644 index 000000000..e6b4622df --- /dev/null +++ b/java/com/android/dialer/spam/stub/StubSpamModule.java @@ -0,0 +1,36 @@ +/* + * Copyright (C) 2016 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.dialer.spam.stub; + +import com.android.dialer.inject.DialerVariant; +import com.android.dialer.inject.InstallIn; +import com.android.dialer.spam.Spam; +import com.android.dialer.spam.SpamSettings; +import dagger.Binds; +import dagger.Module; + +/** Module which binds {@link SpamStub}. */ +@InstallIn(variants = {DialerVariant.DIALER_TEST}) +@Module +public abstract class StubSpamModule { + + @Binds + public abstract Spam bindSpam(SpamStub stub); + + @Binds + public abstract SpamSettings bindSpamSettings(SpamSettingsStub stub); +} -- cgit v1.2.3