jenkins-bot has submitted this change and it was merged. ( https://gerrit.wikimedia.org/r/344262 )
Change subject: Chore: remove pageCombo endpoint ...................................................................... Chore: remove pageCombo endpoint Bug: T156917 Change-Id: Ibec49dab4873023faa8efac8abee62149ad26152 --- D app/src/main/java/org/wikipedia/dataclient/mwapi/page/MwMobileViewPageCombo.java M app/src/main/java/org/wikipedia/dataclient/mwapi/page/MwPageClient.java M app/src/main/java/org/wikipedia/dataclient/mwapi/page/MwPageService.java M app/src/main/java/org/wikipedia/dataclient/page/PageClient.java D app/src/main/java/org/wikipedia/dataclient/page/PageCombo.java M app/src/main/java/org/wikipedia/dataclient/restbase/page/RbPageClient.java D app/src/main/java/org/wikipedia/dataclient/restbase/page/RbPageCombo.java M app/src/main/java/org/wikipedia/dataclient/restbase/page/RbPageService.java M app/src/main/java/org/wikipedia/page/Section.java 9 files changed, 0 insertions(+), 188 deletions(-) Approvals: jenkins-bot: Verified Mholloway: Looks good to me, approved diff --git a/app/src/main/java/org/wikipedia/dataclient/mwapi/page/MwMobileViewPageCombo.java b/app/src/main/java/org/wikipedia/dataclient/mwapi/page/MwMobileViewPageCombo.java deleted file mode 100644 index 2abaf41..0000000 --- a/app/src/main/java/org/wikipedia/dataclient/mwapi/page/MwMobileViewPageCombo.java +++ /dev/null @@ -1,11 +0,0 @@ -package org.wikipedia.dataclient.mwapi.page; - -import org.wikipedia.dataclient.page.PageCombo; - -/** - * Combines MwMobileViewPageLead and MwMobileViewPageRemaining Gson POJOs for mobileview API. - * In mobileview API the implementation is basically the same as MwMobileViewPageLead. - * The class name "Page" was already used, and is very entrenched in this code base. - */ -public class MwMobileViewPageCombo extends MwMobileViewPageLead implements PageCombo { -} diff --git a/app/src/main/java/org/wikipedia/dataclient/mwapi/page/MwPageClient.java b/app/src/main/java/org/wikipedia/dataclient/mwapi/page/MwPageClient.java index db13a09..c180257 100644 --- a/app/src/main/java/org/wikipedia/dataclient/mwapi/page/MwPageClient.java +++ b/app/src/main/java/org/wikipedia/dataclient/mwapi/page/MwPageClient.java @@ -2,17 +2,12 @@ import android.support.annotation.NonNull; -import org.wikipedia.dataclient.ServiceError; import org.wikipedia.dataclient.page.PageClient; -import org.wikipedia.dataclient.page.PageCombo; import org.wikipedia.dataclient.page.PageLead; import org.wikipedia.dataclient.page.PageRemaining; import org.wikipedia.dataclient.page.PageSummary; -import java.io.IOException; - import retrofit2.Call; -import retrofit2.Response; /** * Retrofit web service client for MediaWiki PHP API. @@ -40,17 +35,6 @@ @NonNull @Override public Call<? extends PageRemaining> sections(@NonNull String title, boolean noImages) { return service.sections(title, optional(noImages)); - } - - @Override public PageCombo pageCombo(String title, boolean noImages) throws IOException { - Response<MwMobileViewPageCombo> rsp = service.pageCombo(title, optional(noImages)).execute(); - if (!rsp.body().hasError()) { - return rsp.body(); - } - ServiceError err = rsp.body() == null || rsp.body().getError() == null - ? null - : rsp.body().getError(); - throw new IOException(err == null ? rsp.message() : err.getDetails()); } /** diff --git a/app/src/main/java/org/wikipedia/dataclient/mwapi/page/MwPageService.java b/app/src/main/java/org/wikipedia/dataclient/mwapi/page/MwPageService.java index 53711eb..51ca18e 100644 --- a/app/src/main/java/org/wikipedia/dataclient/mwapi/page/MwPageService.java +++ b/app/src/main/java/org/wikipedia/dataclient/mwapi/page/MwPageService.java @@ -67,19 +67,4 @@ + "§ionprop=toclevel%7Cline%7Canchor&noheadings=true") @NonNull Call<MwMobileViewPageRemaining> sections(@NonNull @Query("page") String title, @Nullable @Query("noimages") Boolean noImages); - - /** - * Gets all page content of a given title -- for refreshing a saved page - * Note: the only difference in the URL from #pageLead is the sections=all instead of 0. - * - * @param title the page title to be used including prefix - * @param noImages add the noimages flag to the request if true - */ - @GET("w/api.php?action=mobileview&format=json&formatversion=2&prop=" - + "text%7Csections%7Clanguagecount%7Cthumb%7Cimage%7Cid%7Crevision%7Cdescription" - + "%7Clastmodified%7Cnormalizedtitle%7Cdisplaytitle%7Cprotection%7Ceditable" - + "%7Cpageprops&pageprops=wikibase_item&onlyrequestedsections=1§ions=all" - + "§ionprop=toclevel%7Cline%7Canchor&noheadings=true") - Call<MwMobileViewPageCombo> pageCombo(@Query("page") String title, - @Query("noimages") Boolean noImages); } diff --git a/app/src/main/java/org/wikipedia/dataclient/page/PageClient.java b/app/src/main/java/org/wikipedia/dataclient/page/PageClient.java index a8f4008..7bcfbd8 100644 --- a/app/src/main/java/org/wikipedia/dataclient/page/PageClient.java +++ b/app/src/main/java/org/wikipedia/dataclient/page/PageClient.java @@ -2,8 +2,6 @@ import android.support.annotation.NonNull; -import java.io.IOException; - import retrofit2.Call; /** @@ -36,14 +34,4 @@ * @param noImages add the noimages flag to the request if true */ @NonNull <T extends PageRemaining> Call<T> sections(@NonNull String title, boolean noImages); - - /** - * Gets all page content of a given title. Used in the saved page sync background service. - * Synchronous call. - * - * @param title the page title to be used including prefix - * @param noImages add the noimages flag to the request if true - * @throws IOException when the request did not succeed - */ - PageCombo pageCombo(String title, boolean noImages) throws IOException; } diff --git a/app/src/main/java/org/wikipedia/dataclient/page/PageCombo.java b/app/src/main/java/org/wikipedia/dataclient/page/PageCombo.java deleted file mode 100644 index c066b07..0000000 --- a/app/src/main/java/org/wikipedia/dataclient/page/PageCombo.java +++ /dev/null @@ -1,16 +0,0 @@ -package org.wikipedia.dataclient.page; - -/** - * Combines PageLead and PageRemaining Gson POJIs for mobileview API. - * It's basically the same as PageLead. - * The class name "Page" was already used, and is very entrenched in this code base. - */ -public interface PageCombo extends PageLead { - - /** So we can have polymorphic Retrofit Callbacks */ - interface Callback { - void success(PageCombo pageCombo); - - void failure(Throwable throwable); - } -} diff --git a/app/src/main/java/org/wikipedia/dataclient/restbase/page/RbPageClient.java b/app/src/main/java/org/wikipedia/dataclient/restbase/page/RbPageClient.java index 36f9fb3..e31de34 100644 --- a/app/src/main/java/org/wikipedia/dataclient/restbase/page/RbPageClient.java +++ b/app/src/main/java/org/wikipedia/dataclient/restbase/page/RbPageClient.java @@ -5,15 +5,12 @@ import com.google.gson.JsonParseException; -import org.wikipedia.dataclient.ServiceError; import org.wikipedia.dataclient.page.PageClient; -import org.wikipedia.dataclient.page.PageCombo; import org.wikipedia.dataclient.page.PageLead; import org.wikipedia.dataclient.page.PageRemaining; import org.wikipedia.dataclient.page.PageSummary; import org.wikipedia.dataclient.restbase.RbDefinition; -import java.io.IOException; import java.util.Map; import retrofit2.Call; @@ -59,17 +56,6 @@ @NonNull @Override public Call<? extends PageRemaining> sections(@NonNull String title, boolean noImages) { return service.sections(title, optional(noImages)); - } - - @Override public PageCombo pageCombo(String title, boolean noImages) throws IOException { - Response<RbPageCombo> rsp = service.pageCombo(title, optional(noImages)).execute(); - if (!rsp.body().hasError()) { - return rsp.body(); - } - ServiceError err = rsp.body() == null || rsp.body().getError() == null - ? null - : rsp.body().getError(); - throw new IOException(err == null ? rsp.message() : err.getDetails()); } /* Not defined in the PageClient interface since the Wiktionary definition endpoint exists only diff --git a/app/src/main/java/org/wikipedia/dataclient/restbase/page/RbPageCombo.java b/app/src/main/java/org/wikipedia/dataclient/restbase/page/RbPageCombo.java deleted file mode 100644 index 51ed045..0000000 --- a/app/src/main/java/org/wikipedia/dataclient/restbase/page/RbPageCombo.java +++ /dev/null @@ -1,88 +0,0 @@ -package org.wikipedia.dataclient.restbase.page; - -import android.location.Location; -import android.support.annotation.NonNull; -import android.support.annotation.Nullable; - -import org.wikipedia.dataclient.WikiSite; -import org.wikipedia.dataclient.page.PageCombo; -import org.wikipedia.dataclient.restbase.RbServiceError; -import org.wikipedia.page.Page; -import org.wikipedia.page.PageProperties; -import org.wikipedia.page.PageTitle; -import org.wikipedia.util.log.L; - - -/** - * Combines RbPageLead and RbPageRemaining Gson POJOs for RESTBase Nodejs API. - * When using the Mobile Content Service API this class composes the two parts, lead and - * remaining. - */ -public class RbPageCombo implements PageCombo { - @SuppressWarnings("unused") @Nullable private RbServiceError error; - @SuppressWarnings("unused") @Nullable private RbPageLead lead; - @SuppressWarnings("unused") @Nullable private RbPageRemaining remaining; - - @Override - public boolean hasError() { - return error != null; - } - - @Override - @Nullable - public RbServiceError getError() { - return error; - } - - @Override - public void logError(String message) { - if (error != null) { - message += ": " + error.toString(); - } - L.e(message); - } - - /** - * Note: before using this check that #hasError is false - */ - @Override - public Page toPage(PageTitle title) { - if (lead == null) { - throw new RuntimeException("lead is null. Check for errors before use!"); - } - Page page = new Page(lead.adjustPageTitle(title), lead.getSections(), - toPageProperties(title.getWikiSite())); - if (remaining != null) { - page.augmentRemainingSections(remaining.sections()); - } - return page; - } - - @Override - public String getLeadSectionContent() { - return lead != null ? lead.getLeadSectionContent() : ""; - } - - @Override - @Nullable - public String getTitlePronunciationUrl() { - return lead == null ? null : lead.getTitlePronunciationUrl(); - } - - @Nullable - @Override - public String getLeadImageUrl(int leadThumbnailWidth) { - return lead == null ? null : lead.getLeadImageUrl(leadThumbnailWidth); - } - - @Nullable - @Override - public Location getGeo() { - return lead == null ? null : lead.getGeo(); - } - - /** Converter */ - public PageProperties toPageProperties(@NonNull WikiSite wiki) { - return new PageProperties(wiki, lead); - } -} diff --git a/app/src/main/java/org/wikipedia/dataclient/restbase/page/RbPageService.java b/app/src/main/java/org/wikipedia/dataclient/restbase/page/RbPageService.java index 875d159..e9e75cb 100644 --- a/app/src/main/java/org/wikipedia/dataclient/restbase/page/RbPageService.java +++ b/app/src/main/java/org/wikipedia/dataclient/restbase/page/RbPageService.java @@ -56,18 +56,6 @@ @NonNull Call<RbPageRemaining> sections(@NonNull @Path("title") String title, @Nullable @Query("noimages") Boolean noImages); - /** - * Gets all page content of a given title -- for refreshing a saved page - * Note: the only difference in the URL from #pageLead is the sections=all instead of 0. - * - * @param title the page title to be used including prefix - * @param noImages add the noimages flag to the request if true - */ - @Headers(ACCEPT_HEADER_MOBILE_SECTIONS) - @GET("page/mobile-sections/{title}") - Call<RbPageCombo> pageCombo(@Path("title") String title, - @Query("noimages") Boolean noImages); - // todo: this Content Service-only endpoint is under page/ but that implementation detail should // probably not be reflected here. Move to WordDefinitionClient /** diff --git a/app/src/main/java/org/wikipedia/page/Section.java b/app/src/main/java/org/wikipedia/page/Section.java index d927541..5eb97e9 100644 --- a/app/src/main/java/org/wikipedia/page/Section.java +++ b/app/src/main/java/org/wikipedia/page/Section.java @@ -111,8 +111,4 @@ @NonNull public String getContent() { return defaultString(text); } - - public void setContent(String content) { - this.text = content; - } } -- To view, visit https://gerrit.wikimedia.org/r/344262 To unsubscribe, visit https://gerrit.wikimedia.org/r/settings Gerrit-MessageType: merged Gerrit-Change-Id: Ibec49dab4873023faa8efac8abee62149ad26152 Gerrit-PatchSet: 3 Gerrit-Project: apps/android/wikipedia Gerrit-Branch: master Gerrit-Owner: Niedzielski <sniedziel...@wikimedia.org> Gerrit-Reviewer: Brion VIBBER <br...@wikimedia.org> Gerrit-Reviewer: Dbrant <dbr...@wikimedia.org> Gerrit-Reviewer: Mholloway <mhollo...@wikimedia.org> Gerrit-Reviewer: Sniedzielski <sniedziel...@wikimedia.org> Gerrit-Reviewer: jenkins-bot <> _______________________________________________ MediaWiki-commits mailing list MediaWiki-commits@lists.wikimedia.org https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits