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

◆ TrySetCacheControlValues()

static bool System.Net.Http.Headers.CacheControlHeaderValue.TrySetCacheControlValues ( CacheControlHeaderValue cc,
List< NameValueHeaderValue > nameValueList )
inlinestaticprivate

Definition at line 474 of file CacheControlHeaderValue.cs.

475 {
476 foreach (NameValueHeaderValue nameValue in nameValueList)
477 {
478 bool flag = true;
479 switch (nameValue.Name.ToLowerInvariant())
480 {
481 case "no-cache":
482 flag = TrySetOptionalTokenList(nameValue, ref cc._noCache, ref cc._noCacheHeaders);
483 break;
484 case "no-store":
485 flag = TrySetTokenOnlyValue(nameValue, ref cc._noStore);
486 break;
487 case "max-age":
488 flag = TrySetTimeSpan(nameValue, ref cc._maxAge);
489 break;
490 case "max-stale":
491 flag = nameValue.Value == null || TrySetTimeSpan(nameValue, ref cc._maxStaleLimit);
492 if (flag)
493 {
494 cc._maxStale = true;
495 }
496 break;
497 case "min-fresh":
498 flag = TrySetTimeSpan(nameValue, ref cc._minFresh);
499 break;
500 case "no-transform":
501 flag = TrySetTokenOnlyValue(nameValue, ref cc._noTransform);
502 break;
503 case "only-if-cached":
504 flag = TrySetTokenOnlyValue(nameValue, ref cc._onlyIfCached);
505 break;
506 case "public":
507 flag = TrySetTokenOnlyValue(nameValue, ref cc._publicField);
508 break;
509 case "private":
510 flag = TrySetOptionalTokenList(nameValue, ref cc._privateField, ref cc._privateHeaders);
511 break;
512 case "must-revalidate":
513 flag = TrySetTokenOnlyValue(nameValue, ref cc._mustRevalidate);
514 break;
515 case "proxy-revalidate":
516 flag = TrySetTokenOnlyValue(nameValue, ref cc._proxyRevalidate);
517 break;
518 case "s-maxage":
519 flag = TrySetTimeSpan(nameValue, ref cc._sharedMaxAge);
520 break;
521 default:
522 cc.Extensions.Add(nameValue);
523 break;
524 }
525 if (!flag)
526 {
527 return false;
528 }
529 }
530 return true;
531 }
void Add(TKey key, TValue value)
static bool TrySetOptionalTokenList(NameValueHeaderValue nameValue, ref bool boolField, ref ObjectCollection< string > destination)
static bool TrySetTimeSpan(NameValueHeaderValue nameValue, ref TimeSpan? timeSpan)
static bool TrySetTokenOnlyValue(NameValueHeaderValue nameValue, ref bool boolField)

References System.Collections.Generic.Dictionary< TKey, TValue >.Add(), System.Net.Http.Headers.CacheControlHeaderValue.TrySetOptionalTokenList(), System.Net.Http.Headers.CacheControlHeaderValue.TrySetTimeSpan(), and System.Net.Http.Headers.CacheControlHeaderValue.TrySetTokenOnlyValue().

Referenced by System.Net.Http.Headers.CacheControlHeaderValue.GetCacheControlLength().