protected override void ExecuteCmdlet() { var groupId = Team.GetGroupId(HttpClient, AccessToken); if (groupId != null) { var channelId = Channel.GetId(HttpClient, AccessToken, groupId); if (channelId != null) { var tab = Identity.GetTab(HttpClient, AccessToken, groupId, channelId); if (tab != null) { if (Force || ShouldContinue("Removing the tab will remove the settings of this tab too.", Properties.Resources.Confirm)) { var response = TeamsUtility.DeleteTabAsync(AccessToken, HttpClient, groupId, channelId, tab.Id).GetAwaiter().GetResult(); if (!response.IsSuccessStatusCode) { if (GraphHelper.TryGetGraphException(response, out GraphException ex)) { if (ex.Error != null) { throw new PSInvalidOperationException(ex.Error.Message); } } else { throw new PSInvalidOperationException("Tab remove failed"); } } } } else { throw new PSArgumentException("Tab not found"); } } else { throw new PSArgumentException("Channel not found"); } } else { throw new PSArgumentException("Team not found", nameof(Team)); } }