예제 #1
0
        public override int GetHashCode()
        {
            int hash = 1;

            if (TraceId != 0UL)
            {
                hash ^= TraceId.GetHashCode();
            }
            if (messagePieceCase_ == MessagePieceOneofCase.RequestHeaders)
            {
                hash ^= RequestHeaders.GetHashCode();
            }
            if (messagePieceCase_ == MessagePieceOneofCase.RequestBodyChunk)
            {
                hash ^= RequestBodyChunk.GetHashCode();
            }
            if (messagePieceCase_ == MessagePieceOneofCase.RequestTrailers)
            {
                hash ^= RequestTrailers.GetHashCode();
            }
            if (messagePieceCase_ == MessagePieceOneofCase.ResponseHeaders)
            {
                hash ^= ResponseHeaders.GetHashCode();
            }
            if (messagePieceCase_ == MessagePieceOneofCase.ResponseBodyChunk)
            {
                hash ^= ResponseBodyChunk.GetHashCode();
            }
            if (messagePieceCase_ == MessagePieceOneofCase.ResponseTrailers)
            {
                hash ^= ResponseTrailers.GetHashCode();
            }
            hash ^= (int)messagePieceCase_;
            if (_unknownFields != null)
            {
                hash ^= _unknownFields.GetHashCode();
            }
            return(hash);
        }
예제 #2
0
        public void MergeFrom(HttpStreamedTraceSegment other)
        {
            if (other == null)
            {
                return;
            }
            if (other.TraceId != 0UL)
            {
                TraceId = other.TraceId;
            }
            switch (other.MessagePieceCase)
            {
            case MessagePieceOneofCase.RequestHeaders:
                if (RequestHeaders == null)
                {
                    RequestHeaders = new global::Envoy.Api.V2.Core.HeaderMap();
                }
                RequestHeaders.MergeFrom(other.RequestHeaders);
                break;

            case MessagePieceOneofCase.RequestBodyChunk:
                if (RequestBodyChunk == null)
                {
                    RequestBodyChunk = new global::Envoy.Data.Tap.V2Alpha.Body();
                }
                RequestBodyChunk.MergeFrom(other.RequestBodyChunk);
                break;

            case MessagePieceOneofCase.RequestTrailers:
                if (RequestTrailers == null)
                {
                    RequestTrailers = new global::Envoy.Api.V2.Core.HeaderMap();
                }
                RequestTrailers.MergeFrom(other.RequestTrailers);
                break;

            case MessagePieceOneofCase.ResponseHeaders:
                if (ResponseHeaders == null)
                {
                    ResponseHeaders = new global::Envoy.Api.V2.Core.HeaderMap();
                }
                ResponseHeaders.MergeFrom(other.ResponseHeaders);
                break;

            case MessagePieceOneofCase.ResponseBodyChunk:
                if (ResponseBodyChunk == null)
                {
                    ResponseBodyChunk = new global::Envoy.Data.Tap.V2Alpha.Body();
                }
                ResponseBodyChunk.MergeFrom(other.ResponseBodyChunk);
                break;

            case MessagePieceOneofCase.ResponseTrailers:
                if (ResponseTrailers == null)
                {
                    ResponseTrailers = new global::Envoy.Api.V2.Core.HeaderMap();
                }
                ResponseTrailers.MergeFrom(other.ResponseTrailers);
                break;
            }

            _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields);
        }