/// <summary>
        /// Gets the status of an import/export operation
        /// </summary>
        /// <param name="operationStatusLink">The operation status link</param>
        /// <returns>Operation status response</returns>
        public AzureSqlDatabaseImportExportStatusModel GetStatus(string operationStatusLink)
        {
            HttpResponseMessage         rawHttpResponse;
            ImportExportOperationResult response = Communicator.GetOperationStatus(operationStatusLink, out rawHttpResponse);

            OperationStatus?operationStatus = GetOperationStatusFromHttpStatus(rawHttpResponse.StatusCode);

            AzureSqlDatabaseImportExportStatusModel status = new AzureSqlDatabaseImportExportStatusModel()
            {
                ErrorMessage                 = response.ErrorMessage,
                LastModifiedTime             = response.LastModifiedTime,
                QueuedTime                   = response.QueuedTime,
                StatusMessage                = response.Status, // in spite of the name, the field called "Status" is the correct one to put into the "StatusMessage" field
                Status                       = operationStatus.HasValue ? operationStatus.Value.ToString() : "",
                RequestType                  = response.RequestType,
                PrivateEndpointRequestStatus = response.PrivateEndpointConnections?.Select(pec => new PrivateEndpointRequestStatus()
                {
                    PrivateEndpointConnectionName = pec.PrivateEndpointConnectionName,
                    PrivateLinkServiceId          = pec.PrivateLinkServiceId,
                    Status = pec.Status
                }).ToArray(),
                OperationStatusLink = operationStatusLink
            };

            return(status);
        }
        /// <summary>
        /// Executes the cmdlet
        /// </summary>
        public override void ExecuteCmdlet()
        {
            ModelAdapter = InitModelAdapter(DefaultProfile.Context.Subscription);
            AzureSqlDatabaseImportExportStatusModel model = GetEntity();

            if (model != null)
            {
                this.WriteObject(model, true);
            }
        }
        /// <summary>
        /// Executes the cmdlet
        /// </summary>
        public override void ExecuteCmdlet()
        {
            ModelAdapter = InitModelAdapter();
            AzureSqlDatabaseImportExportStatusModel model = GetEntity();

            if (model != null)
            {
                this.WriteObject(model, true);
            }
        }
        /// <summary>
        /// Gets the status of an import/export operation
        /// </summary>
        /// <param name="operationStatusLink">The operation status link</param>
        /// <returns>Operation status response</returns>
        public AzureSqlDatabaseImportExportStatusModel GetStatus(string operationStatusLink)
        {
            ImportExportOperationStatusResponse resposne = Communicator.GetStatus(operationStatusLink, Util.GenerateTracingId());

            AzureSqlDatabaseImportExportStatusModel status = new AzureSqlDatabaseImportExportStatusModel()
            {
                ErrorMessage        = resposne.ErrorMessage,
                LastModifiedTime    = resposne.LastModifiedTime,
                QueuedTime          = resposne.QueuedTime,
                StatusMessage       = resposne.StatusMessage,
                Status              = resposne.Status.ToString(),
                OperationStatusLink = operationStatusLink
            };

            return(status);
        }
        /// <summary>
        /// Gets the status of an import/export operation
        /// </summary>
        /// <param name="operationStatusLink">The operation status link</param>
        /// <returns>Operation status response</returns>
        public AzureSqlDatabaseImportExportStatusModel GetStatus(string operationStatusLink)
        {
            ImportExportOperationResult response = Communicator.GetOperationStatus(operationStatusLink);

            AzureSqlDatabaseImportExportStatusModel status = new AzureSqlDatabaseImportExportStatusModel()
            {
                ErrorMessage                 = response.ErrorMessage,
                LastModifiedTime             = response.LastModifiedTime,
                QueuedTime                   = response.QueuedTime,
                Status                       = response.Status,
                RequestType                  = response.RequestType,
                PrivateEndpointRequestStatus = response.PrivateEndpointConnections?.Select(pec => new PrivateEndpointRequestStatus()
                {
                    PrivateEndpointConnectionName = pec.PrivateEndpointConnectionName,
                    PrivateLinkServiceId          = pec.PrivateLinkServiceId,
                    Status = pec.Status
                }).ToArray(),
                OperationStatusLink = operationStatusLink
            };

            return(status);
        }