Skip to content

Commit afdcff4

Browse files
abuabraham-ttdRelease Workflow
andauthored
Don't update version in encrypted data (#435)
--------- Co-authored-by: Release Workflow <[email protected]>
1 parent 75fd556 commit afdcff4

17 files changed

+139
-74
lines changed

pom.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66

77
<groupId>com.uid2</groupId>
88
<artifactId>uid2-admin</artifactId>
9-
<version>5.18.50</version>
9+
<version>5.18.51-alpha-143-SNAPSHOT</version>
1010

1111
<properties>
1212
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>

src/main/java/com/uid2/admin/job/EncryptionJob/ClientKeyEncryptionJob.java

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
package com.uid2.admin.job.EncryptionJob;
22

3-
import com.uid2.admin.job.model.Job;
3+
import com.uid2.admin.job.model.EncryptedJob;
44
import com.uid2.admin.legacy.LegacyClientKey;
55
import com.uid2.admin.model.PrivateSiteDataMap;
66
import com.uid2.admin.store.MultiScopeStoreWriter;
@@ -10,15 +10,17 @@
1010

1111
import java.util.Collection;
1212

13-
public class ClientKeyEncryptionJob extends Job {
13+
public class ClientKeyEncryptionJob extends EncryptedJob {
1414
private final Collection<OperatorKey> globalOperators;
1515
private final Collection<LegacyClientKey> globalClientKeys;
1616
private final MultiScopeStoreWriter<Collection<LegacyClientKey>> multiScopeStoreWriter;
1717

1818
public ClientKeyEncryptionJob(
1919
MultiScopeStoreWriter<Collection<LegacyClientKey>> multiScopeStoreWriter,
2020
Collection<LegacyClientKey> globalClientKeys,
21-
Collection<OperatorKey> globalOperators) {
21+
Collection<OperatorKey> globalOperators,
22+
Long version) {
23+
super(version);
2224
this.globalClientKeys = globalClientKeys;
2325
this.globalOperators = globalOperators;
2426
this.multiScopeStoreWriter = multiScopeStoreWriter;
@@ -32,8 +34,8 @@ public String getId() {
3234
@Override
3335
public void execute() throws Exception {
3436
PrivateSiteDataMap<LegacyClientKey> desiredPrivateState = PrivateSiteUtil.getClientKeys(globalOperators, globalClientKeys);
35-
multiScopeStoreWriter.uploadPrivateWithEncryption(desiredPrivateState, null);
37+
multiScopeStoreWriter.uploadPrivateWithEncryption(desiredPrivateState, this.getBaseMetadata());
3638
PrivateSiteDataMap<LegacyClientKey> desiredPublicState = PublicSiteUtil.getPublicClients(globalClientKeys, globalOperators);
37-
multiScopeStoreWriter.uploadPublicWithEncryption(desiredPublicState, null);
39+
multiScopeStoreWriter.uploadPublicWithEncryption(desiredPublicState, this.getBaseMetadata());
3840
}
3941
}

src/main/java/com/uid2/admin/job/EncryptionJob/ClientSideKeypairEncryptionJob.java

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,22 +1,26 @@
11
package com.uid2.admin.job.EncryptionJob;
22

3+
import com.uid2.admin.job.model.EncryptedJob;
34
import com.uid2.admin.job.model.Job;
45
import com.uid2.admin.model.PrivateSiteDataMap;
56
import com.uid2.admin.store.MultiScopeStoreWriter;
7+
import com.uid2.admin.store.writer.KeysetKeyStoreWriter;
68
import com.uid2.admin.util.PublicSiteUtil;
79
import com.uid2.shared.auth.OperatorKey;
810
import com.uid2.shared.model.ClientSideKeypair;
11+
import io.vertx.core.json.JsonObject;
912

1013
import java.util.Collection;
1114

12-
public class ClientSideKeypairEncryptionJob extends Job {
15+
public class ClientSideKeypairEncryptionJob extends EncryptedJob {
1316
private final Collection<OperatorKey> globalOperators;
1417
private final Collection<ClientSideKeypair> globalClientSideKeypairs;
1518

1619
private final MultiScopeStoreWriter<Collection<ClientSideKeypair>> multiScopeStoreWriter;
1720

1821
public ClientSideKeypairEncryptionJob(Collection<OperatorKey> globalOperators, Collection<ClientSideKeypair> globalClientSideKeypairs,
19-
MultiScopeStoreWriter<Collection<ClientSideKeypair>> multiScopeStoreWriter) {
22+
MultiScopeStoreWriter<Collection<ClientSideKeypair>> multiScopeStoreWriter, Long version) {
23+
super(version);
2024
this.globalOperators = globalOperators;
2125
this.globalClientSideKeypairs = globalClientSideKeypairs;
2226
this.multiScopeStoreWriter = multiScopeStoreWriter;
@@ -31,6 +35,6 @@ public String getId() {
3135
public void execute() throws Exception {
3236
// Only public operators support clientside keypair
3337
PrivateSiteDataMap<ClientSideKeypair> desiredPublicState = PublicSiteUtil.getPublicClientKeypairs(globalClientSideKeypairs, globalOperators);
34-
multiScopeStoreWriter.uploadPublicWithEncryption(desiredPublicState, null);
38+
multiScopeStoreWriter.uploadPublicWithEncryption(desiredPublicState, this.getBaseMetadata());
3539
}
3640
}

src/main/java/com/uid2/admin/job/EncryptionJob/EncryptionKeyEncryptionJob.java

Lines changed: 10 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
package com.uid2.admin.job.EncryptionJob;
22

3+
import com.uid2.admin.job.model.EncryptedJob;
34
import com.uid2.admin.job.model.Job;
45
import com.uid2.admin.legacy.LegacyClientKey;
56
import com.uid2.admin.model.PrivateSiteDataMap;
@@ -10,11 +11,12 @@
1011
import com.uid2.shared.auth.EncryptionKeyAcl;
1112
import com.uid2.shared.auth.OperatorKey;
1213
import com.uid2.shared.model.EncryptionKey;
14+
import io.vertx.core.json.JsonObject;
1315

1416
import java.util.Collection;
1517
import java.util.Map;
1618

17-
public class EncryptionKeyEncryptionJob extends Job {
19+
public class EncryptionKeyEncryptionJob extends EncryptedJob {
1820
private final Collection<OperatorKey> globalOperators;
1921
private final Collection<EncryptionKey> globalEncryptionKeys;
2022
private final Collection<LegacyClientKey> globalClientKeys;
@@ -29,7 +31,9 @@ public EncryptionKeyEncryptionJob(
2931
Collection<OperatorKey> globalOperators,
3032
Map<Integer, EncryptionKeyAcl> globalAcls,
3133
Integer globalMaxKeyId,
32-
MultiScopeStoreWriter<Collection<EncryptionKey>> multiScopeStoreWriter) {
34+
MultiScopeStoreWriter<Collection<EncryptionKey>> multiScopeStoreWriter,
35+
Long version) {
36+
super(version);
3337
this.globalEncryptionKeys = globalEncryptionKeys;
3438
this.globalClientKeys = globalClientKeys;
3539
this.globalOperators = globalOperators;
@@ -45,9 +49,11 @@ public String getId() {
4549

4650
@Override
4751
public void execute() throws Exception {
52+
JsonObject extraMeta = this.getBaseMetadata();
53+
extraMeta.put("max_key_id", globalMaxKeyId);
4854
PrivateSiteDataMap<EncryptionKey> desiredPrivateState = PrivateSiteUtil.getEncryptionKeys(globalOperators, globalEncryptionKeys, globalAcls, globalClientKeys);
49-
multiScopeStoreWriter.uploadPrivateWithEncryption(desiredPrivateState, EncryptionKeyStoreWriter.maxKeyMeta(globalMaxKeyId));
55+
multiScopeStoreWriter.uploadPrivateWithEncryption(desiredPrivateState,extraMeta );
5056
PrivateSiteDataMap<EncryptionKey> desiredPublicState = PublicSiteUtil.getPublicEncryptionKeys(globalEncryptionKeys, globalOperators);
51-
multiScopeStoreWriter.uploadPublicWithEncryption(desiredPublicState, null);
57+
multiScopeStoreWriter.uploadPublicWithEncryption(desiredPublicState, extraMeta);
5258
}
5359
}

src/main/java/com/uid2/admin/job/EncryptionJob/KeyAclEncryptionJob.java

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,25 +1,28 @@
11
package com.uid2.admin.job.EncryptionJob;
22

3+
import com.uid2.admin.job.model.EncryptedJob;
34
import com.uid2.admin.job.model.Job;
45
import com.uid2.admin.store.MultiScopeStoreWriter;
56
import com.uid2.admin.util.PrivateSiteUtil;
67
import com.uid2.admin.util.PublicSiteUtil;
78
import com.uid2.shared.auth.EncryptionKeyAcl;
89
import com.uid2.shared.auth.OperatorKey;
10+
import io.vertx.core.json.JsonObject;
911

1012
import java.util.Collection;
1113
import java.util.HashMap;
1214
import java.util.Map;
1315

14-
public class KeyAclEncryptionJob extends Job {
16+
public class KeyAclEncryptionJob extends EncryptedJob {
1517
private final Collection<OperatorKey> globalOperators;
1618
private final Map<Integer, EncryptionKeyAcl> globalAcls;
1719
private final MultiScopeStoreWriter<Map<Integer, EncryptionKeyAcl>> multiScopeStoreWriter;
1820

1921
public KeyAclEncryptionJob(
2022
MultiScopeStoreWriter<Map<Integer, EncryptionKeyAcl>> multiScopeStoreWriter,
2123
Collection<OperatorKey> globalOperators,
22-
Map<Integer, EncryptionKeyAcl> globalAcls) {
24+
Map<Integer, EncryptionKeyAcl> globalAcls, Long version) {
25+
super(version);
2326
this.globalOperators = globalOperators;
2427
this.globalAcls = globalAcls;
2528
this.multiScopeStoreWriter = multiScopeStoreWriter;
@@ -33,8 +36,8 @@ public String getId() {
3336
@Override
3437
public void execute() throws Exception {
3538
HashMap<Integer, Map<Integer, EncryptionKeyAcl>> desiredPrivateState = PrivateSiteUtil.getEncryptionKeyAclsForEachSite(globalOperators, globalAcls);
36-
multiScopeStoreWriter.uploadPrivateWithEncryption(desiredPrivateState, null);
39+
multiScopeStoreWriter.uploadPrivateWithEncryption(desiredPrivateState, this.getBaseMetadata());
3740
HashMap<Integer, Map<Integer, EncryptionKeyAcl>> desiredPublicState = PublicSiteUtil.getPublicKeyAcls(globalAcls,globalOperators);
38-
multiScopeStoreWriter.uploadPublicWithEncryption(desiredPublicState, null);
41+
multiScopeStoreWriter.uploadPublicWithEncryption(desiredPublicState, this.getBaseMetadata());
3942
}
4043
}

src/main/java/com/uid2/admin/job/EncryptionJob/KeysetKeyEncryptionJob.java

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
package com.uid2.admin.job.EncryptionJob;
22

3+
import com.uid2.admin.job.model.EncryptedJob;
34
import com.uid2.admin.job.model.Job;
45
import com.uid2.admin.model.PrivateSiteDataMap;
56
import com.uid2.admin.store.MultiScopeStoreWriter;
@@ -9,11 +10,12 @@
910
import com.uid2.shared.auth.Keyset;
1011
import com.uid2.shared.auth.OperatorKey;
1112
import com.uid2.shared.model.KeysetKey;
13+
import io.vertx.core.json.JsonObject;
1214

1315
import java.util.Collection;
1416
import java.util.Map;
1517

16-
public class KeysetKeyEncryptionJob extends Job {
18+
public class KeysetKeyEncryptionJob extends EncryptedJob {
1719
private final Collection<OperatorKey> globalOperators;
1820
private final Collection<KeysetKey> globalKeysetKeys;
1921
private final Map<Integer, Keyset> globalKeysets;
@@ -25,7 +27,8 @@ public KeysetKeyEncryptionJob(Collection<OperatorKey> globalOperators,
2527
Collection<KeysetKey> globalKeysetKeys,
2628
Map<Integer, Keyset> globalKeysets,
2729
Integer globalMaxKeyId,
28-
MultiScopeStoreWriter<Collection<KeysetKey>> multiScopeStoreWriter) {
30+
MultiScopeStoreWriter<Collection<KeysetKey>> multiScopeStoreWriter, Long version) {
31+
super(version);
2932
this.globalOperators = globalOperators;
3033
this.globalKeysetKeys = globalKeysetKeys;
3134
this.globalKeysets = globalKeysets;
@@ -41,8 +44,8 @@ public String getId() {
4144
@Override
4245
public void execute() throws Exception {
4346
PrivateSiteDataMap<KeysetKey> desiredPrivateState = PrivateSiteUtil.getKeysetKeys(globalOperators, globalKeysetKeys, globalKeysets);
44-
multiScopeStoreWriter.uploadPrivateWithEncryption(desiredPrivateState, KeysetKeyStoreWriter.maxKeyMeta(globalMaxKeyId));
47+
multiScopeStoreWriter.uploadPrivateWithEncryption(desiredPrivateState, this.getBaseMetadata());
4548
PrivateSiteDataMap<KeysetKey> desiredPublicState = PublicSiteUtil.getPublicKeysetKeys(globalKeysetKeys, globalOperators);
46-
multiScopeStoreWriter.uploadPublicWithEncryption(desiredPublicState, null);
49+
multiScopeStoreWriter.uploadPublicWithEncryption(desiredPublicState, this.getBaseMetadata());
4750
}
4851
}

src/main/java/com/uid2/admin/job/EncryptionJob/SiteEncryptionJob.java

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,23 +1,26 @@
11
package com.uid2.admin.job.EncryptionJob;
22

3+
import com.uid2.admin.job.model.EncryptedJob;
34
import com.uid2.admin.job.model.Job;
45
import com.uid2.admin.model.PrivateSiteDataMap;
56
import com.uid2.admin.store.MultiScopeStoreWriter;
67
import com.uid2.admin.util.PrivateSiteUtil;
78
import com.uid2.admin.util.PublicSiteUtil;
89
import com.uid2.shared.auth.OperatorKey;
910
import com.uid2.shared.model.Site;
11+
import io.vertx.core.json.JsonObject;
1012

1113
import java.util.Collection;
1214

13-
public class SiteEncryptionJob extends Job {
15+
public class SiteEncryptionJob extends EncryptedJob {
1416
private final Collection<OperatorKey> globalOperators;
1517
private final Collection<Site> globalSites;
1618
private final MultiScopeStoreWriter<Collection<Site>> multiScopeStoreWriter;
1719

1820
public SiteEncryptionJob(
1921
MultiScopeStoreWriter<Collection<Site>> multiScopeStoreWriter, Collection<Site> globalSites,
20-
Collection<OperatorKey> globalOperators) {
22+
Collection<OperatorKey> globalOperators, Long version) {
23+
super(version);
2124
this.globalSites = globalSites;
2225
this.globalOperators = globalOperators;
2326
this.multiScopeStoreWriter = multiScopeStoreWriter;
@@ -31,8 +34,8 @@ public String getId() {
3134
@Override
3235
public void execute() throws Exception {
3336
PrivateSiteDataMap<Site> desiredPrivateState = PrivateSiteUtil.getSites(globalSites, globalOperators);
34-
multiScopeStoreWriter.uploadPrivateWithEncryption(desiredPrivateState, null);
37+
multiScopeStoreWriter.uploadPrivateWithEncryption(desiredPrivateState, this.getBaseMetadata());
3538
PrivateSiteDataMap<Site> desiredPublicState = PublicSiteUtil.getPublicSites(globalSites, globalOperators);
36-
multiScopeStoreWriter.uploadPublicWithEncryption(desiredPublicState, null);
39+
multiScopeStoreWriter.uploadPublicWithEncryption(desiredPublicState, this.getBaseMetadata());
3740
}
3841
}

src/main/java/com/uid2/admin/job/EncryptionJob/SiteKeysetEncryptionJob.java

Lines changed: 8 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,26 +1,29 @@
11
package com.uid2.admin.job.EncryptionJob;
22

3+
import com.uid2.admin.job.model.EncryptedJob;
34
import com.uid2.admin.job.model.Job;
45
import com.uid2.admin.store.MultiScopeStoreWriter;
6+
import com.uid2.admin.store.writer.KeysetKeyStoreWriter;
57
import com.uid2.admin.util.PrivateSiteUtil;
68
import com.uid2.admin.util.PublicSiteUtil;
79
import com.uid2.shared.auth.Keyset;
810
import com.uid2.shared.auth.OperatorKey;
11+
import io.vertx.core.json.JsonObject;
912

1013
import java.util.Collection;
1114
import java.util.HashMap;
1215
import java.util.Map;
1316

14-
public class SiteKeysetEncryptionJob extends Job{
17+
public class SiteKeysetEncryptionJob extends EncryptedJob {
1518

1619
private final Collection<OperatorKey> globalOperators;
1720
private final Map<Integer, Keyset> globalKeysets;
1821
private final MultiScopeStoreWriter<Map<Integer, Keyset>> multiScopeStoreWriter;
19-
2022
public SiteKeysetEncryptionJob(
2123
MultiScopeStoreWriter<Map<Integer, Keyset>> multiScopeStoreWriter,
2224
Collection<OperatorKey> globalOperators,
23-
Map<Integer, Keyset> globalKeysets) {
25+
Map<Integer, Keyset> globalKeysets , Long version) {
26+
super(version);
2427
this.globalOperators = globalOperators;
2528
this.globalKeysets = globalKeysets;
2629
this.multiScopeStoreWriter = multiScopeStoreWriter;
@@ -34,9 +37,9 @@ public String getId() {
3437
@Override
3538
public void execute() throws Exception {
3639
HashMap<Integer, Map<Integer, Keyset>> desiredPrivateState = PrivateSiteUtil.getKeysetForEachSite(globalOperators, globalKeysets);
37-
multiScopeStoreWriter.uploadPrivateWithEncryption(desiredPrivateState, null);
40+
multiScopeStoreWriter.uploadPrivateWithEncryption(desiredPrivateState, this.getBaseMetadata());
3841
HashMap<Integer, Map<Integer, Keyset>> desiredPublicState = PublicSiteUtil.getPublicKeysets(globalKeysets,globalOperators);
39-
multiScopeStoreWriter.uploadPublicWithEncryption(desiredPublicState, null);
42+
multiScopeStoreWriter.uploadPublicWithEncryption(desiredPublicState, this.getBaseMetadata());
4043
}
4144
}
4245

src/main/java/com/uid2/admin/job/jobsync/EncryptedFilesSyncJob.java

Lines changed: 9 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -15,15 +15,13 @@
1515
import com.uid2.shared.auth.OperatorKey;
1616
import com.uid2.shared.auth.RotatingOperatorKeyProvider;
1717
import com.uid2.shared.cloud.CloudUtils;
18-
import com.uid2.shared.cloud.ICloudStorage;
1918
import com.uid2.shared.cloud.TaggableCloudStorage;
2019
import com.uid2.shared.model.ClientSideKeypair;
2120
import com.uid2.shared.model.EncryptionKey;
2221
import com.uid2.shared.model.KeysetKey;
2322
import com.uid2.shared.model.Site;
2423
import com.uid2.shared.store.CloudPath;
2524
import com.uid2.admin.legacy.LegacyClientKey;
26-
import com.uid2.shared.store.EncryptedRotatingSaltProvider;
2725
import com.uid2.shared.store.RotatingSaltProvider;
2826
import com.uid2.shared.store.reader.RotatingCloudEncryptionKeyProvider;
2927
import com.uid2.shared.store.scope.GlobalScope;
@@ -184,26 +182,27 @@ public void execute() throws Exception {
184182
clientSideKeypairStoreFactory,
185183
MultiScopeStoreWriter::areCollectionsEqual);
186184

187-
SiteEncryptionJob siteEncryptionSyncJob = new SiteEncryptionJob(siteWriter, globalSites, globalOperators);
188-
ClientKeyEncryptionJob clientEncryptionSyncJob = new ClientKeyEncryptionJob(clientWriter, globalClients, globalOperators);
185+
SiteEncryptionJob siteEncryptionSyncJob = new SiteEncryptionJob(siteWriter, globalSites, globalOperators, siteStoreFactory.getGlobalReader().getMetadata().getLong("version"));
186+
ClientKeyEncryptionJob clientEncryptionSyncJob = new ClientKeyEncryptionJob(clientWriter, globalClients, globalOperators, clientKeyStoreFactory.getGlobalReader().getMetadata().getLong("version"));
189187
EncryptionKeyEncryptionJob encryptionKeyEncryptionSyncJob = new EncryptionKeyEncryptionJob(
190188
globalEncryptionKeys,
191189
globalClients,
192190
globalOperators,
193191
globalKeyAcls,
194192
globalMaxKeyId,
195-
encryptionKeyWriter
193+
encryptionKeyWriter,
194+
encryptionKeyStoreFactory.getGlobalReader().getMetadata().getLong("version")
196195
);
197-
KeyAclEncryptionJob keyAclEncryptionSyncJob = new KeyAclEncryptionJob(keyAclWriter, globalOperators, globalKeyAcls);
196+
KeyAclEncryptionJob keyAclEncryptionSyncJob = new KeyAclEncryptionJob(keyAclWriter, globalOperators, globalKeyAcls, keyAclStoreFactory.getGlobalReader().getMetadata().getLong("version"));
198197
SaltEncryptionJob saltEncryptionJob = new SaltEncryptionJob(globalOperators, saltProvider, saltWriter);
199-
ClientSideKeypairEncryptionJob clientSideKeypairEncryptionJob = new ClientSideKeypairEncryptionJob(globalOperators, globalClientSideKeypair, clientSideKeypairWriter);
198+
ClientSideKeypairEncryptionJob clientSideKeypairEncryptionJob = new ClientSideKeypairEncryptionJob(globalOperators, globalClientSideKeypair, clientSideKeypairWriter, clientSideKeypairStoreFactory.getGlobalReader().getMetadata().getLong("version"));
200199

201200
siteEncryptionSyncJob.execute();
202201
clientEncryptionSyncJob.execute();
203202
encryptionKeyEncryptionSyncJob.execute();
204203
keyAclEncryptionSyncJob.execute();
205-
saltEncryptionJob.execute();
206204
clientSideKeypairEncryptionJob.execute();
205+
saltEncryptionJob.execute();
207206

208207
if(config.getBoolean(enableKeysetConfigProp)) {
209208
Map<Integer, Keyset> globalKeysets = keysetStoreFactory.getGlobalReader().getSnapshot().getAllKeysets();
@@ -217,9 +216,8 @@ public void execute() throws Exception {
217216
fileManager,
218217
keysetKeyStoreFactory,
219218
MultiScopeStoreWriter::areCollectionsEqual);
220-
SiteKeysetEncryptionJob keysetEncryptionSyncJob = new SiteKeysetEncryptionJob(keysetWriter, globalOperators, globalKeysets);
221-
KeysetKeyEncryptionJob keysetKeyEncryptionSyncJob = new KeysetKeyEncryptionJob(globalOperators, globalKeysetKeys, globalKeysets, globalMaxKeysetKeyId, keysetKeyWriter);
222-
219+
SiteKeysetEncryptionJob keysetEncryptionSyncJob = new SiteKeysetEncryptionJob(keysetWriter, globalOperators, globalKeysets, keysetStoreFactory.getGlobalReader().getMetadata().getLong("version"));
220+
KeysetKeyEncryptionJob keysetKeyEncryptionSyncJob = new KeysetKeyEncryptionJob(globalOperators, globalKeysetKeys, globalKeysets, globalMaxKeysetKeyId, keysetKeyWriter, keysetKeyStoreFactory.getGlobalReader().getMetadata().getLong("version"));
223221
keysetEncryptionSyncJob.execute();
224222
keysetKeyEncryptionSyncJob.execute();
225223
}
Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
package com.uid2.admin.job.model;
2+
3+
import io.vertx.core.json.JsonObject;
4+
5+
import java.time.Instant;
6+
7+
public abstract class EncryptedJob extends Job {
8+
private final JsonObject baseMeta;
9+
10+
public EncryptedJob(Long unencryptedVersion){
11+
this.baseMeta = new JsonObject();
12+
this.baseMeta.put("version", unencryptedVersion);
13+
}
14+
public JsonObject getBaseMetadata() {
15+
return this.baseMeta;
16+
}
17+
}

0 commit comments

Comments
 (0)