1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 package org.apache.syncope.common.lib.scim;
20
21 import com.fasterxml.jackson.annotation.JsonIgnore;
22 import java.io.Serializable;
23 import java.time.OffsetDateTime;
24 import java.util.Optional;
25 import org.apache.commons.lang3.StringUtils;
26
27 public class SCIMGeneralConf implements Serializable {
28
29 private static final long serialVersionUID = 3228349133950736647L;
30
31 private OffsetDateTime creationDate = OffsetDateTime.now();
32
33 private OffsetDateTime lastChangeDate = OffsetDateTime.now();
34
35 private int bulkMaxOperations = 1000;
36
37 private int bulkMaxPayloadSize = 1048576;
38
39 private int filterMaxResults = 200;
40
41 public OffsetDateTime getCreationDate() {
42 return creationDate;
43 }
44
45 public void setCreationDate(final OffsetDateTime creationDate) {
46 this.creationDate = creationDate;
47 }
48
49 public OffsetDateTime getLastChangeDate() {
50 return lastChangeDate;
51 }
52
53 public void setLastChangeDate(final OffsetDateTime lastChangeDate) {
54 this.lastChangeDate = lastChangeDate;
55 }
56
57 @JsonIgnore
58 public String getETagValue() {
59 OffsetDateTime etagDate = getLastChangeDate() == null
60 ? getCreationDate() : getLastChangeDate();
61 return Optional.ofNullable(etagDate).
62 map(date -> String.valueOf(date.toInstant().toEpochMilli())).
63 orElse(StringUtils.EMPTY);
64
65 }
66
67 public int getBulkMaxOperations() {
68 return bulkMaxOperations;
69 }
70
71 public void setBulkMaxOperations(final int bulkMaxOperations) {
72 this.bulkMaxOperations = bulkMaxOperations;
73 }
74
75 public int getBulkMaxPayloadSize() {
76 return bulkMaxPayloadSize;
77 }
78
79 public void setBulkMaxPayloadSize(final int bulkMaxPayloadSize) {
80 this.bulkMaxPayloadSize = bulkMaxPayloadSize;
81 }
82
83 public int getFilterMaxResults() {
84 return filterMaxResults;
85 }
86
87 public void setFilterMaxResults(final int filterMaxResults) {
88 this.filterMaxResults = filterMaxResults;
89 }
90 }