public static bool TryParse()

in sdk/src/Core/Internal/Entities/TraceHeader.cs [207:237]


        public static bool TryParse(Entity entity, out TraceHeader header)
        {
            header = null;
            if (entity == null)
            {
                _logger.DebugFormat("Failed to parse TraceHeader because segment is null.");
                return false;
            }

            if (string.IsNullOrEmpty(entity.Id))
            {
                _logger.DebugFormat("Failed to parse TraceHeader because segment id is null or empty.");
                return false;
            }

            if (string.IsNullOrEmpty(entity.RootSegment.TraceId))
            {
                _logger.DebugFormat("Failed to parse TraceHeader because trace id is null or empty.");
                return false;
            }

            var newHeader = new TraceHeader();

            // Trace id doesn't exist in subsegment, so get it from rootsegment
            newHeader.RootTraceId = entity.RootSegment.TraceId;
            newHeader.ParentId = entity.Id;
            newHeader.Sampled = entity.Sampled;

            header = newHeader;
            return true;
        }