/// <summary>
 /// Initializes a new instance of the TransferConfiguration class.
 /// </summary>
 /// <param name="transferConfigurationType">Type of the configuration
 /// for transfer. Possible values include: 'TransferAll',
 /// 'TransferUsingFilter'</param>
 /// <param name="transferFilterDetails">Map of filter type and the
 /// details to filter. This field is required only if the
 /// TransferConfigurationType is given as TransferUsingFilter.</param>
 /// <param name="transferAllDetails">Map of filter type and the details
 /// to transfer all data. This field is required only if the
 /// TransferConfigurationType is given as TransferAll</param>
 public TransferConfiguration(TransferConfigurationType transferConfigurationType, TransferConfigurationTransferFilterDetails transferFilterDetails = default(TransferConfigurationTransferFilterDetails), TransferConfigurationTransferAllDetails transferAllDetails = default(TransferConfigurationTransferAllDetails))
 {
     TransferConfigurationType = transferConfigurationType;
     TransferFilterDetails     = transferFilterDetails;
     TransferAllDetails        = transferAllDetails;
     CustomInit();
 }
        internal static string ToSerializedValue(this TransferConfigurationType value)
        {
            switch (value)
            {
            case TransferConfigurationType.TransferAll:
                return("TransferAll");

            case TransferConfigurationType.TransferUsingFilter:
                return("TransferUsingFilter");
            }
            return(null);
        }
 /// <summary>
 /// Converts the <see cref="sourceValue" /> parameter to the <see cref="destinationType" /> parameter using <see cref="formatProvider"
 /// /> and <see cref="ignoreCase" />
 /// </summary>
 /// <param name="sourceValue">the <see cref="System.Object"/> to convert from</param>
 /// <param name="destinationType">the <see cref="System.Type" /> to convert to</param>
 /// <param name="formatProvider">not used by this TypeConverter.</param>
 /// <param name="ignoreCase">when set to <c>true</c>, will ignore the case when converting.</param>
 /// <returns>
 /// an instance of <see cref="TransferConfigurationType" />, or <c>null</c> if there is no suitable conversion.
 /// </returns>
 public override object ConvertFrom(object sourceValue, global::System.Type destinationType, global::System.IFormatProvider formatProvider, bool ignoreCase) => TransferConfigurationType.CreateFrom(sourceValue);