1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21 package org.apache.tiles.locale.impl;
22
23 import java.util.Locale;
24 import java.util.Map;
25
26 import org.apache.tiles.TilesException;
27 import org.apache.tiles.context.TilesRequestContext;
28 import org.apache.tiles.locale.LocaleResolver;
29
30 /***
31 * Default implementation of <code>LocaleResolver</code><br>
32 * It tries to take the locale from the session-scoped attribute
33 * {@link DefaultLocaleResolver#LOCALE_KEY}. If it is not found, it returns the
34 * locale included in the request.
35 *
36 * @version $Rev: 529532 $ $Date: 2007-04-17 10:58:03 +0200 (Tue, 17 Apr 2007) $
37 */
38 public class DefaultLocaleResolver implements LocaleResolver {
39
40 /***
41 * The attribute name that is used to store the current locale.
42 */
43 public static final String LOCALE_KEY = "org.apache.tiles.LOCALE";
44
45 /*** {@inheritDoc} */
46 public void init(Map<String, String> params)
47 throws TilesException {
48
49 }
50
51 /*** {@inheritDoc} */
52 public Locale resolveLocale(TilesRequestContext request) {
53 Locale retValue = null;
54 Map<String, Object> session = request.getSessionScope();
55 if (session != null) {
56 retValue = (Locale) session.get(DefaultLocaleResolver.LOCALE_KEY);
57 }
58 if (retValue == null) {
59 retValue = request.getRequestLocale();
60 }
61
62 return retValue;
63 }
64 }