1
22
23 package com.liferay.portlet.documentlibrary.service.impl;
24
25 import com.liferay.portal.SystemException;
26 import com.liferay.portlet.documentlibrary.NoSuchFileRankException;
27 import com.liferay.portlet.documentlibrary.model.DLFileRank;
28 import com.liferay.portlet.documentlibrary.service.base.DLFileRankLocalServiceBaseImpl;
29
30 import java.util.Date;
31 import java.util.List;
32
33
39 public class DLFileRankLocalServiceImpl extends DLFileRankLocalServiceBaseImpl {
40
41 public void deleteFileRanks(long userId) throws SystemException {
42 dlFileRankPersistence.removeByUserId(userId);
43 }
44
45 public void deleteFileRanks(long folderId, String name)
46 throws SystemException {
47
48 dlFileRankPersistence.removeByF_N(folderId, name);
49 }
50
51 public List<DLFileRank> getFileRanks(long groupId, long userId)
52 throws SystemException {
53
54 return dlFileRankFinder.findByG_U(groupId, userId);
55 }
56
57 public List<DLFileRank> getFileRanks(
58 long groupId, long userId, int start, int end)
59 throws SystemException {
60
61 return dlFileRankFinder.findByG_U(groupId, userId, start, end);
62 }
63
64 public DLFileRank updateFileRank(
65 long groupId, long companyId, long userId, long folderId,
66 String name)
67 throws SystemException {
68
69 try {
70 dlFileRankPersistence.removeByC_U_F_N(
71 companyId, userId, folderId, name);
72 }
73 catch (NoSuchFileRankException nsfre) {
74 }
75
76 long fileRankId = counterLocalService.increment();
77
78 DLFileRank fileRank = dlFileRankPersistence.create(fileRankId);
79
80 fileRank.setCompanyId(companyId);
81 fileRank.setUserId(userId);
82 fileRank.setCreateDate(new Date());
83 fileRank.setFolderId(folderId);
84 fileRank.setName(name);
85
86 dlFileRankPersistence.update(fileRank, false);
87
88 if (dlFileRankFinder.countByG_U(groupId, userId) > 5) {
89 List<DLFileRank> fileRanks = dlFileRankFinder.findByG_U(
90 groupId, userId);
91
92 DLFileRank lastFileRank = fileRanks.get(fileRanks.size() - 1);
93
94 dlFileRankPersistence.remove(lastFileRank);
95 }
96
97 return fileRank;
98 }
99
100 }