View Javadoc
1   package com.srv4pos.server.api.customization;
2   
3   import com.srv4pos.server.api.infrastructure.Constraints;
4   import com.srv4pos.server.api.infrastructure.SyncEntityInfo;
5   import com.srv4pos.server.api.infrastructure.journal.JournalDate;
6   import com.srv4pos.server.api.validationGroups.IdentifierValidationGroup;
7   import org.springframework.roo.addon.javabean.RooJavaBean;
8   import org.springframework.roo.addon.json.RooJson;
9   import org.springframework.roo.addon.tostring.RooToString;
10  
11  import javax.validation.constraints.NotNull;
12  import javax.validation.constraints.Pattern;
13  import javax.validation.constraints.Size;
14  import java.util.Date;
15  
16  @RooJavaBean
17  @RooToString
18  @RooJson(deepSerialize = true)
19  public class CustomizationItemInfo implements SyncEntityInfo {
20  
21      /**
22       * List of fields for ordering.
23       */
24      //CHECKSTYLE:OFF Missing Javadoc comments.
25      public static enum Fields { IDENTIFIER, NAME, CUSTOMIZATION_GROUP }
26      //CHECKSTYLE:ON Missing Javadoc comments.
27  
28      private boolean deleted;
29  
30      @NotNull(groups = IdentifierValidationGroup.class)
31      @Size(max = 50, min = 1)
32      @Pattern(regexp = Constraints.WINDOWS_FILENAME_REGEX)
33      private String identifier;
34  
35      @Size(max = 50, min = 1)
36      @NotNull
37      private String name;
38  
39      /**
40       * Identifier of customization group for this item.
41       */
42      @NotNull
43      private String customizationGroup;
44  
45      @Size(max = 65535)
46      private String custom;
47  
48      @JournalDate
49      private Date modified;
50  
51      private Integer version;
52  }