1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 package org.openehealth.ipf.commons.ihe.xds.core.audit;
17
18 import org.openehealth.ipf.commons.audit.codes.EventOutcomeIndicator;
19 import org.openehealth.ipf.commons.ihe.xds.core.audit.XdsNonconstructiveDocumentSetRequestAuditDataset.Document;
20 import org.openehealth.ipf.commons.ihe.xds.core.audit.XdsNonconstructiveDocumentSetRequestAuditDataset.Status;
21 import org.openehealth.ipf.commons.ihe.xds.core.ebxml.ebxml30.RetrieveDocumentSetRequestType;
22
23 import java.util.Map;
24
25
26
27
28
29
30
31
32 public abstract class XdsNonconstructiveDocumentSetRequestAuditStrategy30 extends XdsAuditStrategy<XdsNonconstructiveDocumentSetRequestAuditDataset> {
33
34 public XdsNonconstructiveDocumentSetRequestAuditStrategy30(boolean serverSide) {
35 super(serverSide);
36 }
37
38
39
40
41
42
43
44 abstract public Status getDefaultDocumentStatus();
45
46 @Override
47 public XdsNonconstructiveDocumentSetRequestAuditDataset enrichAuditDatasetFromRequest(XdsNonconstructiveDocumentSetRequestAuditDataset auditDataset, Object pojo, Map<String, Object> parameters) {
48 RetrieveDocumentSetRequestType request = (RetrieveDocumentSetRequestType) pojo;
49 if (request.getDocumentRequest() != null) {
50 request.getDocumentRequest().forEach(document ->
51 auditDataset.getDocuments().add(new Document(
52 document.getDocumentUniqueId(),
53 document.getRepositoryUniqueId(),
54 document.getHomeCommunityId(),
55 null,
56 null,
57 getDefaultDocumentStatus())));
58 }
59 return auditDataset;
60 }
61
62 @Override
63 public XdsNonconstructiveDocumentSetRequestAuditDataset createAuditDataset() {
64 return new XdsNonconstructiveDocumentSetRequestAuditDataset(isServerSide());
65 }
66
67
68
69
70
71 @Override
72 public EventOutcomeIndicator getEventOutcomeIndicator(Object response) {
73 return null;
74 }
75 }