package org.wordpress.android.ui.stats.models;
import org.json.JSONArray;
import org.json.JSONException;
import org.json.JSONObject;
import org.wordpress.android.util.AppLog;
import java.util.ArrayList;
import java.util.List;
public class FollowersModel extends BaseStatsModel {
private long mBlogID;
private int mPage;
private int mPages;
private int mTotal;
private int mTotalEmail;
private int mTotalWPCom;
private List<FollowerModel> mSubscribers;
public FollowersModel(long blogID, JSONObject response) throws JSONException {
this.mBlogID = blogID;
this.mPage = response.getInt("page");
this.mPages = response.getInt("pages");
this.mTotal = response.getInt("total");
this.mTotalEmail = response.getInt("total_email");
this.mTotalWPCom = response.getInt("total_wpcom");
JSONArray subscribersJSONArray = response.optJSONArray("subscribers");
if (subscribersJSONArray != null) {
mSubscribers = new ArrayList<>(subscribersJSONArray.length());
for (int i = 0; i < subscribersJSONArray.length(); i++) {
JSONObject currentAuthorJSON = subscribersJSONArray.getJSONObject(i);
try {
FollowerModel currentFollower = new FollowerModel(mBlogID, currentAuthorJSON);
mSubscribers.add(currentFollower);
} catch (JSONException e) {
AppLog.e(AppLog.T.STATS, "Unexpected Follower object " +
"at position " + i + " Response: " + response.toString(), e);
}
}
}
}
public long getBlogID() {
return mBlogID;
}
public void setBlogID(long blogID) {
this.mBlogID = blogID;
}
public List<FollowerModel> getFollowers() {
return this.mSubscribers;
}
public int getTotalEmail() {
return mTotalEmail;
}
public int getTotalWPCom() {
return mTotalWPCom;
}
public int getPage() {
return mPage;
}
public int getPages() {
return mPages;
}
public int getTotal() {
return mTotal;
}
}