1
2
3
4
5
6 package dev.metaschema.core.model.constraint.impl;
7
8 import dev.metaschema.core.datatype.markup.MarkupMultiline;
9 import dev.metaschema.core.metapath.IMetapathExpression;
10 import dev.metaschema.core.model.ISource;
11 import dev.metaschema.core.model.constraint.ILet;
12 import dev.metaschema.core.qname.IEnhancedQName;
13 import edu.umd.cs.findbugs.annotations.NonNull;
14 import edu.umd.cs.findbugs.annotations.Nullable;
15
16
17
18
19
20
21 @SuppressWarnings("PMD.DataClass")
22 public class DefaultLet implements ILet {
23 @NonNull
24 private final IEnhancedQName name;
25 @NonNull
26 private final IMetapathExpression valueExpression;
27 @NonNull
28 private final ISource source;
29 @Nullable
30 private final MarkupMultiline remarks;
31
32
33
34
35
36
37
38
39
40
41
42
43
44 public DefaultLet(
45 @NonNull IEnhancedQName name,
46 @NonNull IMetapathExpression metapath,
47 @NonNull ISource source,
48 @Nullable MarkupMultiline remarks) {
49 this.name = name;
50 this.valueExpression = metapath;
51 this.source = source;
52 this.remarks = remarks;
53 }
54
55 @Override
56 public IEnhancedQName getName() {
57 return name;
58 }
59
60 @Override
61 public IMetapathExpression getValueExpression() {
62 return valueExpression;
63 }
64
65 @Override
66 @NonNull
67 public ISource getSource() {
68 return source;
69 }
70
71 @Override
72 public MarkupMultiline getRemarks() {
73 return remarks;
74 }
75 }