package com.aptoide.dataprovider.webservices.models.v7;
import com.fasterxml.jackson.annotation.JsonProperty;
import java.util.ArrayList;
import java.util.List;
/**
* Created by hsousa on 15/09/15.
*/
public class GetStoreWidgets {
public Info info;
public Datalist datalist;
public static class Datalist {
public Number total;
public Number count;
public Number next;
public Number offset;
public Number limit;
public Number hidden;
@JsonProperty("list")
public List<WidgetList> widgetList = new ArrayList<>();
public static class WidgetList {
/** Constants for values of type */
public static final String ADS_TYPE = "ADS";
public static final String APPS_GROUP_TYPE = "APPS_GROUP";
public static final String CATEGORIES_TYPE = "DISPLAYS";
public static final String TIMELINE_TYPE = "TIMELINE";
public static final String REVIEWS_TYPE = "REVIEWS";
public static final String COMMENTS_TYPE = "COMMENTS";
public static final String STORE_GROUP = "STORES_GROUP";
public String type;
public String tag;
public String title; // Highlighted, Games, Categories, Timeline, Recommended for you, Aptoide Publishers
@JsonProperty("view")
public ListViewItems listApps;
public List<Action> actions = new ArrayList<>();
public Data data;
public static class Data {
public String layout; // GRID, LIST, BRICK
public String icon;
public List<Categories> categories = new ArrayList<>(); //only present if type": "DISPLAYS"
public static class Categories {
public Number id;
public String ref_id;
public String parent_id;
public String parent_ref_id;
public String name;
public String graphic;
public String icon;
public Number ads_count;
}
}
public static class Action {
public String type; // button
public String label;
public String tag;
public Event event;
public static class Event {
public static final String GET_STORE_TAB = "getStore";
public static final String GET_STORE_WIDGETS_TAB = "getStoreWidgets";
public static final String GET_APK_COMMENTS_TAB = "getApkComments";
public static final String GET_REVIEWS_TAB = "getReviews";
public static final String API_V7_TYPE = "API";
public static final String API_V3_TYPE = "v3";
public static final String API_EXTERNAL_TYPE = "EXTERNAL";
public static final String EVENT_LIST_APPS = "listApps";
public static final String EVENT_LIST_STORES = "listStores";
public static final String EVENT_GETSTOREWIDGETS = "getStoreWidgets";
public static final String EVENT_FACEBOOK_TYPE = "facebook";
public static final String EVENT_YOUTUBE_TYPE = "youtube";
public static final String EVENT_GETAPKCOMMENTS = "getApkComments";
public String type; // API, v3, EXTERNAL
public String name; // listApps, getStore, getStoreWidgets, getApkComments
public String action;
public static boolean isKnownType(String type) {
switch (type) {
case API_EXTERNAL_TYPE:
case API_V3_TYPE:
case API_V7_TYPE:
return true;
}
return false;
}
public static boolean isKnownName(String name) {
switch (name) {
case EVENT_LIST_APPS:
case EVENT_LIST_STORES:
case EVENT_GETSTOREWIDGETS:
case EVENT_YOUTUBE_TYPE:
case EVENT_FACEBOOK_TYPE:
case EVENT_GETAPKCOMMENTS:
return true;
}
return false;
}
}
}
}
}
}