1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 package org.mycore.mods.merger;
20
21 import org.jdom2.Element;
22 import org.mycore.common.MCRConstants;
23
24
25
26
27
28
29 public class MCRExtentMerger extends MCRMerger {
30
31 public void setElement(Element element) {
32 super.setElement(element);
33 }
34
35 @Override
36 public boolean isProbablySameAs(MCRMerger other) {
37 return (other instanceof MCRExtentMerger);
38 }
39
40 private boolean hasStartPage() {
41 return element.getChild("start", MCRConstants.MODS_NAMESPACE) != null;
42 }
43
44 @Override
45 public void mergeFrom(MCRMerger other) {
46 if (element.getParentElement().getName().equals("physicalDescription")) {
47 super.mergeFrom(other);
48 } else {
49 if ((!this.hasStartPage()) && ((MCRExtentMerger) other).hasStartPage()) {
50 mergeAttributes(other);
51 this.element.setContent(other.element.cloneContent());
52 }
53 }
54 }
55 }