/// <summary> /// The process record method. /// </summary> protected override void ProcessRecord() { ResponseType response = null; base.ProcessRecord(); try { var request = new CreateSnapshotPreviewServerType { snapshotId = SnapshotId.ToString(), serverName = Name, serverDescription = Description, targetClusterId = ClusterId, serverStarted = IsStarted, nicsConnected = NicsConnected }; response = Connection.ApiClient.Snapshot.CreateSnapshotPreviewServer(request).Result; } catch (AggregateException ae) { ae.Handle( e => { if (e is ComputeApiException) { WriteError(new ErrorRecord(e, "-2", ErrorCategory.InvalidOperation, Connection)); } else { // if (e is HttpRequestException) ThrowTerminatingError(new ErrorRecord(e, "-1", ErrorCategory.ConnectionError, Connection)); } return(true); }); } WriteObject(response); }
/// <summary>The Create Snapshot Preview Server.</summary> /// <param name="request">The Create Snapshot Preview Server Request</param> /// <returns>The <see cref="Task"/>.</returns> public async Task <ResponseType> CreateSnapshotPreviewServer(CreateSnapshotPreviewServerType request) { return(await _apiClient.PostAsync <CreateSnapshotPreviewServerType, ResponseType>(ApiUris.CreateSnapShotPreviewServer(_apiClient.OrganizationId), request)); }