Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public Tester(IDictionary<string, StringValues> headers)
- {
- if (headers == null)
- {
- ProcId = GenerateProcId();
- DbId = GenerateDbId();
- ThetaId = GenerateThetaId();
- return;
- }
- ThetaId = GenerateThetaId();
- var headerKeys = new[]{
- "PROC_HEADER",
- "DB_HEADER",
- "TEXT_HEADER",
- "ALPHA_HEADER",
- "TIMEOUT_HEADER",
- "FILTER_HEADER",
- "PREVIEW_HEADER",
- "ANT_HEADER",
- "APP_HEADER",
- "PAGE_HEADER",
- "LOCAL_HEADER",
- "CONTEXT_HEADER",
- "CHANNEL_HEADER"
- };
- foreach(var key in headerKeys)
- {
- headers.TryGetValue(key, out var headerValue);
- if (headerValuesheaderValue.Count > 0)
- {
- if(!string.IsNullOrWhiteSpace(headerValue[0]))
- {
- switch(key)
- {
- case "PROC_HEADER":
- ProcIdHeader = headerValue[0];
- ProcId = ProcIdHeader;
- break;
- case "DB_HEADER":
- DbIdHeader = headerValue[0];
- DbId = DbIdHeader;
- break;
- case "TEXT_HEADER":
- int.TryParse(headerValue[0], out var textId);
- TextIdValue = textId;
- TextId = textId;
- break;
- case "ALPHA_HEADER":
- AlphaHeader = headerValue[0];
- AlphaContent = AlphaHeader;
- break;
- case "TIMEOUT_HEADER":
- TimeoutId = headerValue[0];
- break;
- case "FILTER_HEADER":
- FilterId = headerValue[0];
- break;
- case "PREVIEW_HEADER":
- PreviewId = headerValue[0];
- break;
- case "ANT_HEADER":
- AntId = headerValue[0];
- break;
- case "LOCAL_HEADER":
- LocalHeader = headerValue[0];
- break;
- case "CONTEXT_HEADER":
- ContextHeader = headerValue[0];
- break;
- case "APP_HEADER":
- AppId = headerValue[0];
- break;
- case "PAGE_HEADER":
- PageStr = headerValue[0];
- break;
- case "CHANNEL_HEADER":
- ChannelId = headerValue[0];
- break;
- }
- }
- }
- }
- // recheck
- if (string.IsNullOrWhiteSpace(DbId)) { DbId = GenerateDbId(); }
- if (string.IsNullOrWhiteSpace(ProcId)) { ProcId = GenerateProcId(); }
- if (ContextHeader != null)
- {
- ContextStr = DeserializeHeader<ContextStr>(ContextHeader);
- }
- if (LocalHeader != null)
- {
- LocalStr = DeserializeHeader<LocalStr>(LocalHeader);
- }
- }
- private T DeserializeHeader<T>(string str) where T : new()
- {
- try
- {
- return JsonSerializer.Deserialize<T>(str);
- }
- catch (Exception e)
- {
- return new T();
- }
- return default;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement