/// <summary>
 /// Initializes a new instance of the <see cref="SharePointAccessInfo"/> class.
 /// </summary>
 /// <param name="webUrl">The web URL.</param>
 /// <param name="authenticationResult">The authentication result.</param>
 public SharePointAccessInfo(string webUrl, AuthenticationResult authenticationResult)
     : this(webUrl)
 {
     // Dont expose the refresh token on the client side!
     AccessToken = authenticationResult.AccessToken;
     ExpiresOn = authenticationResult.ExpiresOn;
     TenantId = authenticationResult.TenantId;
     UserId = authenticationResult.UserInfo.UniqueId;
     RefreshToken = authenticationResult.RefreshToken;
     UserEmail = authenticationResult.UserInfo.DisplayableId;
     User = new SharePointUser();
 }
 public FluentClauseBuilder WithEditorCalled(string title)
 {
     _editor = new FluentSharePointUserBuilder().WithTitle(title).BuildExisting();
     return this;
 }
 public FluentClauseBuilder WithEditor(SharePointUser editor)
 {
     _editor = editor;
     return this;
 }
 public FluentClauseBuilder WithAuthor(SharePointUser author)
 {
     _author = author;
     return this;
 }
 /// <summary>
 /// Initializes a new instance of the <see cref="SharePointAccessInfo"/> class.
 /// </summary>
 public SharePointAccessInfo(string webUrl)
 {
     SPTenantUrl = webUrl;
     HostWebUrl = webUrl;
     User = new SharePointUser();
 }
 public FluentGroupBuilder WithAuthorCalled(string title)
 {
     _author = new FluentSharePointUserBuilder().WithTitle(title).BuildExisting();
     return this;
 }