1
2
3
4
5
6
7 package civitas.common.election;
8
9 import java.math.BigInteger;
10
11 import civitas.common.ballotdesign.BallotDesign;
12 import jakarta.xml.bind.annotation.XmlRootElement;
13 import lombok.Data;
14 import lombok.NoArgsConstructor;
15 import lombok.NonNull;
16 import lombok.RequiredArgsConstructor;
17
18 @Data
19 @NoArgsConstructor
20 @RequiredArgsConstructor
21 @XmlRootElement(name = "electiondetails")
22 public class ElectionDetails {
23 @NonNull String electionID;
24
25 @NonNull String supervisorPubkey;
26
27 @NonNull String registrarPubKey;
28
29 @NonNull String name;
30
31 @NonNull String description;
32
33 @NonNull String version;
34
35 @NonNull BallotDesign ballotDesign;
36
37 @NonNull String startTime;
38
39 @NonNull String stopTime;
40
41 @NonNull String finalizeTime;
42
43 @NonNull BigInteger elGamalP;
44
45 @NonNull BigInteger elGamalQ;
46
47 @NonNull BigInteger elGamalG;
48
49 @NonNull Integer sharedKeyLength;
50
51 @NonNull Integer nonceLength;
52
53 @NonNull Integer voterAnonymityParam;
54 }