1 package com.atlassian.sal.testresources.usersettings;
2
3 import com.atlassian.fugue.Option;
4 import com.atlassian.sal.api.usersettings.UserSettings;
5
6 import java.util.Map;
7 import java.util.Set;
8
9 public class MockUserSettings implements UserSettings
10 {
11 private final Map<String, Object> settings;
12
13 public MockUserSettings(Map<String, Object> settings)
14 {
15 this.settings = settings;
16 }
17
18 @Override
19 public Option<String> getString(String key)
20 {
21 if (!settings.containsKey(key))
22 {
23 return Option.none();
24 }
25
26 final Object value = settings.get(key);
27 return (value instanceof String) ? Option.some((String)value) : Option.<String>none();
28
29 }
30
31 @Override
32 public Option<Boolean> getBoolean(String key)
33 {
34 if (!settings.containsKey(key))
35 {
36 return Option.none();
37 }
38
39 final Object value = settings.get(key);
40 return (value instanceof Boolean) ? Option.some((Boolean)value) : Option.<Boolean>none();
41 }
42
43 @Override
44 public Option<Long> getLong(String key)
45 {
46 if (!settings.containsKey(key))
47 {
48 return Option.none();
49 }
50
51 final Object value = settings.get(key);
52 return (value instanceof Long) ? Option.some((Long)value) : Option.<Long>none();
53
54 }
55
56 @Override
57 public Set<String> getKeys()
58 {
59 return settings.keySet();
60 }
61 }