1 package fr.in2p3.jsaga.adaptor.security;
2
3 import java.util.ArrayList;
4 import java.util.HashSet;
5 import java.util.Iterator;
6 import java.util.List;
7 import java.util.Set;
8
9
10
11
12
13
14
15
16
17
18
19 public class DelegationTypeMap {
20
21 public static final String LIMITED = "LIMITED";
22 public static final String FULL = "FULL";
23 public static final String NONE = "NONE";
24 private static List<String> map = createList();
25
26 private static List<String> createList() {
27 List<String> map = new ArrayList<String>();
28 map.add(LIMITED);
29 map.add(FULL);
30 map.add(NONE);
31 return map;
32 }
33
34 public static boolean toLimitedValue(String type) {
35 return (type.equalsIgnoreCase(LIMITED));
36 }
37
38 public static boolean isValid(String type) {
39 return map.contains(type.toUpperCase());
40 }
41
42 public static Set<String> getValidTypes() {
43 return new HashSet<String>(map);
44 }
45
46 public static String getExpected() {
47 Set<String> valids = DelegationTypeMap.getValidTypes();
48 String msg = "\"" + GlobusContext.DELEGATION + "\": Expected: ";
49 for (Iterator<String> i = valids.iterator(); i.hasNext();) {
50 msg += i.next() + " | ";
51 }
52 return msg;
53 }
54 }