1 package de.kaiserpfalzedv.services.dnb.marcxml.model;
2
3 import java.util.List;
4
5 import com.fasterxml.jackson.annotation.JsonInclude;
6
7 import edu.umd.cs.findbugs.annotations.SuppressFBWarnings;
8 import jakarta.xml.bind.annotation.XmlAccessType;
9 import jakarta.xml.bind.annotation.XmlAccessorType;
10 import jakarta.xml.bind.annotation.XmlElement;
11 import jakarta.xml.bind.annotation.XmlElementWrapper;
12 import jakarta.xml.bind.annotation.XmlRootElement;
13 import lombok.AllArgsConstructor;
14 import lombok.EqualsAndHashCode;
15 import lombok.Getter;
16 import lombok.NoArgsConstructor;
17 import lombok.Setter;
18 import lombok.ToString;
19 import lombok.experimental.SuperBuilder;
20 import lombok.extern.jackson.Jacksonized;
21
22
23
24
25
26
27
28 @SuppressFBWarnings(value = {"EI_EXPOSE_REP","EI_EXPOSE_REP2"}, justification = "lombok provided @Getter are created")
29 @Jacksonized
30 @SuperBuilder(toBuilder = true)
31 @AllArgsConstructor
32 @NoArgsConstructor
33 @Getter
34 @Setter
35 @ToString
36 @EqualsAndHashCode(onlyExplicitlyIncluded = true)
37 @JsonInclude(JsonInclude.Include.NON_ABSENT)
38 @XmlRootElement(name = "searchRetrieveResponse", namespace = "http://www.loc.gov/zing/srw/")
39 @XmlAccessorType(XmlAccessType.FIELD)
40 public class SearchRetrieveResponse {
41 @XmlElement
42 private String version;
43 @XmlElement
44 private int numberOfRecords;
45
46 @XmlElementWrapper(name = "records")
47 @XmlElement(name = "record")
48 List<Record> records;
49
50 @XmlElement
51 SearchRetrieveRequest echoedSearchRetrieveRequest;
52 }