1 package com.srv4pos.server.api.activation;
2 import com.srv4pos.server.api.infrastructure.Info;
3 import org.springframework.roo.addon.javabean.RooJavaBean;
4 import org.springframework.roo.addon.json.RooJson;
5 import org.springframework.roo.addon.tostring.RooToString;
6
7 import javax.validation.constraints.NotNull;
8 import javax.validation.constraints.Size;
9 import java.util.Date;
10 import java.util.HashMap;
11 import java.util.Map;
12
13
14
15
16
17
18 @RooJavaBean
19 @RooToString
20 @RooJson(deepSerialize = true)
21 public class InstallationInfo implements Info {
22
23
24
25
26 @NotNull
27 @Size(max = 17, min = 1)
28 private String deviceId;
29
30
31
32
33
34 @NotNull
35 private Map<String, String> buildInfo = new HashMap<String, String>();
36
37
38
39
40
41 @NotNull
42 @Size(min = 1, max = 64)
43 private String applicationPackage;
44
45
46
47
48 @Size(min = 1)
49 private String gcmRegistrationId;
50
51
52
53
54 @Size(max = 25)
55 private String productionNumber;
56
57
58
59
60 private Date registrationDate;
61
62
63
64
65 private Date gcmUnsubscribeDate;
66
67 public InstallationCreationInfo toInstallationCreationInfo() {
68 InstallationCreationInfo installationCreationInfo = new InstallationCreationInfo();
69
70 installationCreationInfo.setGcmRegistrationId(gcmRegistrationId);
71 installationCreationInfo.setBuildInfo(buildInfo);
72 installationCreationInfo.setDeviceId(deviceId);
73
74 return installationCreationInfo;
75 }
76 }