1
2
3
4
5
6 package dev.metaschema.core.mdm.impl;
7
8 import java.util.Collection;
9 import java.util.List;
10
11 import dev.metaschema.core.mdm.IDMFlagNodeItem;
12 import dev.metaschema.core.metapath.item.atomic.IAnyAtomicItem;
13 import dev.metaschema.core.metapath.item.node.IModelNodeItem;
14 import dev.metaschema.core.qname.IEnhancedQName;
15 import dev.metaschema.core.util.CollectionUtil;
16 import edu.umd.cs.findbugs.annotations.NonNull;
17
18
19
20
21
22 public abstract class AbstractDMFlagNodeItem
23 extends AbstractDMNodeItem
24 implements IDMFlagNodeItem {
25 @NonNull
26 private IAnyAtomicItem value;
27
28
29
30
31
32
33
34 protected AbstractDMFlagNodeItem(
35 @NonNull IAnyAtomicItem value) {
36
37 this.value = value;
38 }
39
40 @Override
41 public IAnyAtomicItem toAtomicItem() {
42 return value;
43 }
44
45
46
47
48
49
50
51 public void setValue(@NonNull IAnyAtomicItem value) {
52 this.value = getValueItemType().cast(value);
53 }
54
55
56
57
58
59
60
61
62
63
64 public void setValue(@NonNull Object value) {
65 this.value = getValueItemType().newItem(value);
66 }
67
68 @Override
69 public String stringValue() {
70 return toAtomicItem().asString();
71 }
72
73 @Override
74 protected String getValueSignature() {
75 return toAtomicItem().toSignature();
76 }
77
78 @Override
79 public Collection<? extends List<? extends IModelNodeItem<?, ?>>> getModelItems() {
80
81 return CollectionUtil.emptyList();
82 }
83
84 @Override
85 public List<? extends IModelNodeItem<?, ?>> getModelItemsByName(IEnhancedQName name) {
86
87 return CollectionUtil.emptyList();
88 }
89
90 }