Changed the name of the WAYF servlet (for clarity).
[java-idp.git] / src / edu / internet2 / middleware / shibboleth / wayf / WayfConfig.java
1 package edu.internet2.middleware.shibboleth.wayf;
2
3 import java.util.HashSet;
4
5 import org.apache.log4j.Logger;
6
7 /**
8  * Class used by the  WAYF service to determine runtime options
9  * Most of the fields of this class should have reasonable defaults set
10  * @author        Walter Hoehn
11  */
12
13 public class WayfConfig {
14
15         private static Logger log = Logger.getLogger(WayfConfig.class.getName());
16
17         private static WayfOrigins wd;
18         private static String location;
19         private static String logoLocation = "images/internet2.gif";
20         private static String supportContact = "mailto:shib-support@internet2.org";
21         private static String helpText =
22                 "In order to fulfill the request for the  web resource you "
23                         + "have just chosen, information must first be obtained from "
24                         + "your home institution. Please select the institution with "
25                         + "which you are affiliated.";
26         private static String searchResultEmptyText =
27                 "No institution found that matches your search "
28                         + "criteria, please try again.";
29         private static HashSet ignoredForMatch = new HashSet();
30
31         private static String cache = "SESSION";
32
33         /**
34          * Constructor for WayfConfig.
35          */
36         public WayfConfig() {
37                 super();
38         }
39
40         /**
41          * Gets the wd.
42          * @return Returns a WayfOrigins
43          */
44         public static WayfOrigins getWAYFData() {
45                 return wd;
46         }
47
48         /**
49          * Sets the wd.
50          * @param wd The wd to set
51          */
52         public void setWAYFData(WayfOrigins wd) {
53                 WayfConfig.wd = wd;
54         }
55
56         /**
57          * Gets the searchResultEmptyText.
58          * @return Returns a String
59          */
60         public static String getSearchResultEmptyText() {
61                 return searchResultEmptyText;
62         }
63
64         /**
65          * Sets the searchResultEmptyText.
66          * @param searchResultEmptyText The searchResultEmptyText to set
67          */
68         public void setSearchResultEmptyText(String searchResultEmptyText) {
69                 WayfConfig.searchResultEmptyText = searchResultEmptyText;
70         }
71
72         /**
73          * Gets the helpText.
74          * @return Returns a String
75          */
76         public static String getHelpText() {
77                 return helpText;
78         }
79
80         /**
81          * Sets the helpText.
82          * @param helpText The helpText to set
83          */
84         public void setHelpText(String helpText) {
85                 WayfConfig.helpText = helpText;
86         }
87
88         /**
89          * Gets the supportContact.
90          * @return Returns a String
91          */
92         public static String getSupportContact() {
93                 return supportContact;
94         }
95
96         /**
97          * Sets the supportContact.
98          * @param supportContact The supportContact to set
99          */
100         public void setSupportContact(String supportContact) {
101                 WayfConfig.supportContact = supportContact;
102         }
103
104         /**
105          * Gets the logoLocation.
106          * @return Returns a String
107          */
108         public static String getLogoLocation() {
109                 return logoLocation;
110         }
111
112         /**
113          * Sets the logoLocation.
114          * @param logoLocation The logoLocation to set
115          */
116         public void setLogoLocation(String logoLocation) {
117                 WayfConfig.logoLocation = logoLocation;
118         }
119
120         /**
121          * Gets the location.
122          * @return Returns a String
123          */
124         public static String getLocation() {
125                 return location;
126         }
127
128         /**
129          * Sets the location.
130          * @param location The location to set
131          */
132         public void setLocation(String location) {
133                 WayfConfig.location = location;
134         }
135
136         /**
137          * Determines if a particular string token should be used for matching when a user searches for origins.
138          * @param str The string to lookup
139          */
140         public static boolean isIgnoredForMatch(String str) {
141
142                 if (ignoredForMatch.contains(str.toLowerCase())) {
143                         return true;
144                 } else {
145                         return false;
146                 }
147         }
148
149         /**
150          * Sets the tokens that should be ignored when a user searches for an origin site.
151          * @param s The ignored tokens are passed as a single string, each separated by whitespace
152          */
153         public void addIgnoredForMatch(String s) {
154
155                 ignoredForMatch.add(s.toLowerCase());
156         }
157
158         /**
159         * Gets the cache.
160         * @return Returns a String
161         */
162         public static String getCache() {
163                 return cache;
164         }
165
166         /**
167          * Sets the cache.
168          * @param cache The cache to set
169          */
170         public void setCache(String cache) {
171                 if (cache.toUpperCase().equals("NONE")
172                         || cache.toUpperCase().equals("SESSION")
173                         || cache.toUpperCase().equals("COOKIES")) {
174                         WayfConfig.cache = cache.toUpperCase();
175                 } else {
176                         log.warn(
177                                 "Cache type :" + cache + ": not recognized, using default.");
178                 }
179         }
180
181 }