public void MergeFrom(ExtAuthz other)
        {
            if (other == null)
            {
                return;
            }
            if (other.FailureModeAllow != false)
            {
                FailureModeAllow = other.FailureModeAllow;
            }
            switch (other.ServicesCase)
            {
            case ServicesOneofCase.GrpcService:
                if (GrpcService == null)
                {
                    GrpcService = new global::Envoy.Api.V2.Core.GrpcService();
                }
                GrpcService.MergeFrom(other.GrpcService);
                break;

            case ServicesOneofCase.HttpService:
                if (HttpService == null)
                {
                    HttpService = new global::Envoy.Config.Filter.Http.ExtAuthz.V2Alpha.HttpService();
                }
                HttpService.MergeFrom(other.HttpService);
                break;
            }

            _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields);
        }
        public void MergeFrom(pb::CodedInputStream input)
        {
            uint tag;

            while ((tag = input.ReadTag()) != 0)
            {
                switch (tag)
                {
                default:
                    _unknownFields = pb::UnknownFieldSet.MergeFieldFrom(_unknownFields, input);
                    break;

                case 10: {
                    global::Envoy.Api.V2.Core.GrpcService subBuilder = new global::Envoy.Api.V2.Core.GrpcService();
                    if (servicesCase_ == ServicesOneofCase.GrpcService)
                    {
                        subBuilder.MergeFrom(GrpcService);
                    }
                    input.ReadMessage(subBuilder);
                    GrpcService = subBuilder;
                    break;
                }

                case 16: {
                    FailureModeAllow = input.ReadBool();
                    break;
                }

                case 26: {
                    global::Envoy.Config.Filter.Http.ExtAuthz.V2Alpha.HttpService subBuilder = new global::Envoy.Config.Filter.Http.ExtAuthz.V2Alpha.HttpService();
                    if (servicesCase_ == ServicesOneofCase.HttpService)
                    {
                        subBuilder.MergeFrom(HttpService);
                    }
                    input.ReadMessage(subBuilder);
                    HttpService = subBuilder;
                    break;
                }
                }
            }
        }