/// <summary>
        /// <para>Initializes a new instance of the <see
        /// cref="SharedFolderChangeConfidentialityDetails" /> class.</para>
        /// </summary>
        /// <param name="newValue">New confidentiality value.</param>
        /// <param name="previousValue">Previous confidentiality value. Might be missing due to
        /// historical data gap.</param>
        public SharedFolderChangeConfidentialityDetails(Confidentiality newValue,
                                                        Confidentiality previousValue = null)
        {
            if (newValue == null)
            {
                throw new sys.ArgumentNullException("newValue");
            }

            this.NewValue      = newValue;
            this.PreviousValue = previousValue;
        }
        /// <summary>
        /// <para>Initializes a new instance of the <see
        /// cref="SharedFolderChangeConfidentialityDetails" /> class.</para>
        /// </summary>
        /// <param name="targetAssetIndex">Target asset position in the Assets list.</param>
        /// <param name="originalFolderName">Original shared folder name.</param>
        /// <param name="newValue">New confidentiality value.</param>
        /// <param name="previousValue">Previous confidentiality value. Might be missing due to
        /// historical data gap.</param>
        public SharedFolderChangeConfidentialityDetails(ulong targetAssetIndex,
                                                        string originalFolderName,
                                                        Confidentiality newValue,
                                                        Confidentiality previousValue = null)
        {
            if (originalFolderName == null)
            {
                throw new sys.ArgumentNullException("originalFolderName");
            }

            if (newValue == null)
            {
                throw new sys.ArgumentNullException("newValue");
            }

            this.TargetAssetIndex   = targetAssetIndex;
            this.OriginalFolderName = originalFolderName;
            this.NewValue           = newValue;
            this.PreviousValue      = previousValue;
        }