View Javadoc
1   /*
2    * This file is part of the Civitas software distribution.
3    * Copyright (c) 2007-2008, Civitas project group, Cornell University.
4    * See the LICENSE file accompanying this distribution for further license
5    * and copyright information.
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  }