View Javadoc
1   package com.srv4pos.server.api.user;
2   
3   import com.srv4pos.server.api.auth.UserRole;
4   import com.srv4pos.server.api.infrastructure.Constraints;
5   import com.srv4pos.server.api.infrastructure.Info;
6   import org.springframework.roo.addon.javabean.RooJavaBean;
7   import org.springframework.roo.addon.json.RooJson;
8   import org.springframework.roo.addon.tostring.RooToString;
9   
10  import javax.validation.constraints.NotNull;
11  import javax.validation.constraints.Pattern;
12  import javax.validation.constraints.Size;
13  
14  /**
15   * Information about the user which has authenticated and authorized.
16   */
17  @RooJavaBean
18  @RooToString
19  @RooJson(deepSerialize = true)
20  public class UserInfo implements Info {
21  
22      /**
23       * True if entity was deleted. Only possible if return diff.
24       */
25      @NotNull
26      private boolean deleted = Boolean.FALSE;
27  
28      @NotNull
29      @Size(max = 50, min = 1)
30      private String username;
31  
32      @NotNull
33      @Size(max = 50, min = 6)
34      @Pattern(regexp = Constraints.EMAIL_REGEX)
35      private String email;
36  
37      @NotNull
38      private UserRole role;
39  
40      /**
41       * If {@link #role} == ROLE_HYPER_ADMIN or ROLE_REGULAR_USER, then null.<br>
42       * If {@link #role} == ROLE_SOFTWARE_VENDOR_ADMIN, then not null.
43       */
44      private Long softwareVendor;
45  }