1
2
3
4
5
6 package gov.nist.secauto.metaschema.databind.codegen.config;
7
8 import java.util.LinkedList;
9 import java.util.List;
10
11 import edu.umd.cs.findbugs.annotations.NonNull;
12 import edu.umd.cs.findbugs.annotations.Nullable;
13
14 public class DefaultDefinitionBindingConfiguration implements IMutableDefinitionBindingConfiguration {
15 @Nullable
16 private String className;
17 @Nullable
18 private String baseClassName;
19 @NonNull
20 private final List<String> interfacesToImplement = new LinkedList<>();
21
22
23
24
25 public DefaultDefinitionBindingConfiguration() {
26
27 }
28
29
30
31
32
33
34
35
36 public DefaultDefinitionBindingConfiguration(@NonNull IDefinitionBindingConfiguration config) {
37 this.className = config.getClassName();
38 this.baseClassName = config.getQualifiedBaseClassName();
39 this.interfacesToImplement.addAll(config.getInterfacesToImplement());
40 }
41
42 @Override
43 public String getClassName() {
44 return className;
45 }
46
47 @Override
48 public void setClassName(String name) {
49 this.className = name;
50 }
51
52 @Override
53 public String getQualifiedBaseClassName() {
54 return baseClassName;
55 }
56
57 @Override
58 public void setQualifiedBaseClassName(String name) {
59 this.baseClassName = name;
60 }
61
62 @Override
63 public List<String> getInterfacesToImplement() {
64 return interfacesToImplement;
65 }
66
67 @Override
68 public void addInterfaceToImplement(String interfaceName) {
69 this.interfacesToImplement.add(interfaceName);
70 }
71 }