Skip to content
This repository has been archived by the owner on Apr 16, 2023. It is now read-only.

Created MwQueryLogEvents class for logevents queries #23

Open
wants to merge 5 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
107 changes: 107 additions & 0 deletions src/main/java/org/wikipedia/dataclient/mwapi/MwQueryLogEvent.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,107 @@
package org.wikipedia.dataclient.mwapi;

import org.wikipedia.model.BaseModel;
import org.wikipedia.util.DateUtil;

import java.text.ParseException;
import java.util.Date;
import java.util.List;

@SuppressWarnings("unused")
public class MwQueryLogEvent extends BaseModel {
private int logid;
private int ns;
private int index;
private String title;
private int pageid;
private Params params;
private String type;
private String action;
private String user;
private int userid;
private String timestamp;
private String comment;
private String parsedcomment;
private List<String> tags;

public int logid() {
return logid;
}

public int ns() {
return ns;
}

public int index() {
return index;
}

public String title() {
return title;
}

public int pageid() {
return pageid;
}

public String type() {
return type;
}

public String action() {
return action;
}

public String user() {
return user;
}

public int userid() {
return userid;
}

public String timestamp() {
return timestamp;
}

public Date date(){
try {
return DateUtil.iso8601DateParse(timestamp);
} catch (ParseException e) {
return null;
}
}

public String comment() {
return comment;
}

public String parsedcomment() {
return parsedcomment;
}

public List<String> tags() {
return tags;
}

public boolean isDeleted() {
return pageid==0;
}

public Params params() {
return params;
}

public static class Params{
private String img_sha1;
private String img_timestamp;

public String img_sha1() {
return img_sha1;
}

public String img_timestamp() {
return img_timestamp;
}
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -39,6 +39,8 @@ public class MwQueryResult extends BaseModel implements PostProcessingTypeAdapte
@SerializedName("wikimediaeditortaskscounts") @Nullable private EditorTaskCounts editorTaskCounts;
@SerializedName("allimages") @Nullable private List<ImageDetails> allImages;
@SerializedName("geosearch") @Nullable private List<GeoSearchItem> geoSearch;
@Nullable private List<MwQueryLogEvent> logevents;


@Nullable public List<MwQueryPage> pages() {
return pages;
Expand Down Expand Up @@ -215,6 +217,11 @@ private void resolveConvertedTitles() {
}
}

@Nullable
public List<MwQueryLogEvent> logevents() {
return logevents;
}

private static class Redirect {
@SuppressWarnings("unused") private int index;
@SuppressWarnings("unused") @Nullable private String from;
Expand Down
55 changes: 53 additions & 2 deletions src/main/java/org/wikipedia/dataclient/mwapi/UserInfo.java
Original file line number Diff line number Diff line change
Expand Up @@ -8,17 +8,30 @@

@SuppressWarnings("unused")
public class UserInfo {
@NonNull
private String name;
@NonNull
private int id;

//Block information
private int blockid;
private String blockedby;
private int blockedbyid;
private String blockreason;
private String blocktimestamp;
private String blockexpiry;

// Object type is any JSON type.
@Nullable private Map<String, ?> options;
@SuppressWarnings("MismatchedQueryAndUpdateOfCollection")
@Nullable
private Map<String, ?> options;

public int id() {
return id;
}

@NonNull public Map<String, String> userjsOptions() {
@NonNull
public Map<String, String> userjsOptions() {
Map<String, String> map = new HashMap<>();
if (options != null) {
for (Map.Entry<String, ?> entry : options.entrySet()) {
Expand All @@ -30,4 +43,42 @@ public int id() {
}
return map;
}

@NonNull
public int blockid() {
return blockid;
}

@NonNull
public String blockedby() {
if (blockedby != null)
return blockedby;
else return "";
}

@NonNull
public int blockedbyid() {
return blockedbyid;
}

@NonNull
public String blockreason() {
if (blockreason != null)
return blockreason;
else return "";
}

@NonNull
public String blocktimestamp() {
if (blocktimestamp != null)
return blocktimestamp;
else return "";
}

@NonNull
public String blockexpiry() {
if (blockexpiry != null)
return blockexpiry;
else return "";
}
}