/// <summary>
        /// Creates an instance of StreamingEndpointAccessControlData class from an instance of StreamingEndpointAccessControl.
        /// </summary>
        /// <param name="accessControl">streaming endpoint access control to copy into newly created instance.</param>
        public StreamingEndpointAccessControlData(StreamingEndpointAccessControl accessControl)
        {
            if (accessControl == null)
            {
                throw new ArgumentNullException("accessControl");
            }

            if (accessControl.AkamaiSignatureHeaderAuthenticationKeyList != null)
            {
                Akamai = new AkamaiAccessControlData
                {
                    AkamaiSignatureHeaderAuthenticationKeyList =
                        accessControl.AkamaiSignatureHeaderAuthenticationKeyList.ToList()

                };
            }

            if (accessControl.IPAllowList != null)
            {
                IP = new IPAccessControlData
                {
                    Allow = accessControl.IPAllowList
                        .Select(a => a == null ? null : new IPRangeData(a))
                        .ToList()
                };
            }
        }
        /// <summary>
        /// Creates an instance of StreamingEndpointAccessControlData class from an instance of StreamingEndpointAccessControl.
        /// </summary>
        /// <param name="accessControl">streaming endpoint access control to copy into newly created instance.</param>
        public StreamingEndpointAccessControlData(StreamingEndpointAccessControl accessControl)
        {
            if (accessControl == null)
            {
                throw new ArgumentNullException("accessControl");
            }

            if (accessControl.AkamaiSignatureHeaderAuthenticationKeyList != null)
            {
                Akamai = new AkamaiAccessControlData
                {
                    AkamaiSignatureHeaderAuthenticationKeyList =
                        accessControl.AkamaiSignatureHeaderAuthenticationKeyList.ToList()
                };
            }

            if (accessControl.IPAllowList != null)
            {
                IP = new IPAccessControlData
                {
                    Allow = accessControl.IPAllowList
                            .Select(a => a == null ? null : new IPRangeData(a))
                            .ToList()
                };
            }
        }