Coverage Report - org.jtheque.films.persistence.od.able.Film
 
Classes in this File Line Coverage Branch Coverage Complexity
Film
N/A
N/A
1
 
 1  
 package org.jtheque.films.persistence.od.able;
 2  
 
 3  
 /*
 4  
  * This file is part of JTheque.
 5  
  *            
 6  
  * JTheque is free software: you can redistribute it and/or modify
 7  
  * it under the terms of the GNU General Public License as published by
 8  
  * the Free Software Foundation, either version 3 of the License. 
 9  
  *
 10  
  * JTheque is distributed in the hope that it will be useful,
 11  
  * but WITHOUT ANY WARRANTY; without even the implied warranty of
 12  
  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 13  
  * GNU General Public License for more details.
 14  
  *
 15  
  * You should have received a copy of the GNU General Public License
 16  
  * along with JTheque.  If not, see <http://www.gnu.org/licenses/>.
 17  
  */
 18  
 
 19  
 import org.jtheque.films.persistence.od.impl.FilmTemporaryContext;
 20  
 import org.jtheque.primary.od.able.Collection;
 21  
 import org.jtheque.primary.od.able.Data;
 22  
 import org.jtheque.primary.od.able.Kind;
 23  
 import org.jtheque.primary.od.able.Language;
 24  
 import org.jtheque.primary.od.able.Lending;
 25  
 import org.jtheque.primary.od.able.Notable;
 26  
 import org.jtheque.primary.od.able.Person;
 27  
 import org.jtheque.primary.od.able.Saga;
 28  
 import org.jtheque.primary.od.able.Type;
 29  
 
 30  
 import java.util.Set;
 31  
 
 32  
 /**
 33  
  * A Film specification.
 34  
  *
 35  
  * @author Baptiste Wicht
 36  
  */
 37  
 public interface Film extends Data, Notable {
 38  
     /**
 39  
      * Set the title of the film.
 40  
      *
 41  
      * @param title The title of the film.
 42  
      */
 43  
     void setTitle(String title);
 44  
 
 45  
     /**
 46  
      * Return the title of the film.
 47  
      *
 48  
      * @return The title of the film.
 49  
      */
 50  
     String getTitle();
 51  
 
 52  
     /**
 53  
      * The collection of this film.
 54  
      *
 55  
      * @param collection The collection.
 56  
      */
 57  
     void setTheCollection(Collection collection);
 58  
 
 59  
     /**
 60  
      * Return the collection of the film.
 61  
      *
 62  
      * @return The collection of the film.
 63  
      */
 64  
     Collection getTheCollection();
 65  
 
 66  
     /**
 67  
      * Set the type of the film.
 68  
      *
 69  
      * @param type The type of the film.
 70  
      */
 71  
     void setTheType(Type type);
 72  
 
 73  
     /**
 74  
      * Return the type of the film.
 75  
      *
 76  
      * @return The type of the film.
 77  
      */
 78  
     Type getTheType();
 79  
 
 80  
     /**
 81  
      * Set the year of the film.
 82  
      *
 83  
      * @param year The year of the film.
 84  
      */
 85  
     void setYear(int year);
 86  
 
 87  
     /**
 88  
      * Return the year of the film.
 89  
      *
 90  
      * @return The year of the film.
 91  
      */
 92  
     int getYear();
 93  
 
 94  
     /**
 95  
      * Set the duration of the film.
 96  
      *
 97  
      * @param duration The duration of the film.
 98  
      */
 99  
     void setDuration(int duration);
 100  
 
 101  
     /**
 102  
      * Return the duration of the film.
 103  
      *
 104  
      * @return The duration of the film.
 105  
      */
 106  
     int getDuration();
 107  
 
 108  
     /**
 109  
      * Set the realizer of the film.
 110  
      *
 111  
      * @param realizer The realizer of the film.
 112  
      */
 113  
     void setTheRealizer(Person realizer);
 114  
 
 115  
     /**
 116  
      * Return the realizer of the film.
 117  
      *
 118  
      * @return The realizer of the film.
 119  
      */
 120  
     Person getTheRealizer();
 121  
 
 122  
     /**
 123  
      * Set the language of the film.
 124  
      *
 125  
      * @param language The language of the film.
 126  
      */
 127  
     void setTheLanguage(Language language);
 128  
 
 129  
     /**
 130  
      * Return the language of the film.
 131  
      *
 132  
      * @return The language of the film.
 133  
      */
 134  
     Language getTheLanguage();
 135  
 
 136  
     /**
 137  
      * Set the comment of the film.
 138  
      *
 139  
      * @param comment The comment of the film.
 140  
      */
 141  
     void setComment(String comment);
 142  
 
 143  
     /**
 144  
      * Return the comment of the film.
 145  
      *
 146  
      * @return The comment of the film.
 147  
      */
 148  
     String getComment();
 149  
 
 150  
     /**
 151  
      * Set the resume of the film.
 152  
      *
 153  
      * @param resume The resume of the film.
 154  
      */
 155  
     void setResume(String resume);
 156  
 
 157  
     /**
 158  
      * Return the resume of the film.
 159  
      *
 160  
      * @return The resume of the film.
 161  
      */
 162  
     String getResume();
 163  
 
 164  
     /**
 165  
      * Set the image of the film.
 166  
      *
 167  
      * @param imagePath The path to the image of the film.
 168  
      */
 169  
     void setImage(String imagePath);
 170  
 
 171  
     /**
 172  
      * Return the duration of the film.
 173  
      *
 174  
      * @return The duration of the film.
 175  
      */
 176  
     String getImage();
 177  
 
 178  
     /**
 179  
      * Return the path to the file.
 180  
      *
 181  
      * @return The path to the file.
 182  
      */
 183  
     String getFilePath();
 184  
 
 185  
     /**
 186  
      * Set file year of the film.
 187  
      *
 188  
      * @param filePath The path to the file of the film.
 189  
      */
 190  
     void setFilePath(String filePath);
 191  
 
 192  
     /**
 193  
      * Return all the actors of the film.
 194  
      *
 195  
      * @return A Set containing all the actors of the film.
 196  
      */
 197  
     Set<Person> getActors();
 198  
 
 199  
     /**
 200  
      * Return all the kinds of the film.
 201  
      *
 202  
      * @return A Set containing all the kinds of the film.
 203  
      */
 204  
     Set<Kind> getKinds();
 205  
 
 206  
     /**
 207  
      * Set the lending of the film.
 208  
      *
 209  
      * @param lending The lending of the film.
 210  
      */
 211  
     void setTheLending(Lending lending);
 212  
 
 213  
     /**
 214  
      * Return the lending of the film.
 215  
      *
 216  
      * @return The lending or <code>null</code> if this film is not lend.
 217  
      */
 218  
     Lending getTheLending();
 219  
 
 220  
     /**
 221  
      * Return the saga of the film.
 222  
      *
 223  
      * @return The saga of the film.
 224  
      */
 225  
     Saga getTheSaga();
 226  
 
 227  
     /**
 228  
      * Set the saga of the film.
 229  
      *
 230  
      * @param theSaga The saga of the film.
 231  
      */
 232  
     void setTheSaga(Saga theSaga);
 233  
 
 234  
     /**
 235  
      * Indicate if the film has kinds.
 236  
      *
 237  
      * @return <code>true</code> if the film has kinds else <code>false</code>.
 238  
      */
 239  
     boolean hasKinds();
 240  
 
 241  
     /**
 242  
      * Indicate if the film has a type.
 243  
      *
 244  
      * @return <code>true</code> if the film has a type else <code>false</code>.
 245  
      */
 246  
     boolean hasType();
 247  
 
 248  
     /**
 249  
      * Indicate if the film has a realizer.
 250  
      *
 251  
      * @return <code>true</code> if the film has a realizer else <code>false</code>.
 252  
      */
 253  
     boolean hasRealizer();
 254  
 
 255  
     /**
 256  
      * Indicate if the film has a language.
 257  
      *
 258  
      * @return <code>true</code> if the film has a language else <code>false</code>.
 259  
      */
 260  
     boolean hasLanguage();
 261  
 
 262  
     /**
 263  
      * Indicate if the film has actors.
 264  
      *
 265  
      * @return <code>true</code> if the film has actors else <code>false</code>.
 266  
      */
 267  
     boolean hasActors();
 268  
 
 269  
     /**
 270  
      * Return the temporary context of the film.
 271  
      *
 272  
      * @return The temporary context of the film.
 273  
      */
 274  
     @Override
 275  
     FilmTemporaryContext getTemporaryContext();
 276  
 
 277  
     /**
 278  
      * Add a set of actors to the film.
 279  
      *
 280  
      * @param actors The actors to add to the film.
 281  
      */
 282  
     void addActors(Set<Person> actors);
 283  
 
 284  
     /**
 285  
      * Add a set of kinds to the film.
 286  
      *
 287  
      * @param kinds The kinds to add to the film.
 288  
      */
 289  
     void addKinds(Set<Kind> kinds);
 290  
 
 291  
     /**
 292  
      * Add an actor to the film.
 293  
      *
 294  
      * @param actor The actor to add.
 295  
      */
 296  
     void addActor(Person actor);
 297  
 
 298  
     /**
 299  
      * Add a kind to the film.
 300  
      *
 301  
      * @param kind The kind to add.
 302  
      */
 303  
     void addKind(Kind kind);
 304  
 
 305  
     /**
 306  
      * Indicate if the film contains the specified actor or not.
 307  
      *
 308  
      * @param actor The actor to to test for contains.
 309  
      * @return <code>true</code> if the film contains the actor else <code>false</code>.
 310  
      */
 311  
     boolean containsActor(Person actor);
 312  
 
 313  
     /**
 314  
      * Indicate if the film contains the specified kind or not.
 315  
      *
 316  
      * @param kind The kind to to test for contains.
 317  
      * @return <code>true</code> if the film contains the kind else <code>false</code>.
 318  
      */
 319  
     boolean containsKind(Kind kind);
 320  
 }