/// <summary> /// <para>Initializes a new instance of the <see cref="MemberAddArg" /> class.</para> /// </summary> /// <param name="memberEmail">The member email</param> /// <param name="memberGivenName">Member's first name.</param> /// <param name="memberSurname">Member's last name.</param> /// <param name="memberExternalId">External ID for member.</param> /// <param name="sendWelcomeEmail">Whether to send a welcome email to the member. If /// send_welcome_email is false, no email invitation will be sent to the user. This may /// be useful for apps using single sign-on (SSO) flows for onboarding that want to /// handle announcements themselves.</param> /// <param name="role">The role</param> public MemberAddArg(string memberEmail, string memberGivenName, string memberSurname, string memberExternalId = null, bool sendWelcomeEmail = true, AdminTier role = null) { if (memberEmail == null) { throw new sys.ArgumentNullException("memberEmail"); } else if (!re.Regex.IsMatch(memberEmail, @"\A(?:^['&A-Za-z0-9._%+-]+@[A-Za-z0-9-][A-Za-z0-9.-]*.[A-Za-z]{2,15}$)\z")) { throw new sys.ArgumentOutOfRangeException("memberEmail"); } if (memberGivenName == null) { throw new sys.ArgumentNullException("memberGivenName"); } else if (memberGivenName.Length < 1 || !re.Regex.IsMatch(memberGivenName, @"\A(?:[^/:?*<>""|]*)\z")) { throw new sys.ArgumentOutOfRangeException("memberGivenName"); } if (memberSurname == null) { throw new sys.ArgumentNullException("memberSurname"); } else if (memberSurname.Length < 1 || !re.Regex.IsMatch(memberSurname, @"\A(?:[^/:?*<>""|]*)\z")) { throw new sys.ArgumentOutOfRangeException("memberSurname"); } if (memberExternalId != null && (memberExternalId.Length > 64)) { throw new sys.ArgumentOutOfRangeException("memberExternalId"); } if (role == null) { role = AdminTier.MemberOnly.Instance; } this.MemberEmail = memberEmail; this.MemberGivenName = memberGivenName; this.MemberSurname = memberSurname; this.MemberExternalId = memberExternalId; this.SendWelcomeEmail = sendWelcomeEmail; this.Role = role; }
/// <summary> /// <para>Initializes a new instance of the <see cref="TeamMemberInfo" /> class.</para> /// </summary> /// <param name="profile">Profile of a user as a member of a team.</param> /// <param name="role">The user's role in the team.</param> public TeamMemberInfo(TeamMemberProfile profile, AdminTier role) { if (profile == null) { throw new sys.ArgumentNullException("profile"); } if (role == null) { throw new sys.ArgumentNullException("role"); } this.Profile = profile; this.Role = role; }
/// <summary> /// <para>Initializes a new instance of the <see cref="MembersSetPermissionsResult" /> /// class.</para> /// </summary> /// <param name="teamMemberId">The member ID of the user to which the change was /// applied.</param> /// <param name="role">The role after the change.</param> public MembersSetPermissionsResult(string teamMemberId, AdminTier role) { if (teamMemberId == null) { throw new sys.ArgumentNullException("teamMemberId"); } if (role == null) { throw new sys.ArgumentNullException("role"); } this.TeamMemberId = teamMemberId; this.Role = role; }
/// <summary> /// <para>Initializes a new instance of the <see cref="MembersSetPermissionsArg" /> /// class.</para> /// </summary> /// <param name="user">Identity of user whose role will be set.</param> /// <param name="newRole">The new role of the member.</param> public MembersSetPermissionsArg(UserSelectorArg user, AdminTier newRole) { if (user == null) { throw new sys.ArgumentNullException("user"); } if (newRole == null) { throw new sys.ArgumentNullException("newRole"); } this.User = user; this.NewRole = newRole; }
/// <summary> /// <para>Initializes a new instance of the <see cref="MemberAddArg" /> class.</para> /// </summary> /// <param name="memberEmail">The member email</param> /// <param name="memberGivenName">Member's first name.</param> /// <param name="memberSurname">Member's last name.</param> /// <param name="memberExternalId">External ID for member.</param> /// <param name="memberPersistentId">Persistent ID for member. This field is only /// available to teams using persistent ID SAML configuration.</param> /// <param name="sendWelcomeEmail">Whether to send a welcome email to the member. If /// send_welcome_email is false, no email invitation will be sent to the user. This may /// be useful for apps using single sign-on (SSO) flows for onboarding that want to /// handle announcements themselves.</param> /// <param name="role">The role</param> /// <param name="isDirectoryRestricted">Whether a user is directory restricted.</param> public MemberAddArg(string memberEmail, string memberGivenName = null, string memberSurname = null, string memberExternalId = null, string memberPersistentId = null, bool sendWelcomeEmail = true, AdminTier role = null, bool?isDirectoryRestricted = null) { if (memberEmail == null) { throw new sys.ArgumentNullException("memberEmail"); } if (memberEmail.Length > 255) { throw new sys.ArgumentOutOfRangeException("memberEmail", "Length should be at most 255"); } if (!re.Regex.IsMatch(memberEmail, @"\A(?:^['&A-Za-z0-9._%+-]+@[A-Za-z0-9-][A-Za-z0-9.-]*.[A-Za-z]{2,15}$)\z")) { throw new sys.ArgumentOutOfRangeException("memberEmail", @"Value should match pattern '\A(?:^['&A-Za-z0-9._%+-]+@[A-Za-z0-9-][A-Za-z0-9.-]*.[A-Za-z]{2,15}$)\z'"); } if (memberGivenName != null) { if (memberGivenName.Length > 100) { throw new sys.ArgumentOutOfRangeException("memberGivenName", "Length should be at most 100"); } if (!re.Regex.IsMatch(memberGivenName, @"\A(?:[^/:?*<>""|]*)\z")) { throw new sys.ArgumentOutOfRangeException("memberGivenName", @"Value should match pattern '\A(?:[^/:?*<>""|]*)\z'"); } } if (memberSurname != null) { if (memberSurname.Length > 100) { throw new sys.ArgumentOutOfRangeException("memberSurname", "Length should be at most 100"); } if (!re.Regex.IsMatch(memberSurname, @"\A(?:[^/:?*<>""|]*)\z")) { throw new sys.ArgumentOutOfRangeException("memberSurname", @"Value should match pattern '\A(?:[^/:?*<>""|]*)\z'"); } } if (memberExternalId != null) { if (memberExternalId.Length > 64) { throw new sys.ArgumentOutOfRangeException("memberExternalId", "Length should be at most 64"); } } if (role == null) { role = global::Dropbox.Api.Team.AdminTier.MemberOnly.Instance; } this.MemberEmail = memberEmail; this.MemberGivenName = memberGivenName; this.MemberSurname = memberSurname; this.MemberExternalId = memberExternalId; this.MemberPersistentId = memberPersistentId; this.SendWelcomeEmail = sendWelcomeEmail; this.Role = role; this.IsDirectoryRestricted = isDirectoryRestricted; }