private async Task <Operation> WaitForLongRunningOperation(Guid operationId, int interavalInSec = 5, int maxTimeInSeconds = 60, CancellationToken cancellationToken = default(CancellationToken)) { OperationsHttpClient operationsClient = this.Context.Connection.GetClient <OperationsHttpClient>(); DateTime expiration = DateTime.Now.AddSeconds(maxTimeInSeconds); int checkCount = 0; while (true) { Console.WriteLine(" Checking status ({0})... ", (checkCount++)); Operation operation = await operationsClient.GetOperation(operationId, cancellationToken); if (!operation.Completed) { Console.WriteLine(" Pausing {0} seconds", interavalInSec); await Task.Delay(interavalInSec * 1000); if (DateTime.Now > expiration) { throw new Exception(String.Format("Operation did not complete in {0} seconds.", maxTimeInSeconds)); } } else { return(operation); } } }
private async Task <Operation> WaitForLongRunningOperation(Guid operationId, int interavalInSec = 5, int maxTimeInSeconds = 60, CancellationToken cancellationToken = default(CancellationToken)) { OperationsHttpClient operationsClient = RestConnection.GetClient <OperationsHttpClient>(); DateTime expiration = DateTime.Now.AddSeconds(maxTimeInSeconds); int checkCount = 0; while (true) { Logger.Log(LogLevel.Info, $" Checking status ({checkCount++})... "); Operation operation = await operationsClient.GetOperation(operationId, cancellationToken); if (!operation.Completed) { Logger.Log(LogLevel.Info, $" Pausing {interavalInSec} seconds..."); await Task.Delay(interavalInSec * 1000); if (DateTime.Now > expiration) { Logger.Log(LogLevel.Error, $"Operation did not complete in {maxTimeInSeconds} seconds."); } } else { return(operation); } } }
public OperationReference GetOperation(System.Guid Id) { VssConnection connection = new VssConnection(_uri, _credentials); OperationsHttpClient operationsHttpClient = connection.GetClient <OperationsHttpClient>(); var operationReferencee = operationsHttpClient.GetOperation(Id).Result; return(operationReferencee); }
public OperationReference GetOperation(System.Guid Id) { using (OperationsHttpClient operationsHttpClient = new OperationsHttpClient(_uri, _credentials)) { var operationReferencee = operationsHttpClient.GetOperation(Id).Result; return(operationReferencee); } }