Terraria v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches

◆ WriteTo() [2/2]

virtual void System.Security.Claims.Claim.WriteTo ( BinaryWriter writer,
byte?[] userData )
inlineprotectedvirtual

Definition at line 234 of file Claim.cs.

235 {
236 if (writer == null)
237 {
238 throw new ArgumentNullException("writer");
239 }
240 int num = 1;
242 if (string.Equals(_type, "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name"))
243 {
244 serializationMask |= SerializationMask.NameClaimType;
245 }
246 else if (string.Equals(_type, "http://schemas.microsoft.com/ws/2008/06/identity/claims/role"))
247 {
248 serializationMask |= SerializationMask.RoleClaimType;
249 }
250 else
251 {
252 num++;
253 }
254 if (!string.Equals(_valueType, "http://www.w3.org/2001/XMLSchema#string", StringComparison.Ordinal))
255 {
256 num++;
258 }
259 if (!string.Equals(_issuer, "LOCAL AUTHORITY", StringComparison.Ordinal))
260 {
261 num++;
263 }
264 if (string.Equals(_originalIssuer, _issuer, StringComparison.Ordinal))
265 {
266 serializationMask |= SerializationMask.OriginalIssuerEqualsIssuer;
267 }
268 else if (!string.Equals(_originalIssuer, "LOCAL AUTHORITY"))
269 {
270 num++;
271 serializationMask |= SerializationMask.OriginalIssuer;
272 }
273 if (_properties != null && _properties.Count > 0)
274 {
275 num++;
276 serializationMask |= SerializationMask.HasProperties;
277 }
278 if (userData != null && userData.Length != 0)
279 {
280 num++;
282 }
283 writer.Write((int)serializationMask);
284 writer.Write(num);
285 writer.Write(_value);
286 if ((serializationMask & SerializationMask.NameClaimType) != SerializationMask.NameClaimType && (serializationMask & SerializationMask.RoleClaimType) != SerializationMask.RoleClaimType)
287 {
288 writer.Write(_type);
289 }
290 if ((serializationMask & SerializationMask.StringType) == SerializationMask.StringType)
291 {
292 writer.Write(_valueType);
293 }
295 {
296 writer.Write(_issuer);
297 }
298 if ((serializationMask & SerializationMask.OriginalIssuer) == SerializationMask.OriginalIssuer)
299 {
300 writer.Write(_originalIssuer);
301 }
302 if ((serializationMask & SerializationMask.HasProperties) == SerializationMask.HasProperties)
303 {
304 writer.Write(_properties.Count);
306 {
307 writer.Write(property.Key);
308 writer.Write(property.Value);
309 }
310 }
311 if ((serializationMask & SerializationMask.UserData) == SerializationMask.UserData)
312 {
313 writer.Write(userData.Length);
314 writer.Write(userData);
315 }
316 writer.Flush();
317 }
Dictionary< string, string > _properties
Definition Claim.cs:27
readonly string _valueType
Definition Claim.cs:35
readonly string _value
Definition Claim.cs:33
readonly string _issuer
Definition Claim.cs:23
readonly string _originalIssuer
Definition Claim.cs:25
readonly string _type
Definition Claim.cs:31

References System.Security.Claims.Claim._issuer, System.Security.Claims.Claim._originalIssuer, System.Security.Claims.Claim._properties, System.Security.Claims.Claim._type, System.Security.Claims.Claim._value, System.Security.Claims.Claim._valueType, System.Collections.Generic.Dictionary< TKey, TValue >.Count, and System.writer.