1 package com.atlassian.refapp.sal.user;
2
3 import com.atlassian.sal.api.user.UserKey;
4 import com.atlassian.sal.api.user.UserProfile;
5 import com.atlassian.user.User;
6
7 import java.net.URI;
8 import java.util.TimeZone;
9
10 import static com.google.common.base.Preconditions.checkNotNull;
11
12 public class RefimplUserProfile implements UserProfile {
13 private static final URI LARGE_CHARLIE = URI.create("/charlie_lg.png");
14
15 private final String username;
16 private final String fullName;
17 private final String email;
18 private final URI profilePageUri;
19
20 public RefimplUserProfile(User user) {
21 this.username = checkNotNull(user.getName(), "username");
22 this.fullName = user.getFullName();
23 this.email = user.getEmail();
24 this.profilePageUri = URI.create("/plugins/servlet/users/" + username);
25 }
26
27 @Override
28 public UserKey getUserKey() {
29
30 return new UserKey(username);
31 }
32
33 @Override
34 public String getUsername() {
35 return username;
36 }
37
38 @Override
39 public String getFullName() {
40 return fullName;
41 }
42
43 @Override
44 public String getEmail() {
45 return email;
46 }
47
48 @Override
49 public URI getProfilePictureUri(int width, int height) {
50 if (width > 100 || height > 100) {
51 return null;
52 } else {
53 return LARGE_CHARLIE;
54 }
55 }
56
57 @Override
58 public URI getProfilePictureUri() {
59 return LARGE_CHARLIE;
60 }
61
62 @Override
63 public URI getProfilePageUri() {
64 return profilePageUri;
65 }
66
67
68 public TimeZone getTimeZone() {
69 return null;
70 }
71 }