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}