/*
* Licensed to the Apache Software Foundation (ASF) under one or more
* contributor license agreements.  See the NOTICE file distributed with
* this work for additional information regarding copyright ownership.
* The ASF licenses this file to You under the Apache License, Version 2.0
* (the "License"); you may not use this file except in compliance with
* the License.  You may obtain a copy of the License at
*
*     http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/

    package com.ywt.gapi.nfyy;

import org.apache.dubbo.common.stream.StreamObserver;
import org.apache.dubbo.common.URL;
import org.apache.dubbo.rpc.Invoker;
import org.apache.dubbo.rpc.PathResolver;
import org.apache.dubbo.rpc.RpcException;
import org.apache.dubbo.rpc.ServerService;
import org.apache.dubbo.rpc.TriRpcStatus;
import org.apache.dubbo.rpc.model.MethodDescriptor;
import org.apache.dubbo.rpc.model.ServiceDescriptor;
import org.apache.dubbo.rpc.model.StubMethodDescriptor;
import org.apache.dubbo.rpc.model.StubServiceDescriptor;
import org.apache.dubbo.rpc.stub.BiStreamMethodHandler;
import org.apache.dubbo.rpc.stub.ServerStreamMethodHandler;
import org.apache.dubbo.rpc.stub.StubInvocationUtil;
import org.apache.dubbo.rpc.stub.StubInvoker;
import org.apache.dubbo.rpc.stub.StubMethodHandler;
import org.apache.dubbo.rpc.stub.StubSuppliers;
import org.apache.dubbo.rpc.stub.UnaryStubMethodHandler;

import com.google.protobuf.Message;

import java.util.HashMap;
import java.util.Map;
import java.util.function.BiConsumer;
import java.util.concurrent.CompletableFuture;

public final class DubboNfyyServiceTriple {

    public static final String SERVICE_NAME = NfyyService.SERVICE_NAME;

    private static final StubServiceDescriptor serviceDescriptor = new StubServiceDescriptor(SERVICE_NAME,NfyyService.class);

    static {
        org.apache.dubbo.rpc.protocol.tri.service.SchemaDescriptorRegistry.addSchemaDescriptor(SERVICE_NAME,NfyyProto.getDescriptor());
        StubSuppliers.addSupplier(SERVICE_NAME, DubboNfyyServiceTriple::newStub);
        StubSuppliers.addSupplier(NfyyService.JAVA_SERVICE_NAME,  DubboNfyyServiceTriple::newStub);
        StubSuppliers.addDescriptor(SERVICE_NAME, serviceDescriptor);
        StubSuppliers.addDescriptor(NfyyService.JAVA_SERVICE_NAME, serviceDescriptor);
    }

    @SuppressWarnings("all")
    public static NfyyService newStub(Invoker<?> invoker) {
        return new NfyyServiceStub((Invoker<NfyyService>)invoker);
    }

    private static final StubMethodDescriptor getDoctorListMethod = new StubMethodDescriptor("getDoctorList",
    com.ywt.gapi.nfyy.GetDoctorListRequest.class, com.ywt.gapi.nfyy.GetDoctorListResponse.class, serviceDescriptor, MethodDescriptor.RpcType.UNARY,
    obj -> ((Message) obj).toByteArray(), obj -> ((Message) obj).toByteArray(), com.ywt.gapi.nfyy.GetDoctorListRequest::parseFrom,
    com.ywt.gapi.nfyy.GetDoctorListResponse::parseFrom);

    private static final StubMethodDescriptor getDoctorListAsyncMethod = new StubMethodDescriptor("getDoctorList",
    com.ywt.gapi.nfyy.GetDoctorListRequest.class, java.util.concurrent.CompletableFuture.class, serviceDescriptor, MethodDescriptor.RpcType.UNARY,
    obj -> ((Message) obj).toByteArray(), obj -> ((Message) obj).toByteArray(), com.ywt.gapi.nfyy.GetDoctorListRequest::parseFrom,
    com.ywt.gapi.nfyy.GetDoctorListResponse::parseFrom);

    private static final StubMethodDescriptor getDoctorListProxyAsyncMethod = new StubMethodDescriptor("getDoctorListAsync",
    com.ywt.gapi.nfyy.GetDoctorListRequest.class, com.ywt.gapi.nfyy.GetDoctorListResponse.class, serviceDescriptor, MethodDescriptor.RpcType.UNARY,
    obj -> ((Message) obj).toByteArray(), obj -> ((Message) obj).toByteArray(), com.ywt.gapi.nfyy.GetDoctorListRequest::parseFrom,
    com.ywt.gapi.nfyy.GetDoctorListResponse::parseFrom);

    private static final StubMethodDescriptor getScheduleListMethod = new StubMethodDescriptor("getScheduleList",
    com.ywt.gapi.nfyy.GetScheduleListRequest.class, com.ywt.gapi.nfyy.GetScheduleListResponse.class, serviceDescriptor, MethodDescriptor.RpcType.UNARY,
    obj -> ((Message) obj).toByteArray(), obj -> ((Message) obj).toByteArray(), com.ywt.gapi.nfyy.GetScheduleListRequest::parseFrom,
    com.ywt.gapi.nfyy.GetScheduleListResponse::parseFrom);

    private static final StubMethodDescriptor getScheduleListAsyncMethod = new StubMethodDescriptor("getScheduleList",
    com.ywt.gapi.nfyy.GetScheduleListRequest.class, java.util.concurrent.CompletableFuture.class, serviceDescriptor, MethodDescriptor.RpcType.UNARY,
    obj -> ((Message) obj).toByteArray(), obj -> ((Message) obj).toByteArray(), com.ywt.gapi.nfyy.GetScheduleListRequest::parseFrom,
    com.ywt.gapi.nfyy.GetScheduleListResponse::parseFrom);

    private static final StubMethodDescriptor getScheduleListProxyAsyncMethod = new StubMethodDescriptor("getScheduleListAsync",
    com.ywt.gapi.nfyy.GetScheduleListRequest.class, com.ywt.gapi.nfyy.GetScheduleListResponse.class, serviceDescriptor, MethodDescriptor.RpcType.UNARY,
    obj -> ((Message) obj).toByteArray(), obj -> ((Message) obj).toByteArray(), com.ywt.gapi.nfyy.GetScheduleListRequest::parseFrom,
    com.ywt.gapi.nfyy.GetScheduleListResponse::parseFrom);

    private static final StubMethodDescriptor getScheduleTimeInfoMethod = new StubMethodDescriptor("getScheduleTimeInfo",
    com.ywt.gapi.nfyy.GetScheduleTimeInfoRequest.class, com.ywt.gapi.nfyy.GetScheduleTimeInfoResponse.class, serviceDescriptor, MethodDescriptor.RpcType.UNARY,
    obj -> ((Message) obj).toByteArray(), obj -> ((Message) obj).toByteArray(), com.ywt.gapi.nfyy.GetScheduleTimeInfoRequest::parseFrom,
    com.ywt.gapi.nfyy.GetScheduleTimeInfoResponse::parseFrom);

    private static final StubMethodDescriptor getScheduleTimeInfoAsyncMethod = new StubMethodDescriptor("getScheduleTimeInfo",
    com.ywt.gapi.nfyy.GetScheduleTimeInfoRequest.class, java.util.concurrent.CompletableFuture.class, serviceDescriptor, MethodDescriptor.RpcType.UNARY,
    obj -> ((Message) obj).toByteArray(), obj -> ((Message) obj).toByteArray(), com.ywt.gapi.nfyy.GetScheduleTimeInfoRequest::parseFrom,
    com.ywt.gapi.nfyy.GetScheduleTimeInfoResponse::parseFrom);

    private static final StubMethodDescriptor getScheduleTimeInfoProxyAsyncMethod = new StubMethodDescriptor("getScheduleTimeInfoAsync",
    com.ywt.gapi.nfyy.GetScheduleTimeInfoRequest.class, com.ywt.gapi.nfyy.GetScheduleTimeInfoResponse.class, serviceDescriptor, MethodDescriptor.RpcType.UNARY,
    obj -> ((Message) obj).toByteArray(), obj -> ((Message) obj).toByteArray(), com.ywt.gapi.nfyy.GetScheduleTimeInfoRequest::parseFrom,
    com.ywt.gapi.nfyy.GetScheduleTimeInfoResponse::parseFrom);

    private static final StubMethodDescriptor getReportListMethod = new StubMethodDescriptor("getReportList",
    com.ywt.gapi.nfyy.GetReportListRequest.class, com.ywt.gapi.nfyy.GetReportListResponse.class, serviceDescriptor, MethodDescriptor.RpcType.UNARY,
    obj -> ((Message) obj).toByteArray(), obj -> ((Message) obj).toByteArray(), com.ywt.gapi.nfyy.GetReportListRequest::parseFrom,
    com.ywt.gapi.nfyy.GetReportListResponse::parseFrom);

    private static final StubMethodDescriptor getReportListAsyncMethod = new StubMethodDescriptor("getReportList",
    com.ywt.gapi.nfyy.GetReportListRequest.class, java.util.concurrent.CompletableFuture.class, serviceDescriptor, MethodDescriptor.RpcType.UNARY,
    obj -> ((Message) obj).toByteArray(), obj -> ((Message) obj).toByteArray(), com.ywt.gapi.nfyy.GetReportListRequest::parseFrom,
    com.ywt.gapi.nfyy.GetReportListResponse::parseFrom);

    private static final StubMethodDescriptor getReportListProxyAsyncMethod = new StubMethodDescriptor("getReportListAsync",
    com.ywt.gapi.nfyy.GetReportListRequest.class, com.ywt.gapi.nfyy.GetReportListResponse.class, serviceDescriptor, MethodDescriptor.RpcType.UNARY,
    obj -> ((Message) obj).toByteArray(), obj -> ((Message) obj).toByteArray(), com.ywt.gapi.nfyy.GetReportListRequest::parseFrom,
    com.ywt.gapi.nfyy.GetReportListResponse::parseFrom);

    private static final StubMethodDescriptor getPatientInfoMethod = new StubMethodDescriptor("getPatientInfo",
    com.ywt.gapi.nfyy.GetPatientInfoRequest.class, com.ywt.gapi.nfyy.GetPatientInfoResponse.class, serviceDescriptor, MethodDescriptor.RpcType.UNARY,
    obj -> ((Message) obj).toByteArray(), obj -> ((Message) obj).toByteArray(), com.ywt.gapi.nfyy.GetPatientInfoRequest::parseFrom,
    com.ywt.gapi.nfyy.GetPatientInfoResponse::parseFrom);

    private static final StubMethodDescriptor getPatientInfoAsyncMethod = new StubMethodDescriptor("getPatientInfo",
    com.ywt.gapi.nfyy.GetPatientInfoRequest.class, java.util.concurrent.CompletableFuture.class, serviceDescriptor, MethodDescriptor.RpcType.UNARY,
    obj -> ((Message) obj).toByteArray(), obj -> ((Message) obj).toByteArray(), com.ywt.gapi.nfyy.GetPatientInfoRequest::parseFrom,
    com.ywt.gapi.nfyy.GetPatientInfoResponse::parseFrom);

    private static final StubMethodDescriptor getPatientInfoProxyAsyncMethod = new StubMethodDescriptor("getPatientInfoAsync",
    com.ywt.gapi.nfyy.GetPatientInfoRequest.class, com.ywt.gapi.nfyy.GetPatientInfoResponse.class, serviceDescriptor, MethodDescriptor.RpcType.UNARY,
    obj -> ((Message) obj).toByteArray(), obj -> ((Message) obj).toByteArray(), com.ywt.gapi.nfyy.GetPatientInfoRequest::parseFrom,
    com.ywt.gapi.nfyy.GetPatientInfoResponse::parseFrom);

    private static final StubMethodDescriptor getQueueInfoMethod = new StubMethodDescriptor("getQueueInfo",
    com.ywt.gapi.nfyy.GetQueueInfoRequest.class, com.ywt.gapi.nfyy.GetQueueInfoResponse.class, serviceDescriptor, MethodDescriptor.RpcType.UNARY,
    obj -> ((Message) obj).toByteArray(), obj -> ((Message) obj).toByteArray(), com.ywt.gapi.nfyy.GetQueueInfoRequest::parseFrom,
    com.ywt.gapi.nfyy.GetQueueInfoResponse::parseFrom);

    private static final StubMethodDescriptor getQueueInfoAsyncMethod = new StubMethodDescriptor("getQueueInfo",
    com.ywt.gapi.nfyy.GetQueueInfoRequest.class, java.util.concurrent.CompletableFuture.class, serviceDescriptor, MethodDescriptor.RpcType.UNARY,
    obj -> ((Message) obj).toByteArray(), obj -> ((Message) obj).toByteArray(), com.ywt.gapi.nfyy.GetQueueInfoRequest::parseFrom,
    com.ywt.gapi.nfyy.GetQueueInfoResponse::parseFrom);

    private static final StubMethodDescriptor getQueueInfoProxyAsyncMethod = new StubMethodDescriptor("getQueueInfoAsync",
    com.ywt.gapi.nfyy.GetQueueInfoRequest.class, com.ywt.gapi.nfyy.GetQueueInfoResponse.class, serviceDescriptor, MethodDescriptor.RpcType.UNARY,
    obj -> ((Message) obj).toByteArray(), obj -> ((Message) obj).toByteArray(), com.ywt.gapi.nfyy.GetQueueInfoRequest::parseFrom,
    com.ywt.gapi.nfyy.GetQueueInfoResponse::parseFrom);

    private static final StubMethodDescriptor getReportDetailMethod = new StubMethodDescriptor("getReportDetail",
    com.ywt.gapi.nfyy.GetReportDetailRequest.class, com.ywt.gapi.nfyy.GetReportDetailResponse.class, serviceDescriptor, MethodDescriptor.RpcType.UNARY,
    obj -> ((Message) obj).toByteArray(), obj -> ((Message) obj).toByteArray(), com.ywt.gapi.nfyy.GetReportDetailRequest::parseFrom,
    com.ywt.gapi.nfyy.GetReportDetailResponse::parseFrom);

    private static final StubMethodDescriptor getReportDetailAsyncMethod = new StubMethodDescriptor("getReportDetail",
    com.ywt.gapi.nfyy.GetReportDetailRequest.class, java.util.concurrent.CompletableFuture.class, serviceDescriptor, MethodDescriptor.RpcType.UNARY,
    obj -> ((Message) obj).toByteArray(), obj -> ((Message) obj).toByteArray(), com.ywt.gapi.nfyy.GetReportDetailRequest::parseFrom,
    com.ywt.gapi.nfyy.GetReportDetailResponse::parseFrom);

    private static final StubMethodDescriptor getReportDetailProxyAsyncMethod = new StubMethodDescriptor("getReportDetailAsync",
    com.ywt.gapi.nfyy.GetReportDetailRequest.class, com.ywt.gapi.nfyy.GetReportDetailResponse.class, serviceDescriptor, MethodDescriptor.RpcType.UNARY,
    obj -> ((Message) obj).toByteArray(), obj -> ((Message) obj).toByteArray(), com.ywt.gapi.nfyy.GetReportDetailRequest::parseFrom,
    com.ywt.gapi.nfyy.GetReportDetailResponse::parseFrom);

    private static final StubMethodDescriptor getClinicInfoMethod = new StubMethodDescriptor("getClinicInfo",
    com.ywt.gapi.nfyy.GetClinicInfoRequest.class, com.ywt.gapi.nfyy.GetClinicInfoResponse.class, serviceDescriptor, MethodDescriptor.RpcType.UNARY,
    obj -> ((Message) obj).toByteArray(), obj -> ((Message) obj).toByteArray(), com.ywt.gapi.nfyy.GetClinicInfoRequest::parseFrom,
    com.ywt.gapi.nfyy.GetClinicInfoResponse::parseFrom);

    private static final StubMethodDescriptor getClinicInfoAsyncMethod = new StubMethodDescriptor("getClinicInfo",
    com.ywt.gapi.nfyy.GetClinicInfoRequest.class, java.util.concurrent.CompletableFuture.class, serviceDescriptor, MethodDescriptor.RpcType.UNARY,
    obj -> ((Message) obj).toByteArray(), obj -> ((Message) obj).toByteArray(), com.ywt.gapi.nfyy.GetClinicInfoRequest::parseFrom,
    com.ywt.gapi.nfyy.GetClinicInfoResponse::parseFrom);

    private static final StubMethodDescriptor getClinicInfoProxyAsyncMethod = new StubMethodDescriptor("getClinicInfoAsync",
    com.ywt.gapi.nfyy.GetClinicInfoRequest.class, com.ywt.gapi.nfyy.GetClinicInfoResponse.class, serviceDescriptor, MethodDescriptor.RpcType.UNARY,
    obj -> ((Message) obj).toByteArray(), obj -> ((Message) obj).toByteArray(), com.ywt.gapi.nfyy.GetClinicInfoRequest::parseFrom,
    com.ywt.gapi.nfyy.GetClinicInfoResponse::parseFrom);

    private static final StubMethodDescriptor getMedicalCaseDetailMethod = new StubMethodDescriptor("getMedicalCaseDetail",
    com.ywt.gapi.nfyy.GetMedicalCaseDetailRequest.class, com.ywt.gapi.nfyy.GetMedicalCaseDetailResponse.class, serviceDescriptor, MethodDescriptor.RpcType.UNARY,
    obj -> ((Message) obj).toByteArray(), obj -> ((Message) obj).toByteArray(), com.ywt.gapi.nfyy.GetMedicalCaseDetailRequest::parseFrom,
    com.ywt.gapi.nfyy.GetMedicalCaseDetailResponse::parseFrom);

    private static final StubMethodDescriptor getMedicalCaseDetailAsyncMethod = new StubMethodDescriptor("getMedicalCaseDetail",
    com.ywt.gapi.nfyy.GetMedicalCaseDetailRequest.class, java.util.concurrent.CompletableFuture.class, serviceDescriptor, MethodDescriptor.RpcType.UNARY,
    obj -> ((Message) obj).toByteArray(), obj -> ((Message) obj).toByteArray(), com.ywt.gapi.nfyy.GetMedicalCaseDetailRequest::parseFrom,
    com.ywt.gapi.nfyy.GetMedicalCaseDetailResponse::parseFrom);

    private static final StubMethodDescriptor getMedicalCaseDetailProxyAsyncMethod = new StubMethodDescriptor("getMedicalCaseDetailAsync",
    com.ywt.gapi.nfyy.GetMedicalCaseDetailRequest.class, com.ywt.gapi.nfyy.GetMedicalCaseDetailResponse.class, serviceDescriptor, MethodDescriptor.RpcType.UNARY,
    obj -> ((Message) obj).toByteArray(), obj -> ((Message) obj).toByteArray(), com.ywt.gapi.nfyy.GetMedicalCaseDetailRequest::parseFrom,
    com.ywt.gapi.nfyy.GetMedicalCaseDetailResponse::parseFrom);

    private static final StubMethodDescriptor createOrderMethod = new StubMethodDescriptor("createOrder",
    com.ywt.gapi.nfyy.CreateOrderRequest.class, com.ywt.gapi.nfyy.CreateOrderResponse.class, serviceDescriptor, MethodDescriptor.RpcType.UNARY,
    obj -> ((Message) obj).toByteArray(), obj -> ((Message) obj).toByteArray(), com.ywt.gapi.nfyy.CreateOrderRequest::parseFrom,
    com.ywt.gapi.nfyy.CreateOrderResponse::parseFrom);

    private static final StubMethodDescriptor createOrderAsyncMethod = new StubMethodDescriptor("createOrder",
    com.ywt.gapi.nfyy.CreateOrderRequest.class, java.util.concurrent.CompletableFuture.class, serviceDescriptor, MethodDescriptor.RpcType.UNARY,
    obj -> ((Message) obj).toByteArray(), obj -> ((Message) obj).toByteArray(), com.ywt.gapi.nfyy.CreateOrderRequest::parseFrom,
    com.ywt.gapi.nfyy.CreateOrderResponse::parseFrom);

    private static final StubMethodDescriptor createOrderProxyAsyncMethod = new StubMethodDescriptor("createOrderAsync",
    com.ywt.gapi.nfyy.CreateOrderRequest.class, com.ywt.gapi.nfyy.CreateOrderResponse.class, serviceDescriptor, MethodDescriptor.RpcType.UNARY,
    obj -> ((Message) obj).toByteArray(), obj -> ((Message) obj).toByteArray(), com.ywt.gapi.nfyy.CreateOrderRequest::parseFrom,
    com.ywt.gapi.nfyy.CreateOrderResponse::parseFrom);

    private static final StubMethodDescriptor confirmMethod = new StubMethodDescriptor("confirm",
    com.ywt.gapi.nfyy.ConfirmRequest.class, com.ywt.gapi.nfyy.ConfirmResponse.class, serviceDescriptor, MethodDescriptor.RpcType.UNARY,
    obj -> ((Message) obj).toByteArray(), obj -> ((Message) obj).toByteArray(), com.ywt.gapi.nfyy.ConfirmRequest::parseFrom,
    com.ywt.gapi.nfyy.ConfirmResponse::parseFrom);

    private static final StubMethodDescriptor confirmAsyncMethod = new StubMethodDescriptor("confirm",
    com.ywt.gapi.nfyy.ConfirmRequest.class, java.util.concurrent.CompletableFuture.class, serviceDescriptor, MethodDescriptor.RpcType.UNARY,
    obj -> ((Message) obj).toByteArray(), obj -> ((Message) obj).toByteArray(), com.ywt.gapi.nfyy.ConfirmRequest::parseFrom,
    com.ywt.gapi.nfyy.ConfirmResponse::parseFrom);

    private static final StubMethodDescriptor confirmProxyAsyncMethod = new StubMethodDescriptor("confirmAsync",
    com.ywt.gapi.nfyy.ConfirmRequest.class, com.ywt.gapi.nfyy.ConfirmResponse.class, serviceDescriptor, MethodDescriptor.RpcType.UNARY,
    obj -> ((Message) obj).toByteArray(), obj -> ((Message) obj).toByteArray(), com.ywt.gapi.nfyy.ConfirmRequest::parseFrom,
    com.ywt.gapi.nfyy.ConfirmResponse::parseFrom);

    private static final StubMethodDescriptor cancelOrderMethod = new StubMethodDescriptor("cancelOrder",
    com.ywt.gapi.nfyy.CancelOrderRequest.class, com.ywt.gapi.nfyy.CancelOrderResponse.class, serviceDescriptor, MethodDescriptor.RpcType.UNARY,
    obj -> ((Message) obj).toByteArray(), obj -> ((Message) obj).toByteArray(), com.ywt.gapi.nfyy.CancelOrderRequest::parseFrom,
    com.ywt.gapi.nfyy.CancelOrderResponse::parseFrom);

    private static final StubMethodDescriptor cancelOrderAsyncMethod = new StubMethodDescriptor("cancelOrder",
    com.ywt.gapi.nfyy.CancelOrderRequest.class, java.util.concurrent.CompletableFuture.class, serviceDescriptor, MethodDescriptor.RpcType.UNARY,
    obj -> ((Message) obj).toByteArray(), obj -> ((Message) obj).toByteArray(), com.ywt.gapi.nfyy.CancelOrderRequest::parseFrom,
    com.ywt.gapi.nfyy.CancelOrderResponse::parseFrom);

    private static final StubMethodDescriptor cancelOrderProxyAsyncMethod = new StubMethodDescriptor("cancelOrderAsync",
    com.ywt.gapi.nfyy.CancelOrderRequest.class, com.ywt.gapi.nfyy.CancelOrderResponse.class, serviceDescriptor, MethodDescriptor.RpcType.UNARY,
    obj -> ((Message) obj).toByteArray(), obj -> ((Message) obj).toByteArray(), com.ywt.gapi.nfyy.CancelOrderRequest::parseFrom,
    com.ywt.gapi.nfyy.CancelOrderResponse::parseFrom);

    /**
         * <pre>
         * 医生职称代码
         * </pre>
         */
    private static final StubMethodDescriptor cancelRegMethod = new StubMethodDescriptor("cancelReg",
    com.ywt.gapi.nfyy.CancelRegRequest.class, com.ywt.gapi.nfyy.CancelRegResponse.class, serviceDescriptor, MethodDescriptor.RpcType.UNARY,
    obj -> ((Message) obj).toByteArray(), obj -> ((Message) obj).toByteArray(), com.ywt.gapi.nfyy.CancelRegRequest::parseFrom,
    com.ywt.gapi.nfyy.CancelRegResponse::parseFrom);

    private static final StubMethodDescriptor cancelRegAsyncMethod = new StubMethodDescriptor("cancelReg",
    com.ywt.gapi.nfyy.CancelRegRequest.class, java.util.concurrent.CompletableFuture.class, serviceDescriptor, MethodDescriptor.RpcType.UNARY,
    obj -> ((Message) obj).toByteArray(), obj -> ((Message) obj).toByteArray(), com.ywt.gapi.nfyy.CancelRegRequest::parseFrom,
    com.ywt.gapi.nfyy.CancelRegResponse::parseFrom);

    private static final StubMethodDescriptor cancelRegProxyAsyncMethod = new StubMethodDescriptor("cancelRegAsync",
    com.ywt.gapi.nfyy.CancelRegRequest.class, com.ywt.gapi.nfyy.CancelRegResponse.class, serviceDescriptor, MethodDescriptor.RpcType.UNARY,
    obj -> ((Message) obj).toByteArray(), obj -> ((Message) obj).toByteArray(), com.ywt.gapi.nfyy.CancelRegRequest::parseFrom,
    com.ywt.gapi.nfyy.CancelRegResponse::parseFrom);

    /**
         * <pre>
         * 医生职称
         * </pre>
         */
    private static final StubMethodDescriptor getInspectionReportListMethod = new StubMethodDescriptor("getInspectionReportList",
    com.ywt.gapi.nfyy.GetInspectionReportListRequest.class, com.ywt.gapi.nfyy.GetInspectionReportListResponse.class, serviceDescriptor, MethodDescriptor.RpcType.UNARY,
    obj -> ((Message) obj).toByteArray(), obj -> ((Message) obj).toByteArray(), com.ywt.gapi.nfyy.GetInspectionReportListRequest::parseFrom,
    com.ywt.gapi.nfyy.GetInspectionReportListResponse::parseFrom);

    private static final StubMethodDescriptor getInspectionReportListAsyncMethod = new StubMethodDescriptor("getInspectionReportList",
    com.ywt.gapi.nfyy.GetInspectionReportListRequest.class, java.util.concurrent.CompletableFuture.class, serviceDescriptor, MethodDescriptor.RpcType.UNARY,
    obj -> ((Message) obj).toByteArray(), obj -> ((Message) obj).toByteArray(), com.ywt.gapi.nfyy.GetInspectionReportListRequest::parseFrom,
    com.ywt.gapi.nfyy.GetInspectionReportListResponse::parseFrom);

    private static final StubMethodDescriptor getInspectionReportListProxyAsyncMethod = new StubMethodDescriptor("getInspectionReportListAsync",
    com.ywt.gapi.nfyy.GetInspectionReportListRequest.class, com.ywt.gapi.nfyy.GetInspectionReportListResponse.class, serviceDescriptor, MethodDescriptor.RpcType.UNARY,
    obj -> ((Message) obj).toByteArray(), obj -> ((Message) obj).toByteArray(), com.ywt.gapi.nfyy.GetInspectionReportListRequest::parseFrom,
    com.ywt.gapi.nfyy.GetInspectionReportListResponse::parseFrom);

    /**
         * <pre>
         * 医生专长
         * </pre>
         */
    private static final StubMethodDescriptor getInspectionReportDetailMethod = new StubMethodDescriptor("getInspectionReportDetail",
    com.ywt.gapi.nfyy.GetInspectionReportDetailRequest.class, com.ywt.gapi.nfyy.GetInspectionReportDetailResponse.class, serviceDescriptor, MethodDescriptor.RpcType.UNARY,
    obj -> ((Message) obj).toByteArray(), obj -> ((Message) obj).toByteArray(), com.ywt.gapi.nfyy.GetInspectionReportDetailRequest::parseFrom,
    com.ywt.gapi.nfyy.GetInspectionReportDetailResponse::parseFrom);

    private static final StubMethodDescriptor getInspectionReportDetailAsyncMethod = new StubMethodDescriptor("getInspectionReportDetail",
    com.ywt.gapi.nfyy.GetInspectionReportDetailRequest.class, java.util.concurrent.CompletableFuture.class, serviceDescriptor, MethodDescriptor.RpcType.UNARY,
    obj -> ((Message) obj).toByteArray(), obj -> ((Message) obj).toByteArray(), com.ywt.gapi.nfyy.GetInspectionReportDetailRequest::parseFrom,
    com.ywt.gapi.nfyy.GetInspectionReportDetailResponse::parseFrom);

    private static final StubMethodDescriptor getInspectionReportDetailProxyAsyncMethod = new StubMethodDescriptor("getInspectionReportDetailAsync",
    com.ywt.gapi.nfyy.GetInspectionReportDetailRequest.class, com.ywt.gapi.nfyy.GetInspectionReportDetailResponse.class, serviceDescriptor, MethodDescriptor.RpcType.UNARY,
    obj -> ((Message) obj).toByteArray(), obj -> ((Message) obj).toByteArray(), com.ywt.gapi.nfyy.GetInspectionReportDetailRequest::parseFrom,
    com.ywt.gapi.nfyy.GetInspectionReportDetailResponse::parseFrom);

    /**
         * <pre>
         * 出诊级别代码
         * </pre>
         */
    private static final StubMethodDescriptor getRegisteredRecordListMethod = new StubMethodDescriptor("getRegisteredRecordList",
    com.ywt.gapi.nfyy.GetRegisteredRecordListRequest.class, com.ywt.gapi.nfyy.GetRegisteredRecordListResponse.class, serviceDescriptor, MethodDescriptor.RpcType.UNARY,
    obj -> ((Message) obj).toByteArray(), obj -> ((Message) obj).toByteArray(), com.ywt.gapi.nfyy.GetRegisteredRecordListRequest::parseFrom,
    com.ywt.gapi.nfyy.GetRegisteredRecordListResponse::parseFrom);

    private static final StubMethodDescriptor getRegisteredRecordListAsyncMethod = new StubMethodDescriptor("getRegisteredRecordList",
    com.ywt.gapi.nfyy.GetRegisteredRecordListRequest.class, java.util.concurrent.CompletableFuture.class, serviceDescriptor, MethodDescriptor.RpcType.UNARY,
    obj -> ((Message) obj).toByteArray(), obj -> ((Message) obj).toByteArray(), com.ywt.gapi.nfyy.GetRegisteredRecordListRequest::parseFrom,
    com.ywt.gapi.nfyy.GetRegisteredRecordListResponse::parseFrom);

    private static final StubMethodDescriptor getRegisteredRecordListProxyAsyncMethod = new StubMethodDescriptor("getRegisteredRecordListAsync",
    com.ywt.gapi.nfyy.GetRegisteredRecordListRequest.class, com.ywt.gapi.nfyy.GetRegisteredRecordListResponse.class, serviceDescriptor, MethodDescriptor.RpcType.UNARY,
    obj -> ((Message) obj).toByteArray(), obj -> ((Message) obj).toByteArray(), com.ywt.gapi.nfyy.GetRegisteredRecordListRequest::parseFrom,
    com.ywt.gapi.nfyy.GetRegisteredRecordListResponse::parseFrom);

    /**
         * <pre>
         * 出诊级别
         * </pre>
         */
    private static final StubMethodDescriptor getLaboratoryReportListMethod = new StubMethodDescriptor("getLaboratoryReportList",
    com.ywt.gapi.nfyy.GetLaboratoryReportListRequest.class, com.ywt.gapi.nfyy.GetLaboratoryReportListResponse.class, serviceDescriptor, MethodDescriptor.RpcType.UNARY,
    obj -> ((Message) obj).toByteArray(), obj -> ((Message) obj).toByteArray(), com.ywt.gapi.nfyy.GetLaboratoryReportListRequest::parseFrom,
    com.ywt.gapi.nfyy.GetLaboratoryReportListResponse::parseFrom);

    private static final StubMethodDescriptor getLaboratoryReportListAsyncMethod = new StubMethodDescriptor("getLaboratoryReportList",
    com.ywt.gapi.nfyy.GetLaboratoryReportListRequest.class, java.util.concurrent.CompletableFuture.class, serviceDescriptor, MethodDescriptor.RpcType.UNARY,
    obj -> ((Message) obj).toByteArray(), obj -> ((Message) obj).toByteArray(), com.ywt.gapi.nfyy.GetLaboratoryReportListRequest::parseFrom,
    com.ywt.gapi.nfyy.GetLaboratoryReportListResponse::parseFrom);

    private static final StubMethodDescriptor getLaboratoryReportListProxyAsyncMethod = new StubMethodDescriptor("getLaboratoryReportListAsync",
    com.ywt.gapi.nfyy.GetLaboratoryReportListRequest.class, com.ywt.gapi.nfyy.GetLaboratoryReportListResponse.class, serviceDescriptor, MethodDescriptor.RpcType.UNARY,
    obj -> ((Message) obj).toByteArray(), obj -> ((Message) obj).toByteArray(), com.ywt.gapi.nfyy.GetLaboratoryReportListRequest::parseFrom,
    com.ywt.gapi.nfyy.GetLaboratoryReportListResponse::parseFrom);

    /**
         * <pre>
         * 专业代码
         * </pre>
         */
    private static final StubMethodDescriptor getLaboratoryReportDetailMethod = new StubMethodDescriptor("getLaboratoryReportDetail",
    com.ywt.gapi.nfyy.GetLaboratoryReportDetailRequest.class, com.ywt.gapi.nfyy.GetLaboratoryReportDetailResponse.class, serviceDescriptor, MethodDescriptor.RpcType.UNARY,
    obj -> ((Message) obj).toByteArray(), obj -> ((Message) obj).toByteArray(), com.ywt.gapi.nfyy.GetLaboratoryReportDetailRequest::parseFrom,
    com.ywt.gapi.nfyy.GetLaboratoryReportDetailResponse::parseFrom);

    private static final StubMethodDescriptor getLaboratoryReportDetailAsyncMethod = new StubMethodDescriptor("getLaboratoryReportDetail",
    com.ywt.gapi.nfyy.GetLaboratoryReportDetailRequest.class, java.util.concurrent.CompletableFuture.class, serviceDescriptor, MethodDescriptor.RpcType.UNARY,
    obj -> ((Message) obj).toByteArray(), obj -> ((Message) obj).toByteArray(), com.ywt.gapi.nfyy.GetLaboratoryReportDetailRequest::parseFrom,
    com.ywt.gapi.nfyy.GetLaboratoryReportDetailResponse::parseFrom);

    private static final StubMethodDescriptor getLaboratoryReportDetailProxyAsyncMethod = new StubMethodDescriptor("getLaboratoryReportDetailAsync",
    com.ywt.gapi.nfyy.GetLaboratoryReportDetailRequest.class, com.ywt.gapi.nfyy.GetLaboratoryReportDetailResponse.class, serviceDescriptor, MethodDescriptor.RpcType.UNARY,
    obj -> ((Message) obj).toByteArray(), obj -> ((Message) obj).toByteArray(), com.ywt.gapi.nfyy.GetLaboratoryReportDetailRequest::parseFrom,
    com.ywt.gapi.nfyy.GetLaboratoryReportDetailResponse::parseFrom);

    /**
         * <pre>
         * 专业名称
         * </pre>
         */
    private static final StubMethodDescriptor getDoctorListNoGroupMethod = new StubMethodDescriptor("getDoctorListNoGroup",
    com.ywt.gapi.nfyy.GetDoctorListNoGroupRequest.class, com.ywt.gapi.nfyy.GetDoctorListNoGroupResponse.class, serviceDescriptor, MethodDescriptor.RpcType.UNARY,
    obj -> ((Message) obj).toByteArray(), obj -> ((Message) obj).toByteArray(), com.ywt.gapi.nfyy.GetDoctorListNoGroupRequest::parseFrom,
    com.ywt.gapi.nfyy.GetDoctorListNoGroupResponse::parseFrom);

    private static final StubMethodDescriptor getDoctorListNoGroupAsyncMethod = new StubMethodDescriptor("getDoctorListNoGroup",
    com.ywt.gapi.nfyy.GetDoctorListNoGroupRequest.class, java.util.concurrent.CompletableFuture.class, serviceDescriptor, MethodDescriptor.RpcType.UNARY,
    obj -> ((Message) obj).toByteArray(), obj -> ((Message) obj).toByteArray(), com.ywt.gapi.nfyy.GetDoctorListNoGroupRequest::parseFrom,
    com.ywt.gapi.nfyy.GetDoctorListNoGroupResponse::parseFrom);

    private static final StubMethodDescriptor getDoctorListNoGroupProxyAsyncMethod = new StubMethodDescriptor("getDoctorListNoGroupAsync",
    com.ywt.gapi.nfyy.GetDoctorListNoGroupRequest.class, com.ywt.gapi.nfyy.GetDoctorListNoGroupResponse.class, serviceDescriptor, MethodDescriptor.RpcType.UNARY,
    obj -> ((Message) obj).toByteArray(), obj -> ((Message) obj).toByteArray(), com.ywt.gapi.nfyy.GetDoctorListNoGroupRequest::parseFrom,
    com.ywt.gapi.nfyy.GetDoctorListNoGroupResponse::parseFrom);

    /**
         * <pre>
         * 预约挂号总费用
         * </pre>
         */
    private static final StubMethodDescriptor savePatientCardMethod = new StubMethodDescriptor("savePatientCard",
    com.ywt.gapi.nfyy.SavePatientCardRequest.class, com.ywt.gapi.nfyy.SavePatientCardResponse.class, serviceDescriptor, MethodDescriptor.RpcType.UNARY,
    obj -> ((Message) obj).toByteArray(), obj -> ((Message) obj).toByteArray(), com.ywt.gapi.nfyy.SavePatientCardRequest::parseFrom,
    com.ywt.gapi.nfyy.SavePatientCardResponse::parseFrom);

    private static final StubMethodDescriptor savePatientCardAsyncMethod = new StubMethodDescriptor("savePatientCard",
    com.ywt.gapi.nfyy.SavePatientCardRequest.class, java.util.concurrent.CompletableFuture.class, serviceDescriptor, MethodDescriptor.RpcType.UNARY,
    obj -> ((Message) obj).toByteArray(), obj -> ((Message) obj).toByteArray(), com.ywt.gapi.nfyy.SavePatientCardRequest::parseFrom,
    com.ywt.gapi.nfyy.SavePatientCardResponse::parseFrom);

    private static final StubMethodDescriptor savePatientCardProxyAsyncMethod = new StubMethodDescriptor("savePatientCardAsync",
    com.ywt.gapi.nfyy.SavePatientCardRequest.class, com.ywt.gapi.nfyy.SavePatientCardResponse.class, serviceDescriptor, MethodDescriptor.RpcType.UNARY,
    obj -> ((Message) obj).toByteArray(), obj -> ((Message) obj).toByteArray(), com.ywt.gapi.nfyy.SavePatientCardRequest::parseFrom,
    com.ywt.gapi.nfyy.SavePatientCardResponse::parseFrom);





    public static class NfyyServiceStub implements NfyyService{
        private final Invoker<NfyyService> invoker;

        public NfyyServiceStub(Invoker<NfyyService> invoker) {
            this.invoker = invoker;
        }

        @Override
        public com.ywt.gapi.nfyy.GetDoctorListResponse getDoctorList(com.ywt.gapi.nfyy.GetDoctorListRequest request){
            return StubInvocationUtil.unaryCall(invoker, getDoctorListMethod, request);
        }

        public CompletableFuture<com.ywt.gapi.nfyy.GetDoctorListResponse> getDoctorListAsync(com.ywt.gapi.nfyy.GetDoctorListRequest request){
            return StubInvocationUtil.unaryCall(invoker, getDoctorListAsyncMethod, request);
        }

        @Override
        public void getDoctorList(com.ywt.gapi.nfyy.GetDoctorListRequest request, StreamObserver<com.ywt.gapi.nfyy.GetDoctorListResponse> responseObserver){
            StubInvocationUtil.unaryCall(invoker, getDoctorListMethod , request, responseObserver);
        }
        @Override
        public com.ywt.gapi.nfyy.GetScheduleListResponse getScheduleList(com.ywt.gapi.nfyy.GetScheduleListRequest request){
            return StubInvocationUtil.unaryCall(invoker, getScheduleListMethod, request);
        }

        public CompletableFuture<com.ywt.gapi.nfyy.GetScheduleListResponse> getScheduleListAsync(com.ywt.gapi.nfyy.GetScheduleListRequest request){
            return StubInvocationUtil.unaryCall(invoker, getScheduleListAsyncMethod, request);
        }

        @Override
        public void getScheduleList(com.ywt.gapi.nfyy.GetScheduleListRequest request, StreamObserver<com.ywt.gapi.nfyy.GetScheduleListResponse> responseObserver){
            StubInvocationUtil.unaryCall(invoker, getScheduleListMethod , request, responseObserver);
        }
        @Override
        public com.ywt.gapi.nfyy.GetScheduleTimeInfoResponse getScheduleTimeInfo(com.ywt.gapi.nfyy.GetScheduleTimeInfoRequest request){
            return StubInvocationUtil.unaryCall(invoker, getScheduleTimeInfoMethod, request);
        }

        public CompletableFuture<com.ywt.gapi.nfyy.GetScheduleTimeInfoResponse> getScheduleTimeInfoAsync(com.ywt.gapi.nfyy.GetScheduleTimeInfoRequest request){
            return StubInvocationUtil.unaryCall(invoker, getScheduleTimeInfoAsyncMethod, request);
        }

        @Override
        public void getScheduleTimeInfo(com.ywt.gapi.nfyy.GetScheduleTimeInfoRequest request, StreamObserver<com.ywt.gapi.nfyy.GetScheduleTimeInfoResponse> responseObserver){
            StubInvocationUtil.unaryCall(invoker, getScheduleTimeInfoMethod , request, responseObserver);
        }
        @Override
        public com.ywt.gapi.nfyy.GetReportListResponse getReportList(com.ywt.gapi.nfyy.GetReportListRequest request){
            return StubInvocationUtil.unaryCall(invoker, getReportListMethod, request);
        }

        public CompletableFuture<com.ywt.gapi.nfyy.GetReportListResponse> getReportListAsync(com.ywt.gapi.nfyy.GetReportListRequest request){
            return StubInvocationUtil.unaryCall(invoker, getReportListAsyncMethod, request);
        }

        @Override
        public void getReportList(com.ywt.gapi.nfyy.GetReportListRequest request, StreamObserver<com.ywt.gapi.nfyy.GetReportListResponse> responseObserver){
            StubInvocationUtil.unaryCall(invoker, getReportListMethod , request, responseObserver);
        }
        @Override
        public com.ywt.gapi.nfyy.GetPatientInfoResponse getPatientInfo(com.ywt.gapi.nfyy.GetPatientInfoRequest request){
            return StubInvocationUtil.unaryCall(invoker, getPatientInfoMethod, request);
        }

        public CompletableFuture<com.ywt.gapi.nfyy.GetPatientInfoResponse> getPatientInfoAsync(com.ywt.gapi.nfyy.GetPatientInfoRequest request){
            return StubInvocationUtil.unaryCall(invoker, getPatientInfoAsyncMethod, request);
        }

        @Override
        public void getPatientInfo(com.ywt.gapi.nfyy.GetPatientInfoRequest request, StreamObserver<com.ywt.gapi.nfyy.GetPatientInfoResponse> responseObserver){
            StubInvocationUtil.unaryCall(invoker, getPatientInfoMethod , request, responseObserver);
        }
        @Override
        public com.ywt.gapi.nfyy.GetQueueInfoResponse getQueueInfo(com.ywt.gapi.nfyy.GetQueueInfoRequest request){
            return StubInvocationUtil.unaryCall(invoker, getQueueInfoMethod, request);
        }

        public CompletableFuture<com.ywt.gapi.nfyy.GetQueueInfoResponse> getQueueInfoAsync(com.ywt.gapi.nfyy.GetQueueInfoRequest request){
            return StubInvocationUtil.unaryCall(invoker, getQueueInfoAsyncMethod, request);
        }

        @Override
        public void getQueueInfo(com.ywt.gapi.nfyy.GetQueueInfoRequest request, StreamObserver<com.ywt.gapi.nfyy.GetQueueInfoResponse> responseObserver){
            StubInvocationUtil.unaryCall(invoker, getQueueInfoMethod , request, responseObserver);
        }
        @Override
        public com.ywt.gapi.nfyy.GetReportDetailResponse getReportDetail(com.ywt.gapi.nfyy.GetReportDetailRequest request){
            return StubInvocationUtil.unaryCall(invoker, getReportDetailMethod, request);
        }

        public CompletableFuture<com.ywt.gapi.nfyy.GetReportDetailResponse> getReportDetailAsync(com.ywt.gapi.nfyy.GetReportDetailRequest request){
            return StubInvocationUtil.unaryCall(invoker, getReportDetailAsyncMethod, request);
        }

        @Override
        public void getReportDetail(com.ywt.gapi.nfyy.GetReportDetailRequest request, StreamObserver<com.ywt.gapi.nfyy.GetReportDetailResponse> responseObserver){
            StubInvocationUtil.unaryCall(invoker, getReportDetailMethod , request, responseObserver);
        }
        @Override
        public com.ywt.gapi.nfyy.GetClinicInfoResponse getClinicInfo(com.ywt.gapi.nfyy.GetClinicInfoRequest request){
            return StubInvocationUtil.unaryCall(invoker, getClinicInfoMethod, request);
        }

        public CompletableFuture<com.ywt.gapi.nfyy.GetClinicInfoResponse> getClinicInfoAsync(com.ywt.gapi.nfyy.GetClinicInfoRequest request){
            return StubInvocationUtil.unaryCall(invoker, getClinicInfoAsyncMethod, request);
        }

        @Override
        public void getClinicInfo(com.ywt.gapi.nfyy.GetClinicInfoRequest request, StreamObserver<com.ywt.gapi.nfyy.GetClinicInfoResponse> responseObserver){
            StubInvocationUtil.unaryCall(invoker, getClinicInfoMethod , request, responseObserver);
        }
        @Override
        public com.ywt.gapi.nfyy.GetMedicalCaseDetailResponse getMedicalCaseDetail(com.ywt.gapi.nfyy.GetMedicalCaseDetailRequest request){
            return StubInvocationUtil.unaryCall(invoker, getMedicalCaseDetailMethod, request);
        }

        public CompletableFuture<com.ywt.gapi.nfyy.GetMedicalCaseDetailResponse> getMedicalCaseDetailAsync(com.ywt.gapi.nfyy.GetMedicalCaseDetailRequest request){
            return StubInvocationUtil.unaryCall(invoker, getMedicalCaseDetailAsyncMethod, request);
        }

        @Override
        public void getMedicalCaseDetail(com.ywt.gapi.nfyy.GetMedicalCaseDetailRequest request, StreamObserver<com.ywt.gapi.nfyy.GetMedicalCaseDetailResponse> responseObserver){
            StubInvocationUtil.unaryCall(invoker, getMedicalCaseDetailMethod , request, responseObserver);
        }
        @Override
        public com.ywt.gapi.nfyy.CreateOrderResponse createOrder(com.ywt.gapi.nfyy.CreateOrderRequest request){
            return StubInvocationUtil.unaryCall(invoker, createOrderMethod, request);
        }

        public CompletableFuture<com.ywt.gapi.nfyy.CreateOrderResponse> createOrderAsync(com.ywt.gapi.nfyy.CreateOrderRequest request){
            return StubInvocationUtil.unaryCall(invoker, createOrderAsyncMethod, request);
        }

        @Override
        public void createOrder(com.ywt.gapi.nfyy.CreateOrderRequest request, StreamObserver<com.ywt.gapi.nfyy.CreateOrderResponse> responseObserver){
            StubInvocationUtil.unaryCall(invoker, createOrderMethod , request, responseObserver);
        }
        @Override
        public com.ywt.gapi.nfyy.ConfirmResponse confirm(com.ywt.gapi.nfyy.ConfirmRequest request){
            return StubInvocationUtil.unaryCall(invoker, confirmMethod, request);
        }

        public CompletableFuture<com.ywt.gapi.nfyy.ConfirmResponse> confirmAsync(com.ywt.gapi.nfyy.ConfirmRequest request){
            return StubInvocationUtil.unaryCall(invoker, confirmAsyncMethod, request);
        }

        @Override
        public void confirm(com.ywt.gapi.nfyy.ConfirmRequest request, StreamObserver<com.ywt.gapi.nfyy.ConfirmResponse> responseObserver){
            StubInvocationUtil.unaryCall(invoker, confirmMethod , request, responseObserver);
        }
        @Override
        public com.ywt.gapi.nfyy.CancelOrderResponse cancelOrder(com.ywt.gapi.nfyy.CancelOrderRequest request){
            return StubInvocationUtil.unaryCall(invoker, cancelOrderMethod, request);
        }

        public CompletableFuture<com.ywt.gapi.nfyy.CancelOrderResponse> cancelOrderAsync(com.ywt.gapi.nfyy.CancelOrderRequest request){
            return StubInvocationUtil.unaryCall(invoker, cancelOrderAsyncMethod, request);
        }

        @Override
        public void cancelOrder(com.ywt.gapi.nfyy.CancelOrderRequest request, StreamObserver<com.ywt.gapi.nfyy.CancelOrderResponse> responseObserver){
            StubInvocationUtil.unaryCall(invoker, cancelOrderMethod , request, responseObserver);
        }
            /**
         * <pre>
         * 医生职称代码
         * </pre>
         */
        @Override
        public com.ywt.gapi.nfyy.CancelRegResponse cancelReg(com.ywt.gapi.nfyy.CancelRegRequest request){
            return StubInvocationUtil.unaryCall(invoker, cancelRegMethod, request);
        }

        public CompletableFuture<com.ywt.gapi.nfyy.CancelRegResponse> cancelRegAsync(com.ywt.gapi.nfyy.CancelRegRequest request){
            return StubInvocationUtil.unaryCall(invoker, cancelRegAsyncMethod, request);
        }

            /**
         * <pre>
         * 医生职称代码
         * </pre>
         */
        @Override
        public void cancelReg(com.ywt.gapi.nfyy.CancelRegRequest request, StreamObserver<com.ywt.gapi.nfyy.CancelRegResponse> responseObserver){
            StubInvocationUtil.unaryCall(invoker, cancelRegMethod , request, responseObserver);
        }
            /**
         * <pre>
         * 医生职称
         * </pre>
         */
        @Override
        public com.ywt.gapi.nfyy.GetInspectionReportListResponse getInspectionReportList(com.ywt.gapi.nfyy.GetInspectionReportListRequest request){
            return StubInvocationUtil.unaryCall(invoker, getInspectionReportListMethod, request);
        }

        public CompletableFuture<com.ywt.gapi.nfyy.GetInspectionReportListResponse> getInspectionReportListAsync(com.ywt.gapi.nfyy.GetInspectionReportListRequest request){
            return StubInvocationUtil.unaryCall(invoker, getInspectionReportListAsyncMethod, request);
        }

            /**
         * <pre>
         * 医生职称
         * </pre>
         */
        @Override
        public void getInspectionReportList(com.ywt.gapi.nfyy.GetInspectionReportListRequest request, StreamObserver<com.ywt.gapi.nfyy.GetInspectionReportListResponse> responseObserver){
            StubInvocationUtil.unaryCall(invoker, getInspectionReportListMethod , request, responseObserver);
        }
            /**
         * <pre>
         * 医生专长
         * </pre>
         */
        @Override
        public com.ywt.gapi.nfyy.GetInspectionReportDetailResponse getInspectionReportDetail(com.ywt.gapi.nfyy.GetInspectionReportDetailRequest request){
            return StubInvocationUtil.unaryCall(invoker, getInspectionReportDetailMethod, request);
        }

        public CompletableFuture<com.ywt.gapi.nfyy.GetInspectionReportDetailResponse> getInspectionReportDetailAsync(com.ywt.gapi.nfyy.GetInspectionReportDetailRequest request){
            return StubInvocationUtil.unaryCall(invoker, getInspectionReportDetailAsyncMethod, request);
        }

            /**
         * <pre>
         * 医生专长
         * </pre>
         */
        @Override
        public void getInspectionReportDetail(com.ywt.gapi.nfyy.GetInspectionReportDetailRequest request, StreamObserver<com.ywt.gapi.nfyy.GetInspectionReportDetailResponse> responseObserver){
            StubInvocationUtil.unaryCall(invoker, getInspectionReportDetailMethod , request, responseObserver);
        }
            /**
         * <pre>
         * 出诊级别代码
         * </pre>
         */
        @Override
        public com.ywt.gapi.nfyy.GetRegisteredRecordListResponse getRegisteredRecordList(com.ywt.gapi.nfyy.GetRegisteredRecordListRequest request){
            return StubInvocationUtil.unaryCall(invoker, getRegisteredRecordListMethod, request);
        }

        public CompletableFuture<com.ywt.gapi.nfyy.GetRegisteredRecordListResponse> getRegisteredRecordListAsync(com.ywt.gapi.nfyy.GetRegisteredRecordListRequest request){
            return StubInvocationUtil.unaryCall(invoker, getRegisteredRecordListAsyncMethod, request);
        }

            /**
         * <pre>
         * 出诊级别代码
         * </pre>
         */
        @Override
        public void getRegisteredRecordList(com.ywt.gapi.nfyy.GetRegisteredRecordListRequest request, StreamObserver<com.ywt.gapi.nfyy.GetRegisteredRecordListResponse> responseObserver){
            StubInvocationUtil.unaryCall(invoker, getRegisteredRecordListMethod , request, responseObserver);
        }
            /**
         * <pre>
         * 出诊级别
         * </pre>
         */
        @Override
        public com.ywt.gapi.nfyy.GetLaboratoryReportListResponse getLaboratoryReportList(com.ywt.gapi.nfyy.GetLaboratoryReportListRequest request){
            return StubInvocationUtil.unaryCall(invoker, getLaboratoryReportListMethod, request);
        }

        public CompletableFuture<com.ywt.gapi.nfyy.GetLaboratoryReportListResponse> getLaboratoryReportListAsync(com.ywt.gapi.nfyy.GetLaboratoryReportListRequest request){
            return StubInvocationUtil.unaryCall(invoker, getLaboratoryReportListAsyncMethod, request);
        }

            /**
         * <pre>
         * 出诊级别
         * </pre>
         */
        @Override
        public void getLaboratoryReportList(com.ywt.gapi.nfyy.GetLaboratoryReportListRequest request, StreamObserver<com.ywt.gapi.nfyy.GetLaboratoryReportListResponse> responseObserver){
            StubInvocationUtil.unaryCall(invoker, getLaboratoryReportListMethod , request, responseObserver);
        }
            /**
         * <pre>
         * 专业代码
         * </pre>
         */
        @Override
        public com.ywt.gapi.nfyy.GetLaboratoryReportDetailResponse getLaboratoryReportDetail(com.ywt.gapi.nfyy.GetLaboratoryReportDetailRequest request){
            return StubInvocationUtil.unaryCall(invoker, getLaboratoryReportDetailMethod, request);
        }

        public CompletableFuture<com.ywt.gapi.nfyy.GetLaboratoryReportDetailResponse> getLaboratoryReportDetailAsync(com.ywt.gapi.nfyy.GetLaboratoryReportDetailRequest request){
            return StubInvocationUtil.unaryCall(invoker, getLaboratoryReportDetailAsyncMethod, request);
        }

            /**
         * <pre>
         * 专业代码
         * </pre>
         */
        @Override
        public void getLaboratoryReportDetail(com.ywt.gapi.nfyy.GetLaboratoryReportDetailRequest request, StreamObserver<com.ywt.gapi.nfyy.GetLaboratoryReportDetailResponse> responseObserver){
            StubInvocationUtil.unaryCall(invoker, getLaboratoryReportDetailMethod , request, responseObserver);
        }
            /**
         * <pre>
         * 专业名称
         * </pre>
         */
        @Override
        public com.ywt.gapi.nfyy.GetDoctorListNoGroupResponse getDoctorListNoGroup(com.ywt.gapi.nfyy.GetDoctorListNoGroupRequest request){
            return StubInvocationUtil.unaryCall(invoker, getDoctorListNoGroupMethod, request);
        }

        public CompletableFuture<com.ywt.gapi.nfyy.GetDoctorListNoGroupResponse> getDoctorListNoGroupAsync(com.ywt.gapi.nfyy.GetDoctorListNoGroupRequest request){
            return StubInvocationUtil.unaryCall(invoker, getDoctorListNoGroupAsyncMethod, request);
        }

            /**
         * <pre>
         * 专业名称
         * </pre>
         */
        @Override
        public void getDoctorListNoGroup(com.ywt.gapi.nfyy.GetDoctorListNoGroupRequest request, StreamObserver<com.ywt.gapi.nfyy.GetDoctorListNoGroupResponse> responseObserver){
            StubInvocationUtil.unaryCall(invoker, getDoctorListNoGroupMethod , request, responseObserver);
        }
            /**
         * <pre>
         * 预约挂号总费用
         * </pre>
         */
        @Override
        public com.ywt.gapi.nfyy.SavePatientCardResponse savePatientCard(com.ywt.gapi.nfyy.SavePatientCardRequest request){
            return StubInvocationUtil.unaryCall(invoker, savePatientCardMethod, request);
        }

        public CompletableFuture<com.ywt.gapi.nfyy.SavePatientCardResponse> savePatientCardAsync(com.ywt.gapi.nfyy.SavePatientCardRequest request){
            return StubInvocationUtil.unaryCall(invoker, savePatientCardAsyncMethod, request);
        }

            /**
         * <pre>
         * 预约挂号总费用
         * </pre>
         */
        @Override
        public void savePatientCard(com.ywt.gapi.nfyy.SavePatientCardRequest request, StreamObserver<com.ywt.gapi.nfyy.SavePatientCardResponse> responseObserver){
            StubInvocationUtil.unaryCall(invoker, savePatientCardMethod , request, responseObserver);
        }



    }

    public static abstract class NfyyServiceImplBase implements NfyyService, ServerService<NfyyService> {

        private <T, R> BiConsumer<T, StreamObserver<R>> syncToAsync(java.util.function.Function<T, R> syncFun) {
            return new BiConsumer<T, StreamObserver<R>>() {
                @Override
                public void accept(T t, StreamObserver<R> observer) {
                    try {
                        R ret = syncFun.apply(t);
                        observer.onNext(ret);
                        observer.onCompleted();
                    } catch (Throwable e) {
                        observer.onError(e);
                    }
                }
            };
        }

        @Override
        public final Invoker<NfyyService> getInvoker(URL url) {
            PathResolver pathResolver = url.getOrDefaultFrameworkModel()
            .getExtensionLoader(PathResolver.class)
            .getDefaultExtension();
            Map<String,StubMethodHandler<?, ?>> handlers = new HashMap<>();

            pathResolver.addNativeStub( "/" + SERVICE_NAME + "/getDoctorList" );
            pathResolver.addNativeStub( "/" + SERVICE_NAME + "/getDoctorListAsync" );
            pathResolver.addNativeStub( "/" + SERVICE_NAME + "/getScheduleList" );
            pathResolver.addNativeStub( "/" + SERVICE_NAME + "/getScheduleListAsync" );
            pathResolver.addNativeStub( "/" + SERVICE_NAME + "/getScheduleTimeInfo" );
            pathResolver.addNativeStub( "/" + SERVICE_NAME + "/getScheduleTimeInfoAsync" );
            pathResolver.addNativeStub( "/" + SERVICE_NAME + "/getReportList" );
            pathResolver.addNativeStub( "/" + SERVICE_NAME + "/getReportListAsync" );
            pathResolver.addNativeStub( "/" + SERVICE_NAME + "/getPatientInfo" );
            pathResolver.addNativeStub( "/" + SERVICE_NAME + "/getPatientInfoAsync" );
            pathResolver.addNativeStub( "/" + SERVICE_NAME + "/getQueueInfo" );
            pathResolver.addNativeStub( "/" + SERVICE_NAME + "/getQueueInfoAsync" );
            pathResolver.addNativeStub( "/" + SERVICE_NAME + "/getReportDetail" );
            pathResolver.addNativeStub( "/" + SERVICE_NAME + "/getReportDetailAsync" );
            pathResolver.addNativeStub( "/" + SERVICE_NAME + "/getClinicInfo" );
            pathResolver.addNativeStub( "/" + SERVICE_NAME + "/getClinicInfoAsync" );
            pathResolver.addNativeStub( "/" + SERVICE_NAME + "/getMedicalCaseDetail" );
            pathResolver.addNativeStub( "/" + SERVICE_NAME + "/getMedicalCaseDetailAsync" );
            pathResolver.addNativeStub( "/" + SERVICE_NAME + "/createOrder" );
            pathResolver.addNativeStub( "/" + SERVICE_NAME + "/createOrderAsync" );
            pathResolver.addNativeStub( "/" + SERVICE_NAME + "/confirm" );
            pathResolver.addNativeStub( "/" + SERVICE_NAME + "/confirmAsync" );
            pathResolver.addNativeStub( "/" + SERVICE_NAME + "/cancelOrder" );
            pathResolver.addNativeStub( "/" + SERVICE_NAME + "/cancelOrderAsync" );
            pathResolver.addNativeStub( "/" + SERVICE_NAME + "/cancelReg" );
            pathResolver.addNativeStub( "/" + SERVICE_NAME + "/cancelRegAsync" );
            pathResolver.addNativeStub( "/" + SERVICE_NAME + "/getInspectionReportList" );
            pathResolver.addNativeStub( "/" + SERVICE_NAME + "/getInspectionReportListAsync" );
            pathResolver.addNativeStub( "/" + SERVICE_NAME + "/getInspectionReportDetail" );
            pathResolver.addNativeStub( "/" + SERVICE_NAME + "/getInspectionReportDetailAsync" );
            pathResolver.addNativeStub( "/" + SERVICE_NAME + "/getRegisteredRecordList" );
            pathResolver.addNativeStub( "/" + SERVICE_NAME + "/getRegisteredRecordListAsync" );
            pathResolver.addNativeStub( "/" + SERVICE_NAME + "/getLaboratoryReportList" );
            pathResolver.addNativeStub( "/" + SERVICE_NAME + "/getLaboratoryReportListAsync" );
            pathResolver.addNativeStub( "/" + SERVICE_NAME + "/getLaboratoryReportDetail" );
            pathResolver.addNativeStub( "/" + SERVICE_NAME + "/getLaboratoryReportDetailAsync" );
            pathResolver.addNativeStub( "/" + SERVICE_NAME + "/getDoctorListNoGroup" );
            pathResolver.addNativeStub( "/" + SERVICE_NAME + "/getDoctorListNoGroupAsync" );
            pathResolver.addNativeStub( "/" + SERVICE_NAME + "/savePatientCard" );
            pathResolver.addNativeStub( "/" + SERVICE_NAME + "/savePatientCardAsync" );

            BiConsumer<com.ywt.gapi.nfyy.GetDoctorListRequest, StreamObserver<com.ywt.gapi.nfyy.GetDoctorListResponse>> getDoctorListFunc = this::getDoctorList;
            handlers.put(getDoctorListMethod.getMethodName(), new UnaryStubMethodHandler<>(getDoctorListFunc));
            BiConsumer<com.ywt.gapi.nfyy.GetDoctorListRequest, StreamObserver<com.ywt.gapi.nfyy.GetDoctorListResponse>> getDoctorListAsyncFunc = syncToAsync(this::getDoctorList);
            handlers.put(getDoctorListProxyAsyncMethod.getMethodName(), new UnaryStubMethodHandler<>(getDoctorListAsyncFunc));
            BiConsumer<com.ywt.gapi.nfyy.GetScheduleListRequest, StreamObserver<com.ywt.gapi.nfyy.GetScheduleListResponse>> getScheduleListFunc = this::getScheduleList;
            handlers.put(getScheduleListMethod.getMethodName(), new UnaryStubMethodHandler<>(getScheduleListFunc));
            BiConsumer<com.ywt.gapi.nfyy.GetScheduleListRequest, StreamObserver<com.ywt.gapi.nfyy.GetScheduleListResponse>> getScheduleListAsyncFunc = syncToAsync(this::getScheduleList);
            handlers.put(getScheduleListProxyAsyncMethod.getMethodName(), new UnaryStubMethodHandler<>(getScheduleListAsyncFunc));
            BiConsumer<com.ywt.gapi.nfyy.GetScheduleTimeInfoRequest, StreamObserver<com.ywt.gapi.nfyy.GetScheduleTimeInfoResponse>> getScheduleTimeInfoFunc = this::getScheduleTimeInfo;
            handlers.put(getScheduleTimeInfoMethod.getMethodName(), new UnaryStubMethodHandler<>(getScheduleTimeInfoFunc));
            BiConsumer<com.ywt.gapi.nfyy.GetScheduleTimeInfoRequest, StreamObserver<com.ywt.gapi.nfyy.GetScheduleTimeInfoResponse>> getScheduleTimeInfoAsyncFunc = syncToAsync(this::getScheduleTimeInfo);
            handlers.put(getScheduleTimeInfoProxyAsyncMethod.getMethodName(), new UnaryStubMethodHandler<>(getScheduleTimeInfoAsyncFunc));
            BiConsumer<com.ywt.gapi.nfyy.GetReportListRequest, StreamObserver<com.ywt.gapi.nfyy.GetReportListResponse>> getReportListFunc = this::getReportList;
            handlers.put(getReportListMethod.getMethodName(), new UnaryStubMethodHandler<>(getReportListFunc));
            BiConsumer<com.ywt.gapi.nfyy.GetReportListRequest, StreamObserver<com.ywt.gapi.nfyy.GetReportListResponse>> getReportListAsyncFunc = syncToAsync(this::getReportList);
            handlers.put(getReportListProxyAsyncMethod.getMethodName(), new UnaryStubMethodHandler<>(getReportListAsyncFunc));
            BiConsumer<com.ywt.gapi.nfyy.GetPatientInfoRequest, StreamObserver<com.ywt.gapi.nfyy.GetPatientInfoResponse>> getPatientInfoFunc = this::getPatientInfo;
            handlers.put(getPatientInfoMethod.getMethodName(), new UnaryStubMethodHandler<>(getPatientInfoFunc));
            BiConsumer<com.ywt.gapi.nfyy.GetPatientInfoRequest, StreamObserver<com.ywt.gapi.nfyy.GetPatientInfoResponse>> getPatientInfoAsyncFunc = syncToAsync(this::getPatientInfo);
            handlers.put(getPatientInfoProxyAsyncMethod.getMethodName(), new UnaryStubMethodHandler<>(getPatientInfoAsyncFunc));
            BiConsumer<com.ywt.gapi.nfyy.GetQueueInfoRequest, StreamObserver<com.ywt.gapi.nfyy.GetQueueInfoResponse>> getQueueInfoFunc = this::getQueueInfo;
            handlers.put(getQueueInfoMethod.getMethodName(), new UnaryStubMethodHandler<>(getQueueInfoFunc));
            BiConsumer<com.ywt.gapi.nfyy.GetQueueInfoRequest, StreamObserver<com.ywt.gapi.nfyy.GetQueueInfoResponse>> getQueueInfoAsyncFunc = syncToAsync(this::getQueueInfo);
            handlers.put(getQueueInfoProxyAsyncMethod.getMethodName(), new UnaryStubMethodHandler<>(getQueueInfoAsyncFunc));
            BiConsumer<com.ywt.gapi.nfyy.GetReportDetailRequest, StreamObserver<com.ywt.gapi.nfyy.GetReportDetailResponse>> getReportDetailFunc = this::getReportDetail;
            handlers.put(getReportDetailMethod.getMethodName(), new UnaryStubMethodHandler<>(getReportDetailFunc));
            BiConsumer<com.ywt.gapi.nfyy.GetReportDetailRequest, StreamObserver<com.ywt.gapi.nfyy.GetReportDetailResponse>> getReportDetailAsyncFunc = syncToAsync(this::getReportDetail);
            handlers.put(getReportDetailProxyAsyncMethod.getMethodName(), new UnaryStubMethodHandler<>(getReportDetailAsyncFunc));
            BiConsumer<com.ywt.gapi.nfyy.GetClinicInfoRequest, StreamObserver<com.ywt.gapi.nfyy.GetClinicInfoResponse>> getClinicInfoFunc = this::getClinicInfo;
            handlers.put(getClinicInfoMethod.getMethodName(), new UnaryStubMethodHandler<>(getClinicInfoFunc));
            BiConsumer<com.ywt.gapi.nfyy.GetClinicInfoRequest, StreamObserver<com.ywt.gapi.nfyy.GetClinicInfoResponse>> getClinicInfoAsyncFunc = syncToAsync(this::getClinicInfo);
            handlers.put(getClinicInfoProxyAsyncMethod.getMethodName(), new UnaryStubMethodHandler<>(getClinicInfoAsyncFunc));
            BiConsumer<com.ywt.gapi.nfyy.GetMedicalCaseDetailRequest, StreamObserver<com.ywt.gapi.nfyy.GetMedicalCaseDetailResponse>> getMedicalCaseDetailFunc = this::getMedicalCaseDetail;
            handlers.put(getMedicalCaseDetailMethod.getMethodName(), new UnaryStubMethodHandler<>(getMedicalCaseDetailFunc));
            BiConsumer<com.ywt.gapi.nfyy.GetMedicalCaseDetailRequest, StreamObserver<com.ywt.gapi.nfyy.GetMedicalCaseDetailResponse>> getMedicalCaseDetailAsyncFunc = syncToAsync(this::getMedicalCaseDetail);
            handlers.put(getMedicalCaseDetailProxyAsyncMethod.getMethodName(), new UnaryStubMethodHandler<>(getMedicalCaseDetailAsyncFunc));
            BiConsumer<com.ywt.gapi.nfyy.CreateOrderRequest, StreamObserver<com.ywt.gapi.nfyy.CreateOrderResponse>> createOrderFunc = this::createOrder;
            handlers.put(createOrderMethod.getMethodName(), new UnaryStubMethodHandler<>(createOrderFunc));
            BiConsumer<com.ywt.gapi.nfyy.CreateOrderRequest, StreamObserver<com.ywt.gapi.nfyy.CreateOrderResponse>> createOrderAsyncFunc = syncToAsync(this::createOrder);
            handlers.put(createOrderProxyAsyncMethod.getMethodName(), new UnaryStubMethodHandler<>(createOrderAsyncFunc));
            BiConsumer<com.ywt.gapi.nfyy.ConfirmRequest, StreamObserver<com.ywt.gapi.nfyy.ConfirmResponse>> confirmFunc = this::confirm;
            handlers.put(confirmMethod.getMethodName(), new UnaryStubMethodHandler<>(confirmFunc));
            BiConsumer<com.ywt.gapi.nfyy.ConfirmRequest, StreamObserver<com.ywt.gapi.nfyy.ConfirmResponse>> confirmAsyncFunc = syncToAsync(this::confirm);
            handlers.put(confirmProxyAsyncMethod.getMethodName(), new UnaryStubMethodHandler<>(confirmAsyncFunc));
            BiConsumer<com.ywt.gapi.nfyy.CancelOrderRequest, StreamObserver<com.ywt.gapi.nfyy.CancelOrderResponse>> cancelOrderFunc = this::cancelOrder;
            handlers.put(cancelOrderMethod.getMethodName(), new UnaryStubMethodHandler<>(cancelOrderFunc));
            BiConsumer<com.ywt.gapi.nfyy.CancelOrderRequest, StreamObserver<com.ywt.gapi.nfyy.CancelOrderResponse>> cancelOrderAsyncFunc = syncToAsync(this::cancelOrder);
            handlers.put(cancelOrderProxyAsyncMethod.getMethodName(), new UnaryStubMethodHandler<>(cancelOrderAsyncFunc));
            BiConsumer<com.ywt.gapi.nfyy.CancelRegRequest, StreamObserver<com.ywt.gapi.nfyy.CancelRegResponse>> cancelRegFunc = this::cancelReg;
            handlers.put(cancelRegMethod.getMethodName(), new UnaryStubMethodHandler<>(cancelRegFunc));
            BiConsumer<com.ywt.gapi.nfyy.CancelRegRequest, StreamObserver<com.ywt.gapi.nfyy.CancelRegResponse>> cancelRegAsyncFunc = syncToAsync(this::cancelReg);
            handlers.put(cancelRegProxyAsyncMethod.getMethodName(), new UnaryStubMethodHandler<>(cancelRegAsyncFunc));
            BiConsumer<com.ywt.gapi.nfyy.GetInspectionReportListRequest, StreamObserver<com.ywt.gapi.nfyy.GetInspectionReportListResponse>> getInspectionReportListFunc = this::getInspectionReportList;
            handlers.put(getInspectionReportListMethod.getMethodName(), new UnaryStubMethodHandler<>(getInspectionReportListFunc));
            BiConsumer<com.ywt.gapi.nfyy.GetInspectionReportListRequest, StreamObserver<com.ywt.gapi.nfyy.GetInspectionReportListResponse>> getInspectionReportListAsyncFunc = syncToAsync(this::getInspectionReportList);
            handlers.put(getInspectionReportListProxyAsyncMethod.getMethodName(), new UnaryStubMethodHandler<>(getInspectionReportListAsyncFunc));
            BiConsumer<com.ywt.gapi.nfyy.GetInspectionReportDetailRequest, StreamObserver<com.ywt.gapi.nfyy.GetInspectionReportDetailResponse>> getInspectionReportDetailFunc = this::getInspectionReportDetail;
            handlers.put(getInspectionReportDetailMethod.getMethodName(), new UnaryStubMethodHandler<>(getInspectionReportDetailFunc));
            BiConsumer<com.ywt.gapi.nfyy.GetInspectionReportDetailRequest, StreamObserver<com.ywt.gapi.nfyy.GetInspectionReportDetailResponse>> getInspectionReportDetailAsyncFunc = syncToAsync(this::getInspectionReportDetail);
            handlers.put(getInspectionReportDetailProxyAsyncMethod.getMethodName(), new UnaryStubMethodHandler<>(getInspectionReportDetailAsyncFunc));
            BiConsumer<com.ywt.gapi.nfyy.GetRegisteredRecordListRequest, StreamObserver<com.ywt.gapi.nfyy.GetRegisteredRecordListResponse>> getRegisteredRecordListFunc = this::getRegisteredRecordList;
            handlers.put(getRegisteredRecordListMethod.getMethodName(), new UnaryStubMethodHandler<>(getRegisteredRecordListFunc));
            BiConsumer<com.ywt.gapi.nfyy.GetRegisteredRecordListRequest, StreamObserver<com.ywt.gapi.nfyy.GetRegisteredRecordListResponse>> getRegisteredRecordListAsyncFunc = syncToAsync(this::getRegisteredRecordList);
            handlers.put(getRegisteredRecordListProxyAsyncMethod.getMethodName(), new UnaryStubMethodHandler<>(getRegisteredRecordListAsyncFunc));
            BiConsumer<com.ywt.gapi.nfyy.GetLaboratoryReportListRequest, StreamObserver<com.ywt.gapi.nfyy.GetLaboratoryReportListResponse>> getLaboratoryReportListFunc = this::getLaboratoryReportList;
            handlers.put(getLaboratoryReportListMethod.getMethodName(), new UnaryStubMethodHandler<>(getLaboratoryReportListFunc));
            BiConsumer<com.ywt.gapi.nfyy.GetLaboratoryReportListRequest, StreamObserver<com.ywt.gapi.nfyy.GetLaboratoryReportListResponse>> getLaboratoryReportListAsyncFunc = syncToAsync(this::getLaboratoryReportList);
            handlers.put(getLaboratoryReportListProxyAsyncMethod.getMethodName(), new UnaryStubMethodHandler<>(getLaboratoryReportListAsyncFunc));
            BiConsumer<com.ywt.gapi.nfyy.GetLaboratoryReportDetailRequest, StreamObserver<com.ywt.gapi.nfyy.GetLaboratoryReportDetailResponse>> getLaboratoryReportDetailFunc = this::getLaboratoryReportDetail;
            handlers.put(getLaboratoryReportDetailMethod.getMethodName(), new UnaryStubMethodHandler<>(getLaboratoryReportDetailFunc));
            BiConsumer<com.ywt.gapi.nfyy.GetLaboratoryReportDetailRequest, StreamObserver<com.ywt.gapi.nfyy.GetLaboratoryReportDetailResponse>> getLaboratoryReportDetailAsyncFunc = syncToAsync(this::getLaboratoryReportDetail);
            handlers.put(getLaboratoryReportDetailProxyAsyncMethod.getMethodName(), new UnaryStubMethodHandler<>(getLaboratoryReportDetailAsyncFunc));
            BiConsumer<com.ywt.gapi.nfyy.GetDoctorListNoGroupRequest, StreamObserver<com.ywt.gapi.nfyy.GetDoctorListNoGroupResponse>> getDoctorListNoGroupFunc = this::getDoctorListNoGroup;
            handlers.put(getDoctorListNoGroupMethod.getMethodName(), new UnaryStubMethodHandler<>(getDoctorListNoGroupFunc));
            BiConsumer<com.ywt.gapi.nfyy.GetDoctorListNoGroupRequest, StreamObserver<com.ywt.gapi.nfyy.GetDoctorListNoGroupResponse>> getDoctorListNoGroupAsyncFunc = syncToAsync(this::getDoctorListNoGroup);
            handlers.put(getDoctorListNoGroupProxyAsyncMethod.getMethodName(), new UnaryStubMethodHandler<>(getDoctorListNoGroupAsyncFunc));
            BiConsumer<com.ywt.gapi.nfyy.SavePatientCardRequest, StreamObserver<com.ywt.gapi.nfyy.SavePatientCardResponse>> savePatientCardFunc = this::savePatientCard;
            handlers.put(savePatientCardMethod.getMethodName(), new UnaryStubMethodHandler<>(savePatientCardFunc));
            BiConsumer<com.ywt.gapi.nfyy.SavePatientCardRequest, StreamObserver<com.ywt.gapi.nfyy.SavePatientCardResponse>> savePatientCardAsyncFunc = syncToAsync(this::savePatientCard);
            handlers.put(savePatientCardProxyAsyncMethod.getMethodName(), new UnaryStubMethodHandler<>(savePatientCardAsyncFunc));




            return new StubInvoker<>(this, url, NfyyService.class, handlers);
        }


        @Override
        public com.ywt.gapi.nfyy.GetDoctorListResponse getDoctorList(com.ywt.gapi.nfyy.GetDoctorListRequest request){
            throw unimplementedMethodException(getDoctorListMethod);
        }

        @Override
        public com.ywt.gapi.nfyy.GetScheduleListResponse getScheduleList(com.ywt.gapi.nfyy.GetScheduleListRequest request){
            throw unimplementedMethodException(getScheduleListMethod);
        }

        @Override
        public com.ywt.gapi.nfyy.GetScheduleTimeInfoResponse getScheduleTimeInfo(com.ywt.gapi.nfyy.GetScheduleTimeInfoRequest request){
            throw unimplementedMethodException(getScheduleTimeInfoMethod);
        }

        @Override
        public com.ywt.gapi.nfyy.GetReportListResponse getReportList(com.ywt.gapi.nfyy.GetReportListRequest request){
            throw unimplementedMethodException(getReportListMethod);
        }

        @Override
        public com.ywt.gapi.nfyy.GetPatientInfoResponse getPatientInfo(com.ywt.gapi.nfyy.GetPatientInfoRequest request){
            throw unimplementedMethodException(getPatientInfoMethod);
        }

        @Override
        public com.ywt.gapi.nfyy.GetQueueInfoResponse getQueueInfo(com.ywt.gapi.nfyy.GetQueueInfoRequest request){
            throw unimplementedMethodException(getQueueInfoMethod);
        }

        @Override
        public com.ywt.gapi.nfyy.GetReportDetailResponse getReportDetail(com.ywt.gapi.nfyy.GetReportDetailRequest request){
            throw unimplementedMethodException(getReportDetailMethod);
        }

        @Override
        public com.ywt.gapi.nfyy.GetClinicInfoResponse getClinicInfo(com.ywt.gapi.nfyy.GetClinicInfoRequest request){
            throw unimplementedMethodException(getClinicInfoMethod);
        }

        @Override
        public com.ywt.gapi.nfyy.GetMedicalCaseDetailResponse getMedicalCaseDetail(com.ywt.gapi.nfyy.GetMedicalCaseDetailRequest request){
            throw unimplementedMethodException(getMedicalCaseDetailMethod);
        }

        @Override
        public com.ywt.gapi.nfyy.CreateOrderResponse createOrder(com.ywt.gapi.nfyy.CreateOrderRequest request){
            throw unimplementedMethodException(createOrderMethod);
        }

        @Override
        public com.ywt.gapi.nfyy.ConfirmResponse confirm(com.ywt.gapi.nfyy.ConfirmRequest request){
            throw unimplementedMethodException(confirmMethod);
        }

        @Override
        public com.ywt.gapi.nfyy.CancelOrderResponse cancelOrder(com.ywt.gapi.nfyy.CancelOrderRequest request){
            throw unimplementedMethodException(cancelOrderMethod);
        }

        @Override
        public com.ywt.gapi.nfyy.CancelRegResponse cancelReg(com.ywt.gapi.nfyy.CancelRegRequest request){
            throw unimplementedMethodException(cancelRegMethod);
        }

        @Override
        public com.ywt.gapi.nfyy.GetInspectionReportListResponse getInspectionReportList(com.ywt.gapi.nfyy.GetInspectionReportListRequest request){
            throw unimplementedMethodException(getInspectionReportListMethod);
        }

        @Override
        public com.ywt.gapi.nfyy.GetInspectionReportDetailResponse getInspectionReportDetail(com.ywt.gapi.nfyy.GetInspectionReportDetailRequest request){
            throw unimplementedMethodException(getInspectionReportDetailMethod);
        }

        @Override
        public com.ywt.gapi.nfyy.GetRegisteredRecordListResponse getRegisteredRecordList(com.ywt.gapi.nfyy.GetRegisteredRecordListRequest request){
            throw unimplementedMethodException(getRegisteredRecordListMethod);
        }

        @Override
        public com.ywt.gapi.nfyy.GetLaboratoryReportListResponse getLaboratoryReportList(com.ywt.gapi.nfyy.GetLaboratoryReportListRequest request){
            throw unimplementedMethodException(getLaboratoryReportListMethod);
        }

        @Override
        public com.ywt.gapi.nfyy.GetLaboratoryReportDetailResponse getLaboratoryReportDetail(com.ywt.gapi.nfyy.GetLaboratoryReportDetailRequest request){
            throw unimplementedMethodException(getLaboratoryReportDetailMethod);
        }

        @Override
        public com.ywt.gapi.nfyy.GetDoctorListNoGroupResponse getDoctorListNoGroup(com.ywt.gapi.nfyy.GetDoctorListNoGroupRequest request){
            throw unimplementedMethodException(getDoctorListNoGroupMethod);
        }

        @Override
        public com.ywt.gapi.nfyy.SavePatientCardResponse savePatientCard(com.ywt.gapi.nfyy.SavePatientCardRequest request){
            throw unimplementedMethodException(savePatientCardMethod);
        }





        @Override
        public final ServiceDescriptor getServiceDescriptor() {
            return serviceDescriptor;
        }
        private RpcException unimplementedMethodException(StubMethodDescriptor methodDescriptor) {
            return TriRpcStatus.UNIMPLEMENTED.withDescription(String.format("Method %s is unimplemented",
                "/" + serviceDescriptor.getInterfaceName() + "/" + methodDescriptor.getMethodName())).asException();
        }
    }

}
