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}