@@ -13,7 +13,8 @@ namespace Dropbox.Api.Team
13
13
/// <summary>
14
14
/// <para>The member add arg object</para>
15
15
/// </summary>
16
- public class MemberAddArg
16
+ /// <seealso cref="Global::Dropbox.Api.Team.MemberAddArgBase" />
17
+ public class MemberAddArg : MemberAddArgBase
17
18
{
18
19
#pragma warning disable 108
19
20
@@ -40,74 +41,23 @@ public class MemberAddArg
40
41
/// send_welcome_email is false, no email invitation will be sent to the user. This may
41
42
/// be useful for apps using single sign-on (SSO) flows for onboarding that want to
42
43
/// handle announcements themselves.</param>
43
- /// <param name="role">The role</param>
44
44
/// <param name="isDirectoryRestricted">Whether a user is directory restricted.</param>
45
+ /// <param name="role">The role</param>
45
46
public MemberAddArg ( string memberEmail ,
46
47
string memberGivenName = null ,
47
48
string memberSurname = null ,
48
49
string memberExternalId = null ,
49
50
string memberPersistentId = null ,
50
51
bool sendWelcomeEmail = true ,
51
- AdminTier role = null ,
52
- bool ? isDirectoryRestricted = null )
52
+ bool ? isDirectoryRestricted = null ,
53
+ AdminTier role = null )
54
+ : base ( memberEmail , memberGivenName , memberSurname , memberExternalId , memberPersistentId , sendWelcomeEmail , isDirectoryRestricted )
53
55
{
54
- if ( memberEmail == null )
55
- {
56
- throw new sys . ArgumentNullException ( "memberEmail" ) ;
57
- }
58
- if ( memberEmail . Length > 255 )
59
- {
60
- throw new sys . ArgumentOutOfRangeException ( "memberEmail" , "Length should be at most 255" ) ;
61
- }
62
- if ( ! re . Regex . IsMatch ( memberEmail , @"\A(?:^['&A-Za-z0-9._%+-]+@[A-Za-z0-9-][A-Za-z0-9.-]*\.[A-Za-z]{2,15}$)\z" ) )
63
- {
64
- 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'" ) ;
65
- }
66
-
67
- if ( memberGivenName != null )
68
- {
69
- if ( memberGivenName . Length > 100 )
70
- {
71
- throw new sys . ArgumentOutOfRangeException ( "memberGivenName" , "Length should be at most 100" ) ;
72
- }
73
- if ( ! re . Regex . IsMatch ( memberGivenName , @"\A(?:[^/:?*<>""|]*)\z" ) )
74
- {
75
- throw new sys . ArgumentOutOfRangeException ( "memberGivenName" , @"Value should match pattern '\A(?:[^/:?*<>""|]*)\z'" ) ;
76
- }
77
- }
78
-
79
- if ( memberSurname != null )
80
- {
81
- if ( memberSurname . Length > 100 )
82
- {
83
- throw new sys . ArgumentOutOfRangeException ( "memberSurname" , "Length should be at most 100" ) ;
84
- }
85
- if ( ! re . Regex . IsMatch ( memberSurname , @"\A(?:[^/:?*<>""|]*)\z" ) )
86
- {
87
- throw new sys . ArgumentOutOfRangeException ( "memberSurname" , @"Value should match pattern '\A(?:[^/:?*<>""|]*)\z'" ) ;
88
- }
89
- }
90
-
91
- if ( memberExternalId != null )
92
- {
93
- if ( memberExternalId . Length > 64 )
94
- {
95
- throw new sys . ArgumentOutOfRangeException ( "memberExternalId" , "Length should be at most 64" ) ;
96
- }
97
- }
98
-
99
56
if ( role == null )
100
57
{
101
58
role = global ::Dropbox . Api . Team . AdminTier . MemberOnly . Instance ;
102
59
}
103
- this . MemberEmail = memberEmail ;
104
- this . MemberGivenName = memberGivenName ;
105
- this . MemberSurname = memberSurname ;
106
- this . MemberExternalId = memberExternalId ;
107
- this . MemberPersistentId = memberPersistentId ;
108
- this . SendWelcomeEmail = sendWelcomeEmail ;
109
60
this . Role = role ;
110
- this . IsDirectoryRestricted = isDirectoryRestricted ;
111
61
}
112
62
113
63
/// <summary>
@@ -118,54 +68,14 @@ public MemberAddArg(string memberEmail,
118
68
[ sys . ComponentModel . EditorBrowsable ( sys . ComponentModel . EditorBrowsableState . Never ) ]
119
69
public MemberAddArg ( )
120
70
{
121
- this . SendWelcomeEmail = true ;
122
71
this . Role = global ::Dropbox . Api . Team . AdminTier . MemberOnly . Instance ;
123
72
}
124
73
125
- /// <summary>
126
- /// <para>Gets the member email of the member add arg</para>
127
- /// </summary>
128
- public string MemberEmail { get ; protected set ; }
129
-
130
- /// <summary>
131
- /// <para>Member's first name.</para>
132
- /// </summary>
133
- public string MemberGivenName { get ; protected set ; }
134
-
135
- /// <summary>
136
- /// <para>Member's last name.</para>
137
- /// </summary>
138
- public string MemberSurname { get ; protected set ; }
139
-
140
- /// <summary>
141
- /// <para>External ID for member.</para>
142
- /// </summary>
143
- public string MemberExternalId { get ; protected set ; }
144
-
145
- /// <summary>
146
- /// <para>Persistent ID for member. This field is only available to teams using
147
- /// persistent ID SAML configuration.</para>
148
- /// </summary>
149
- public string MemberPersistentId { get ; protected set ; }
150
-
151
- /// <summary>
152
- /// <para>Whether to send a welcome email to the member. If send_welcome_email is
153
- /// false, no email invitation will be sent to the user. This may be useful for apps
154
- /// using single sign-on (SSO) flows for onboarding that want to handle announcements
155
- /// themselves.</para>
156
- /// </summary>
157
- public bool SendWelcomeEmail { get ; protected set ; }
158
-
159
74
/// <summary>
160
75
/// <para>Gets the role of the member add arg</para>
161
76
/// </summary>
162
77
public AdminTier Role { get ; protected set ; }
163
78
164
- /// <summary>
165
- /// <para>Whether a user is directory restricted.</para>
166
- /// </summary>
167
- public bool ? IsDirectoryRestricted { get ; protected set ; }
168
-
169
79
#region Encoder class
170
80
171
81
/// <summary>
@@ -198,11 +108,11 @@ public override void EncodeFields(MemberAddArg value, enc.IJsonWriter writer)
198
108
WriteProperty ( "member_persistent_id" , value . MemberPersistentId , writer , enc . StringEncoder . Instance ) ;
199
109
}
200
110
WriteProperty ( "send_welcome_email" , value . SendWelcomeEmail , writer , enc . BooleanEncoder . Instance ) ;
201
- WriteProperty ( "role" , value . Role , writer , global ::Dropbox . Api . Team . AdminTier . Encoder ) ;
202
111
if ( value . IsDirectoryRestricted != null )
203
112
{
204
113
WriteProperty ( "is_directory_restricted" , value . IsDirectoryRestricted . Value , writer , enc . BooleanEncoder . Instance ) ;
205
114
}
115
+ WriteProperty ( "role" , value . Role , writer , global ::Dropbox . Api . Team . AdminTier . Encoder ) ;
206
116
}
207
117
}
208
118
@@ -253,12 +163,12 @@ protected override void SetField(MemberAddArg value, string fieldName, enc.IJson
253
163
case "send_welcome_email" :
254
164
value . SendWelcomeEmail = enc . BooleanDecoder . Instance . Decode ( reader ) ;
255
165
break ;
256
- case "role" :
257
- value . Role = global ::Dropbox . Api . Team . AdminTier . Decoder . Decode ( reader ) ;
258
- break ;
259
166
case "is_directory_restricted" :
260
167
value . IsDirectoryRestricted = enc . BooleanDecoder . Instance . Decode ( reader ) ;
261
168
break ;
169
+ case "role" :
170
+ value . Role = global ::Dropbox . Api . Team . AdminTier . Decoder . Decode ( reader ) ;
171
+ break ;
262
172
default :
263
173
reader . Skip ( ) ;
264
174
break ;
0 commit comments