1   /*
2    * SPDX-FileCopyrightText: none
3    * SPDX-License-Identifier: CC0-1.0
4    */
5   
6   package dev.metaschema.databind.codegen.config;
7   
8   import edu.umd.cs.findbugs.annotations.NonNull;
9   import edu.umd.cs.findbugs.annotations.Nullable;
10  
11  /**
12   * Default implementation of {@link IMutablePropertyBindingConfiguration}.
13   */
14  public class DefaultPropertyBindingConfiguration implements IMutablePropertyBindingConfiguration {
15    @Nullable
16    private String collectionClassName;
17  
18    /**
19     * Constructs a new empty property binding configuration.
20     */
21    public DefaultPropertyBindingConfiguration() {
22      // empty constructor
23    }
24  
25    /**
26     * Constructs a new property binding configuration by copying values from an
27     * existing configuration.
28     *
29     * @param config
30     *          the configuration to copy from
31     */
32    public DefaultPropertyBindingConfiguration(@NonNull IPropertyBindingConfiguration config) {
33      this.collectionClassName = config.getCollectionClassName();
34    }
35  
36    @Override
37    @Nullable
38    public String getCollectionClassName() {
39      return collectionClassName;
40    }
41  
42    @Override
43    public void setCollectionClassName(@NonNull String className) {
44      this.collectionClassName = className;
45    }
46  }