private string BuildFollowUrl(FollowData request) { var baseUrl = $"(ActorType={(int)request.ActorType}"; if (request is FollowSiteData siteRequest) { return($"{baseUrl},ContentUri=@v)?@v='{siteRequest.ContentUri}'"); } if (request is FollowDocumentData documentRequest) { return($"{baseUrl},ContentUri=@v)?@v='{documentRequest.ContentUri}'"); } if (request is FollowPersonData personRequest) { return($"{baseUrl},AccountName=@v)?@v='{personRequest.AccountName}'"); } if (request is FollowTagData tagRequest) { return($"{baseUrl},TagGuid='{tagRequest.TagGuid}')"); } throw new ClientException(PnPCoreResources.Exception_Unsupported_FollowRequest); }
public async Task <SocialFollowResult> FollowAsync(FollowData request) { var baseUrl = $"{Uri}/Follow{BuildFollowUrl(request)}"; var result = int.Parse(await GetSingleResult(baseUrl).ConfigureAwait(false)); return((SocialFollowResult)result); }
public SocialFollowResult Follow(FollowData request) { return(FollowAsync(request).GetAwaiter().GetResult()); }
public async Task <bool> IsFollowedAsync(FollowData request) { var baseUrl = $"{Uri}/IsFollowed{BuildFollowUrl(request)}"; return(bool.Parse(await GetSingleResult(baseUrl).ConfigureAwait(false))); }
public bool IsFollowed(FollowData request) { return(IsFollowedAsync(request).GetAwaiter().GetResult()); }
public async Task StopFollowingAsync(FollowData request) { var baseUrl = $"{Uri}/StopFollowing{BuildFollowUrl(request)}"; await GetSingleResult(baseUrl).ConfigureAwait(false); }
public void StopFollowing(FollowData request) { StopFollowingAsync(request).GetAwaiter().GetResult(); }