View Javadoc
1   package com.srv4pos.server.api.activation;
2   
3   import com.srv4pos.server.api.infrastructure.Info;
4   import org.springframework.roo.addon.javabean.RooJavaBean;
5   import org.springframework.roo.addon.json.RooJson;
6   import org.springframework.roo.addon.tostring.RooToString;
7   
8   import javax.validation.constraints.NotNull;
9   
10  /**
11   * Serialized and signed {@link ActivationDescriptorInfo}.
12   * <p>User: Kirill, Date: 05.08.13 17:59</p>
13   */
14  @RooJavaBean
15  @RooToString
16  @RooJson(deepSerialize = true)
17  public class ActivationCodeInfo implements Info {
18      /**
19       * Version of {@link ActivationInfo}, Android device has to support all the previous versions to avoid reactivation.
20       * Also this version changes when public/private key for {@link #signature} generation is changed, or algorithm of
21       * serializing {@link #activationDescriptorInfo} is changed
22       */
23      @NotNull
24      private int activationInfoVersion = ActivationDescriptorInfo.VERSION;
25  
26      /**
27       * Json serialized {@link ActivationDescriptorInfo}.
28       */
29      @NotNull
30      private String activationDescriptorInfo;
31  
32      /**
33       * Digital signature of {@link #activationDescriptorInfo}.
34       */
35      @NotNull
36      private String signature;
37  
38      /**
39       * The file name for the public key, which should be used for {@link #signature}.
40       */
41      private String publicKeyFileName;
42  }