package com.wediscussmovies.project.service; import com.wediscussmovies.project.ajaxmodels.Grade; import com.wediscussmovies.project.model.Genre; import com.wediscussmovies.project.model.Movie; import com.wediscussmovies.project.model.Person; import com.wediscussmovies.project.model.User; import java.sql.Date; import java.util.List; public interface MovieService { List listAll(); List listAllByType(Character type); List listAllWithoutDirector(); List searchByTitle(String title); Movie findById(Integer id); Movie save(String title, String description, String imageUrl, Date airingDate,Double rating, Integer directorId,List actorIds,List genreIds); Movie edit(Integer movieId,String title, String description, String imageUrl, Date airingDate,Double rating, Integer directorId,List actorIds, List genreIds); List findAllActorsForMovie(Movie movie); List findAllGenresForMovie(Movie movie); void likeMovie(Integer movieId, Integer userId); void unlikeMovie(Integer movieId,Integer userId); List findLikedMoviesByUser(User user); void deleteById(Integer id); void addGradeMovie(Integer movieId, User user, Grade grade); }