public static ArchitectureMetadata GetRequestArchitectureMetadata(this HttpContext httpContext)
        {
            var value       = httpContext.Request.Headers[HttpConstants.ArchitectureMetadataName];
            var stringValue = $"{value}";

            return(!string.IsNullOrEmpty(stringValue) ? ArchitectureMetadata.FromString(stringValue) : null);
        }
 /// <summary>
 /// Get architecture metadata from a HttpHeaders object
 /// </summary>
 /// <param name="headers"></param>
 /// <returns></returns>
 public static ArchitectureMetadata GetArchitectureMetadata(HttpHeaders headers)
 {
     if (headers.Contains(HttpConstants.ArchitectureMetadataName))
     {
         var values = headers.GetValues(HttpConstants.ArchitectureMetadataName);
         return(ArchitectureMetadata.FromString(values.FirstOrDefault()));
     }
     return(null);
 }
        /// <summary>
        /// Get architecture metadata from a HttpResponse object
        /// </summary>
        /// <param name="response"></param>
        /// <returns></returns>
        public static ArchitectureMetadata GetArchitectureMetadata(HttpResponse response)
        {
            var value = response.Headers[HttpConstants.ArchitectureMetadataName];

            if (!string.IsNullOrEmpty(value))
            {
                return(ArchitectureMetadata.FromString(value));
            }
            else
            {
                return(null);
            }
        }