summaryrefslogtreecommitdiffstats
path: root/idrop-web/grails-app/services/org/irods/mydrop/service/StarringService.groovy
blob: 98467b68c027293a166f735de87518340664efd2 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
package org.irods.mydrop.service

import org.irods.jargon.core.connection.IRODSAccount
import org.irods.jargon.core.exception.JargonException
import org.irods.jargon.core.pub.IRODSAccessObjectFactory
import org.irods.jargon.usertagging.domain.IRODSStarredFileOrCollection
import org.irods.jargon.usertagging.starring.IRODSStarringService
import org.irods.jargon.usertagging.starring.IRODSStarringServiceImpl

/**
 * Service to 'star' or favorite folders and files
 * @author Mike Conway - DICE (www.irods.org)
 *
 */
class StarringService {
	
	static transactional = false
	IRODSAccessObjectFactory irodsAccessObjectFactory


   IRODSStarredFileOrCollection findStarred(IRODSAccount irodsAccount, String irodsAbsolutePath) throws FileNotFoundException, JargonException  {
   		
	   if (irodsAccount == null) {
			   throw new IllegalArgumentException("null irodsAccount");
		}
	   
	   IRODSStarringService irodsStarringService = new IRODSStarringServiceImpl(irodsAccessObjectFactory, irodsAccount)
	   return irodsStarringService.findStarredForAbsolutePath(irodsAbsolutePath)
	   
    }
   
   void star(IRODSAccount irodsAccount, String irodsAbsolutePath, String description) throws FileNotFoundException, JargonException {
	   if (irodsAccount == null) {
		   throw new IllegalArgumentException("null irodsAccount");
	   }
	   
	   IRODSStarringService irodsStarringService = new IRODSStarringServiceImpl(irodsAccessObjectFactory, irodsAccount)
	   irodsStarringService.starFileOrCollection(irodsAbsolutePath, description)
	   
   }
   
   void unStar(IRODSAccount irodsAccount, String irodsAbsolutePath) throws FileNotFoundException, JargonException {
	   if (irodsAccount == null) {
		   throw new IllegalArgumentException("null irodsAccount");
	   }
	   
	   IRODSStarringService irodsStarringService = new IRODSStarringServiceImpl(irodsAccessObjectFactory, irodsAccount)
	   irodsStarringService.unstarFileOrCollection(irodsAbsolutePath)
	   
   }
   
   
   
   
}