Dbrant has uploaded a new change for review. (
https://gerrit.wikimedia.org/r/386550 )
Change subject: Only request aggregated feed content for WP hosts
......................................................................
Only request aggregated feed content for WP hosts
The aggregated feed content is highly specific to Wikipedia. It would
make sense to also check for the wiki site being a Wikipedia site
(instead of RESTBase being enabled).
Bug: T166920
Change-Id: I6c347b53b0835dfba85172cd9f71eefad4375acd
---
M app/src/main/java/org/wikipedia/dataclient/WikiSite.java
M app/src/main/java/org/wikipedia/feed/FeedCoordinator.java
M app/src/main/java/org/wikipedia/feed/FeedCoordinatorBase.java
M app/src/test/java/org/wikipedia/dataclient/WikiSiteTest.java
4 files changed, 23 insertions(+), 6 deletions(-)
git pull ssh://gerrit.wikimedia.org:29418/apps/android/wikipedia
refs/changes/50/386550/1
diff --git a/app/src/main/java/org/wikipedia/dataclient/WikiSite.java
b/app/src/main/java/org/wikipedia/dataclient/WikiSite.java
index 7b04016..4a036fa 100644
--- a/app/src/main/java/org/wikipedia/dataclient/WikiSite.java
+++ b/app/src/main/java/org/wikipedia/dataclient/WikiSite.java
@@ -108,6 +108,13 @@
}
/**
+ * @return true if this WikiSite is pointing to a wikipedia.org domain.
+ */
+ public boolean isWikipedia() {
+ return uri.getHost().endsWith(".wikipedia.org");
+ }
+
+ /**
* Like {@link #authority()} but with a "m." between the language
subdomain and the rest of the host.
* Examples:
*
diff --git a/app/src/main/java/org/wikipedia/feed/FeedCoordinator.java
b/app/src/main/java/org/wikipedia/feed/FeedCoordinator.java
index 3397f09..9bc91bc 100644
--- a/app/src/main/java/org/wikipedia/feed/FeedCoordinator.java
+++ b/app/src/main/java/org/wikipedia/feed/FeedCoordinator.java
@@ -25,16 +25,16 @@
}
@Override
- protected void buildScript(int age) {
+ protected void buildScript(int age, boolean isWikipedia) {
boolean online = DeviceUtil.isOnline();
conditionallyAddPendingClient(new SearchClient(), age == 0);
conditionallyAddPendingClient(new OfflineCompilationClient(), age == 0
&& !online && OfflineManager.hasCompilation() && isPreBetaRelease());
conditionallyAddPendingClient(new OnboardingClient(), age == 0);
- conditionallyAddPendingClient(new AnnouncementClient(), age == 0 &&
online);
- conditionallyAddPendingClient(new AggregatedFeedContentClient(),
online);
+ conditionallyAddPendingClient(new AnnouncementClient(), age == 0 &&
isWikipedia && online);
+ conditionallyAddPendingClient(new AggregatedFeedContentClient(),
isWikipedia && online);
addPendingClient(new ContinueReadingClient());
- conditionallyAddPendingClient(new OnThisDayClient(), online &&
isPreBetaRelease());
+ conditionallyAddPendingClient(new OnThisDayClient(), isWikipedia &&
online && isPreBetaRelease());
conditionallyAddPendingClient(new MainPageClient(), age == 0);
conditionallyAddPendingClient(new BecauseYouReadClient(), online);
conditionallyAddPendingClient(new RandomClient(), age == 0);
diff --git a/app/src/main/java/org/wikipedia/feed/FeedCoordinatorBase.java
b/app/src/main/java/org/wikipedia/feed/FeedCoordinatorBase.java
index f5fc669..04cbb42 100644
--- a/app/src/main/java/org/wikipedia/feed/FeedCoordinatorBase.java
+++ b/app/src/main/java/org/wikipedia/feed/FeedCoordinatorBase.java
@@ -80,7 +80,7 @@
currentAge++;
}
- buildScript(currentAge);
+ buildScript(currentAge, wiki.isWikipedia());
requestCard(wiki);
}
@@ -112,7 +112,7 @@
requestCard(wiki);
}
- protected abstract void buildScript(int age);
+ protected abstract void buildScript(int age, boolean isWikipedia);
void addPendingClient(FeedClient client) {
pendingClients.add(client);
diff --git a/app/src/test/java/org/wikipedia/dataclient/WikiSiteTest.java
b/app/src/test/java/org/wikipedia/dataclient/WikiSiteTest.java
index b394001..8d9802d 100644
--- a/app/src/test/java/org/wikipedia/dataclient/WikiSiteTest.java
+++ b/app/src/test/java/org/wikipedia/dataclient/WikiSiteTest.java
@@ -163,6 +163,16 @@
assertThat(subject.dbName(), is("nowiki"));
}
+ @Test public void testIsWikipediaTrue() {
+ WikiSite subject = WikiSite.forLanguageCode("test");
+ assertThat(subject.isWikipedia(), is(true));
+ }
+
+ @Test public void testIsWikipediaFalse() {
+ WikiSite subject = new WikiSite("bogus.org");
+ assertThat(subject.isWikipedia(), is(false));
+ }
+
@Test public void testPath() {
WikiSite subject = WikiSite.forLanguageCode("test");
assertThat(subject.path("Segment"), is("/w/Segment"));
--
To view, visit https://gerrit.wikimedia.org/r/386550
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings
Gerrit-MessageType: newchange
Gerrit-Change-Id: I6c347b53b0835dfba85172cd9f71eefad4375acd
Gerrit-PatchSet: 1
Gerrit-Project: apps/android/wikipedia
Gerrit-Branch: generic_mediawiki
Gerrit-Owner: Dbrant <[email protected]>
Gerrit-Reviewer: BearND <[email protected]>
_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits