1   
2   
3   
4   
5   
6   
7   
8   package com.buckosoft.BuckoVidLib.business;
9   
10  import java.util.List;
11  import java.util.regex.Pattern;
12  
13  import com.buckosoft.BuckoVidLib.domain.Actor;
14  import com.buckosoft.BuckoVidLib.domain.Director;
15  import com.buckosoft.BuckoVidLib.domain.LibrarySection;
16  import com.buckosoft.BuckoVidLib.domain.TVSeason;
17  import com.buckosoft.BuckoVidLib.domain.Video;
18  import com.buckosoft.BuckoVidLib.domain.VideoBase;
19  import com.buckosoft.BuckoVidLib.domain.Writer;
20  import com.buckosoft.BuckoVidLib.domain.rest.admin.RestRefreshStatus;
21  
22  
23  
24  
25  
26  
27  
28  
29  
30  
31  public interface LibraryManager {
32  	List<LibrarySection> getSectionList();
33  	List<LibrarySection> getSectionList(boolean allowRestricted);
34  
35  	VideoBase getRandomMovie(boolean allowRestricted);
36  	
37  	Video		getVideoFromKey(int key, boolean allowRestricted);
38  	VideoBase	getVideoBaseFromKey(int key, boolean allowRestricted);
39  	
40  	List<VideoBase>		getNewestVideos(int count, boolean allowRestricted);
41  	List<VideoBase>		findVideos(Pattern pattern, boolean allowRestricted, int maxReturned);
42  	List<Actor>			findActors(String key, int maxReturned);
43  	List<Director>		findDirectors(String key, int maxReturned);
44  	List<Writer>		findWriters(String key, int maxReturned);
45  
46  	TVSeason			getTVSeasonFromHashKey(int key);
47  	
48  	int	getMovieCount(boolean allowRestricted);
49  	
50  	int	getTVShowCount(boolean allowRestricted);
51  
52  	
53  
54  
55  
56  	int	getTVEpisodeCount(boolean allowRestricted);
57  
58  	List<VideoBase>	getLibrarySectionVideos(int key);
59  
60  	List<VideoBase>	getDirectorVideos(int key);
61  	List<VideoBase>	getWriterVideos(int key);
62  	List<VideoBase>	getActorVideos(int key);
63  
64  	long					getLastUpdateTime();
65  	
66  	
67  
68  	void startRefreshLibraryFromPlex();
69  	
70  	
71  
72  
73  	RestRefreshStatus getRefreshLibraryFromPlexStatus();
74  
75  }