001package net.filebot.web; 002 003import static net.filebot.web.WebRequest.*; 004 005import java.io.Serializable; 006import java.net.URL; 007import java.util.AbstractList; 008import java.util.Collection; 009 010public class MovieCollection extends AbstractList<Movie> implements Serializable { 011 012 protected Movie[] parts; 013 014 protected int id; 015 protected String name; 016 protected String overview; 017 018 protected String poster; 019 protected String backdrop; 020 021 public MovieCollection(Collection<Movie> parts, int id, String name, String overview, URL poster, URL backdrop) { 022 this.parts = parts.toArray(new Movie[0]); 023 this.id = id; 024 this.name = name; 025 this.overview = overview; 026 this.poster = poster == null ? null : poster.toExternalForm(); 027 this.backdrop = backdrop == null ? null : backdrop.toExternalForm(); 028 } 029 030 @Override 031 public Movie get(int index) { 032 return parts[index]; 033 } 034 035 @Override 036 public int size() { 037 return parts.length; 038 } 039 040 public int getId() { 041 return id; 042 } 043 044 public String getName() { 045 return name; 046 } 047 048 public String getOverview() { 049 return overview; 050 } 051 052 public URL getPoster() { 053 return parseURL(poster); 054 } 055 056 public URL getBackdrop() { 057 return parseURL(backdrop); 058 } 059 060}