1 package ch.busyboxes.agoo.service;
2
3 import java.util.List;
4
5 import ch.busyboxes.agoo.controller.model.WebWatchedFile;
6
7 /**
8 * Interface to Watched files Service
9 *
10 * @author julien@busyboxes.ch
11 */
12 public interface WatchedFileService {
13
14 /**
15 * Returns the total number of files watched
16 *
17 * @return total number of files watched
18 */
19 public long getNumberOfFilesWatched();
20
21 /**
22 * Checks a watched file
23 *
24 * @param fileId the watched file id
25 */
26 public void checkWatchedFile(long fileId);
27
28 /**
29 * Returns the files associated with the given folder using paging
30 *
31 * @param folderId the folder's id
32 * @param filesPerPage the number of files per page
33 * @param page the page number
34 * @return the list of watched files for web display
35 */
36 public List<WebWatchedFile> getWatchedFilesByFolderPaged(Long folderId,
37 int filesPerPage, int page);
38
39 /**
40 * Return the file based on its ID
41 *
42 * @param fileId the id of the watched file
43 * @return the watched file information
44 */
45 public WebWatchedFile getWatchedFileById(Long fileId);
46
47 }