001/*
002 * SPDX-FileCopyrightText: none
003 * SPDX-License-Identifier: CC0-1.0
004 */
005
006package dev.metaschema.databind.codegen.config;
007
008import edu.umd.cs.findbugs.annotations.NonNull;
009import edu.umd.cs.findbugs.annotations.Nullable;
010
011/**
012 * Default implementation of {@link IMutablePropertyBindingConfiguration}.
013 */
014public class DefaultPropertyBindingConfiguration implements IMutablePropertyBindingConfiguration {
015  @Nullable
016  private String collectionClassName;
017
018  /**
019   * Constructs a new empty property binding configuration.
020   */
021  public DefaultPropertyBindingConfiguration() {
022    // empty constructor
023  }
024
025  /**
026   * Constructs a new property binding configuration by copying values from an
027   * existing configuration.
028   *
029   * @param config
030   *          the configuration to copy from
031   */
032  public DefaultPropertyBindingConfiguration(@NonNull IPropertyBindingConfiguration config) {
033    this.collectionClassName = config.getCollectionClassName();
034  }
035
036  @Override
037  @Nullable
038  public String getCollectionClassName() {
039    return collectionClassName;
040  }
041
042  @Override
043  public void setCollectionClassName(@NonNull String className) {
044    this.collectionClassName = className;
045  }
046}