private void HandleOutput(GetRemotePeeringConnectionRequest request) { var waiterConfig = new WaiterConfiguration { MaxAttempts = MaxWaitAttempts, GetNextDelayInSeconds = (_) => WaitIntervalSeconds }; switch (ParameterSetName) { case PeeringStatusParamSet: response = client.Waiters.ForRemotePeeringConnection(request, waiterConfig, WaitForPeeringStatus).Execute(); break; case LifecycleStateParamSet: response = client.Waiters.ForRemotePeeringConnection(request, waiterConfig, WaitForLifecycleState).Execute(); break; case Default: response = client.GetRemotePeeringConnection(request).GetAwaiter().GetResult(); break; } WriteOutput(response, response.RemotePeeringConnection); }
protected override void ProcessRecord() { base.ProcessRecord(); GetRemotePeeringConnectionRequest request; try { request = new GetRemotePeeringConnectionRequest { RemotePeeringConnectionId = RemotePeeringConnectionId }; HandleOutput(request); FinishProcessing(response); } catch (Exception ex) { TerminatingErrorDuringExecution(ex); } }