1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21 package org.opencastproject.assetmanager.api.fn;
22
23 import org.opencastproject.assetmanager.api.Property;
24 import org.opencastproject.assetmanager.api.Snapshot;
25 import org.opencastproject.assetmanager.api.query.ARecord;
26
27 import java.util.LinkedHashSet;
28 import java.util.List;
29 import java.util.stream.Collectors;
30
31
32
33
34 public final class ARecords {
35 public static String getMediaPackageId(LinkedHashSet<ARecord> records) {
36 return records.stream()
37 .map(r -> r.getMediaPackageId())
38 .findFirst()
39 .get();
40
41 }
42
43 public static List<Property> getProperties(LinkedHashSet<ARecord> records) {
44 return records.stream()
45 .map(r -> r.getProperties())
46 .flatMap(List::stream)
47 .collect(Collectors.toList());
48 };
49
50 public static boolean hasProperties(ARecord record) {
51 return record.getProperties().isEmpty();
52 }
53
54
55
56
57
58
59 public static List<Snapshot> getSnapshot(LinkedHashSet<ARecord> records) {
60 return records.stream()
61 .map(r -> r.getSnapshot())
62 .filter(s -> s.isPresent())
63 .map(s -> s.get())
64 .collect(Collectors.toList());
65
66 }
67
68 private ARecords() {
69 }
70 }