1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 package org.apache.syncope.common.rest.api.beans;
20
21 import java.io.Serializable;
22 import java.time.OffsetDateTime;
23 import java.util.Optional;
24 import javax.validation.constraints.NotNull;
25 import javax.ws.rs.DefaultValue;
26 import javax.ws.rs.PathParam;
27 import javax.ws.rs.QueryParam;
28
29 public class ExecSpecs implements Serializable {
30
31 private static final long serialVersionUID = 3846547401120638351L;
32
33 public static class Builder {
34
35 private final ExecSpecs instance = new ExecSpecs();
36
37 public Builder key(final String key) {
38 instance.setKey(key);
39 return this;
40 }
41
42 public Builder startAt(final OffsetDateTime startAt) {
43 instance.setStartAt(startAt);
44 return this;
45 }
46
47 public Builder dryRun(final boolean dryRun) {
48 instance.setDryRun(dryRun);
49 return this;
50 }
51
52 public ExecSpecs build() {
53 return instance;
54 }
55 }
56
57 private String key;
58
59 private OffsetDateTime startAt;
60
61 private Boolean dryRun;
62
63 public String getKey() {
64 return key;
65 }
66
67 @NotNull
68 @PathParam("key")
69 public void setKey(final String key) {
70 this.key = key;
71 }
72
73 public OffsetDateTime getStartAt() {
74 return startAt;
75 }
76
77 @QueryParam("startAt")
78 public void setStartAt(final OffsetDateTime startAt) {
79 this.startAt = startAt;
80 }
81
82 public Boolean getDryRun() {
83 return Optional.ofNullable(dryRun).orElse(Boolean.FALSE);
84 }
85
86 @QueryParam("dryRun")
87 @DefaultValue("false")
88 public void setDryRun(final Boolean dryRun) {
89 this.dryRun = dryRun;
90 }
91 }