Untitled
unknown
plain_text
14 days ago
18 kB
4
Indexable
package sth.nns.clientservice.model; import sth.json.JSON; import sth.json.JacksonHelper; import java.util.List; import java.util.ArrayList; /** * Model representing the response from the NNS recommendations personalized API. */ public class RecommendationsResponse { private String type; private String uiHint; private boolean vodOutOfWindow; private String name; private String twcTvNetworkDisplayMode; private List<Result> results; // Using the proper generic type private int num_categories; private int total_results; private int start_index; private int num_results; private int max_results; private String dsQueryId; private String curationType; private List<String> dynamicUris; private boolean skeletonShelf; public RecommendationsResponse() { this.results = new ArrayList<>(); this.dynamicUris = new ArrayList<>(); } public String getType() { return type; } public void setType(String type) { this.type = type; } public String getUiHint() { return uiHint; } public void setUiHint(String uiHint) { this.uiHint = uiHint; } public boolean isVodOutOfWindow() { return vodOutOfWindow; } public void setVodOutOfWindow(boolean vodOutOfWindow) { this.vodOutOfWindow = vodOutOfWindow; } public String getName() { return name; } public void setName(String name) { this.name = name; } public String getTwcTvNetworkDisplayMode() { return twcTvNetworkDisplayMode; } public void setTwcTvNetworkDisplayMode(String twcTvNetworkDisplayMode) { this.twcTvNetworkDisplayMode = twcTvNetworkDisplayMode; } public List<Result> getResults() { return results; } public void setResults(List<Result> results) { this.results = results; } public int getNum_categories() { return num_categories; } public void setNum_categories(int num_categories) { this.num_categories = num_categories; } public int getTotal_results() { return total_results; } public void setTotal_results(int total_results) { this.total_results = total_results; } public int getStart_index() { return start_index; } public void setStart_index(int start_index) { this.start_index = start_index; } public int getNum_results() { return num_results; } public void setNum_results(int num_results) { this.num_results = num_results; } public int getMax_results() { return max_results; } public void setMax_results(int max_results) { this.max_results = max_results; } public String getDsQueryId() { return dsQueryId; } public void setDsQueryId(String dsQueryId) { this.dsQueryId = dsQueryId; } public String getCurationType() { return curationType; } public void setCurationType(String curationType) { this.curationType = curationType; } public List<String> getDynamicUris() { return dynamicUris; } public void setDynamicUris(List<String> dynamicUris) { this.dynamicUris = dynamicUris; } public boolean isSkeletonShelf() { return skeletonShelf; } public void setSkeletonShelf(boolean skeletonShelf) { this.skeletonShelf = skeletonShelf; } public JSON toJson() { return JSON.parse(JacksonHelper.writeValueAsBytes(this)); } public byte[] toBytes() { return JacksonHelper.writeValueAsBytes(this); } @Override public String toString() { return JacksonHelper.toString(this, 3); } public RecommendationsResponse defaultModel() { // Create a default model for testing return this; } } /** * Base class for all result types in the recommendations response. */ public abstract class Result { private String type; private String alphaSortOn; private boolean availableOutOfHome; private boolean linearAvailableOutOfHome; private boolean linearAvailableInMarket; private boolean vodAvailableOutOfHome; private boolean tvodAvailableOutOfHome; private boolean cdvrAvailableOutOfHome; private boolean vodOutOfWindow; private String image_uri; private String network; private String title; private String titleWithoutArticles; private String uri; private boolean skeletonShelf; public Result() {} public String getType() { return type; } public void setType(String type) { this.type = type; } public String getAlphaSortOn() { return alphaSortOn; } public void setAlphaSortOn(String alphaSortOn) { this.alphaSortOn = alphaSortOn; } public boolean isAvailableOutOfHome() { return availableOutOfHome; } public void setAvailableOutOfHome(boolean availableOutOfHome) { this.availableOutOfHome = availableOutOfHome; } public boolean isLinearAvailableOutOfHome() { return linearAvailableOutOfHome; } public void setLinearAvailableOutOfHome(boolean linearAvailableOutOfHome) { this.linearAvailableOutOfHome = linearAvailableOutOfHome; } public boolean isLinearAvailableInMarket() { return linearAvailableInMarket; } public void setLinearAvailableInMarket(boolean linearAvailableInMarket) { this.linearAvailableInMarket = linearAvailableInMarket; } public boolean isVodAvailableOutOfHome() { return vodAvailableOutOfHome; } public void setVodAvailableOutOfHome(boolean vodAvailableOutOfHome) { this.vodAvailableOutOfHome = vodAvailableOutOfHome; } public boolean isTvodAvailableOutOfHome() { return tvodAvailableOutOfHome; } public void setTvodAvailableOutOfHome(boolean tvodAvailableOutOfHome) { this.tvodAvailableOutOfHome = tvodAvailableOutOfHome; } public boolean isCdvrAvailableOutOfHome() { return cdvrAvailableOutOfHome; } public void setCdvrAvailableOutOfHome(boolean cdvrAvailableOutOfHome) { this.cdvrAvailableOutOfHome = cdvrAvailableOutOfHome; } public boolean isVodOutOfWindow() { return vodOutOfWindow; } public void setVodOutOfWindow(boolean vodOutOfWindow) { this.vodOutOfWindow = vodOutOfWindow; } public String getImage_uri() { return image_uri; } public void setImage_uri(String image_uri) { this.image_uri = image_uri; } public String getNetwork() { return network; } public void setNetwork(String network) { this.network = network; } public String getTitle() { return title; } public void setTitle(String title) { this.title = title; } public String getTitleWithoutArticles() { return titleWithoutArticles; } public void setTitleWithoutArticles(String titleWithoutArticles) { this.titleWithoutArticles = titleWithoutArticles; } public String getUri() { return uri; } public void setUri(String uri) { this.uri = uri; } public boolean isSkeletonShelf() { return skeletonShelf; } public void setSkeletonShelf(boolean skeletonShelf) { this.skeletonShelf = skeletonShelf; } } /** * Model for "event" type results in the recommendations response. */ public class Event extends Result { private List<String> tmsProgramIds; private List<String> providerAssetIds; private List<String> tmsGuideServiceIds; private List<String> ipTmsGuideServiceIds; private List<String> streamList; private EventDetails details; public Event() { this.tmsProgramIds = new ArrayList<>(); this.providerAssetIds = new ArrayList<>(); this.tmsGuideServiceIds = new ArrayList<>(); this.ipTmsGuideServiceIds = new ArrayList<>(); this.streamList = new ArrayList<>(); } public List<String> getTmsProgramIds() { return tmsProgramIds; } public void setTmsProgramIds(List<String> tmsProgramIds) { this.tmsProgramIds = tmsProgramIds; } public List<String> getProviderAssetIds() { return providerAssetIds; } public void setProviderAssetIds(List<String> providerAssetIds) { this.providerAssetIds = providerAssetIds; } public List<String> getTmsGuideServiceIds() { return tmsGuideServiceIds; } public void setTmsGuideServiceIds(List<String> tmsGuideServiceIds) { this.tmsGuideServiceIds = tmsGuideServiceIds; } public List<String> getIpTmsGuideServiceIds() { return ipTmsGuideServiceIds; } public void setIpTmsGuideServiceIds(List<String> ipTmsGuideServiceIds) { this.ipTmsGuideServiceIds = ipTmsGuideServiceIds; } public List<String> getStreamList() { return streamList; } public void setStreamList(List<String> streamList) { this.streamList = streamList; } public EventDetails getDetails() { return details; } public void setDetails(EventDetails details) { this.details = details; } public JSON toJson() { return JSON.parse(JacksonHelper.writeValueAsBytes(this)); } public byte[] toBytes() { return JacksonHelper.writeValueAsBytes(this); } @Override public String toString() { return JacksonHelper.toString(this, 3); } } /** * Model for "episode_list" type results in the recommendations response. */ public class EpisodeList extends Result { private String tmsSeriesId; private String tmsSeriesIdStr; private List<String> tmsGuideServiceIds; private List<String> ipTmsGuideServiceIds; private EpisodeListDetails details; public EpisodeList() { this.tmsGuideServiceIds = new ArrayList<>(); this.ipTmsGuideServiceIds = new ArrayList<>(); } public String getTmsSeriesId() { return tmsSeriesId; } public void setTmsSeriesId(String tmsSeriesId) { this.tmsSeriesId = tmsSeriesId; } public String getTmsSeriesIdStr() { return tmsSeriesIdStr; } public void setTmsSeriesIdStr(String tmsSeriesIdStr) { this.tmsSeriesIdStr = tmsSeriesIdStr; } public List<String> getTmsGuideServiceIds() { return tmsGuideServiceIds; } public void setTmsGuideServiceIds(List<String> tmsGuideServiceIds) { this.tmsGuideServiceIds = tmsGuideServiceIds; } public List<String> getIpTmsGuideServiceIds() { return ipTmsGuideServiceIds; } public void setIpTmsGuideServiceIds(List<String> ipTmsGuideServiceIds) { this.ipTmsGuideServiceIds = ipTmsGuideServiceIds; } public EpisodeListDetails getDetails() { return details; } public void setDetails(EpisodeListDetails details) { this.details = details; } public JSON toJson() { return JSON.parse(JacksonHelper.writeValueAsBytes(this)); } public byte[] toBytes() { return JacksonHelper.writeValueAsBytes(this); } @Override public String toString() { return JacksonHelper.toString(this, 3); } } /** * Model for details of an "event" type result. */ public class EventDetails { private List<Genre> genres; private ProgramMetadata programMetadata; private String original_air_date; private String year; private List<String> allRatings; private List<String> allVPPs; private List<String> allIpVPPs; private boolean entitled; private boolean tvodEntitled; private boolean linearEntitledIp; private boolean linearEntitledQam; public EventDetails() { this.genres = new ArrayList<>(); this.allRatings = new ArrayList<>(); this.allVPPs = new ArrayList<>(); this.allIpVPPs = new ArrayList<>(); } public List<Genre> getGenres() { return genres; } public void setGenres(List<Genre> genres) { this.genres = genres; } public ProgramMetadata getProgramMetadata() { return programMetadata; } public void setProgramMetadata(ProgramMetadata programMetadata) { this.programMetadata = programMetadata; } public String getOriginal_air_date() { return original_air_date; } public void setOriginal_air_date(String original_air_date) { this.original_air_date = original_air_date; } public String getYear() { return year; } public void setYear(String year) { this.year = year; } public List<String> getAllRatings() { return allRatings; } public void setAllRatings(List<String> allRatings) { this.allRatings = allRatings; } public List<String> getAllVPPs() { return allVPPs; } public void setAllVPPs(List<String> allVPPs) { this.allVPPs = allVPPs; } public List<String> getAllIpVPPs() { return allIpVPPs; } public void setAllIpVPPs(List<String> allIpVPPs) { this.allIpVPPs = allIpVPPs; } public boolean isEntitled() { return entitled; } public void setEntitled(boolean entitled) { this.entitled = entitled; } public boolean isTvodEntitled() { return tvodEntitled; } public void setTvodEntitled(boolean tvodEntitled) { this.tvodEntitled = tvodEntitled; } public boolean isLinearEntitledIp() { return linearEntitledIp; } public void setLinearEntitledIp(boolean linearEntitledIp) { this.linearEntitledIp = linearEntitledIp; } public boolean isLinearEntitledQam() { return linearEntitledQam; } public void setLinearEntitledQam(boolean linearEntitledQam) { this.linearEntitledQam = linearEntitledQam; } public JSON toJson() { return JSON.parse(JacksonHelper.writeValueAsBytes(this)); } public byte[] toBytes() { return JacksonHelper.writeValueAsBytes(this); } @Override public String toString() { return JacksonHelper.toString(this, 3); } } /** * Model for details of an "episode_list" type result. */ public class EpisodeListDetails { private int num_assets; private int totalEpisodes; private Event latest_episode; private List<String> allRatings; private List<String> allVPPs; private List<String> allIpVPPs; private boolean entitled; private boolean tvodEntitled; private boolean linearEntitledIp; private boolean linearEntitledQam; public EpisodeListDetails() { this.allRatings = new ArrayList<>(); this.allVPPs = new ArrayList<>(); this.allIpVPPs = new ArrayList<>(); } public int getNum_assets() { return num_assets; } public void setNum_assets(int num_assets) { this.num_assets = num_assets; } public int getTotalEpisodes() { return totalEpisodes; } public void setTotalEpisodes(int totalEpisodes) { this.totalEpisodes = totalEpisodes; } public Event getLatest_episode() { return latest_episode; } public void setLatest_episode(Event latest_episode) { this.latest_episode = latest_episode; } public List<String> getAllRatings() { return allRatings; } public void setAllRatings(List<String> allRatings) { this.allRatings = allRatings; } public List<String> getAllVPPs() { return allVPPs; } public void setAllVPPs(List<String> allVPPs) { this.allVPPs = allVPPs; } public List<String> getAllIpVPPs() { return allIpVPPs; } public void setAllIpVPPs(List<String> allIpVPPs) { this.allIpVPPs = allIpVPPs; } public boolean isEntitled() { return entitled; } public void setEntitled(boolean entitled) { this.entitled = entitled; } public boolean isTvodEntitled() { return tvodEntitled; } public void setTvodEntitled(boolean tvodEntitled) { this.tvodEntitled = tvodEntitled; } public boolean isLinearEntitledIp() { return linearEntitledIp; } public void setLinearEntitledIp(boolean linearEntitledIp) { this.linearEntitledIp = linearEntitledIp; } public boolean isLinearEntitledQam() { return linearEntitledQam; } public void setLinearEntitledQam(boolean linearEntitledQam) { this.linearEntitledQam = linearEntitledQam; } public JSON toJson() { return JSON.parse(JacksonHelper.writeValueAsBytes(this)); } public byte[] toBytes() { return JacksonHelper.writeValueAsBytes(this); } @Override public String toString() { return JacksonHelper.toString(this, 3); } } /** * Model for program metadata. */ public class ProgramMetadata { // Add fields as needed based on the actual response public ProgramMetadata() {} public JSON toJson() { return JSON.parse(JacksonHelper.writeValueAsBytes(this)); } public byte[] toBytes() { return JacksonHelper.writeValueAsBytes(this); } @Override public String toString() { return JacksonHelper.toString(this, 3); } } /** * Model for genre information. */ public class Genre { private String name; public Genre() {} public Genre(String name) { this.name = name; } public String getName() { return name; } public void setName(String name) { this.name = name; } public JSON toJson() { return JSON.parse(JacksonHelper.writeValueAsBytes(this)); } public byte[] toBytes() { return JacksonHelper.writeValueAsBytes(this); } @Override public String toString() { return JacksonHelper.toString(this, 3); } }
Editor is loading...
Leave a Comment