dummy

0.1 框架图

              ClientNamenodeProtocol
                     |
                     |
                     o---> newReflectiveBlockingService  -----> BlockingService
                     |                                                |
                     |                                                |
                     o---> newBlockingStub                            o--> getDescriptorForType()
                     |        |                                       |
                     |        |new                                    o--> getRequestPrototype()
                     |        |                                       |
                     |        +----> BlockingStub                     o--> getResponsePrototype()
                     |                   △                            |
                     |                   |                            o--> callBlockingMethod()
                     |                   |                            |        |
                     |            BlockingInterface                   |        |
                     |                |  △                            |        o--> impl.delete()
                     |                |  |
                     |                |  |
                     |     delete <-- o  |
                     |                |  +---------------------------------------+
                                                                                 |
                                                                                 |
                                                                                 |
                 ClientProtocol        +----------------------------> ClientNamenodeProtocolPB
                      △                |                                         △
                      |                |rpcProxy                                 |
                      |                |                                         |
                      |                ◆                                         |
         ClientNamenodeProtocolTranslatorPB                  ClientNamenodeProtocolServerSideTranslatorPB
               (Client Proxy)                                               (Server Impl)
                      |                                                          |
                      | 1                                                   5    |
                      o---> delete()                                delete() <---o
                      |        |                                       ^         |
                      |        |  2                                    |         |
                               o---> rpcProxy.delete()                 |
                                                |                      |
                                                |                      |
                               +----------------+                 +----+
                               |                                  |
    +----------------          |                                  |                    -----------------+
    |                          |                                  |                                     |
    |                          |                                  |                                     |
    |   RpcInvocationHandler   |                                  |                RPC.Server           |
    |              △           |                                  |                △                    |
    |               \          |                                  |               /                     |
    |                \         |                                  |              /                      |
    |                 \        |                                  |             /                       |
    |                Invoker   |                                  |       Server                        |
    |                  |       |                                  |        |                            |
    |                  |   3   v                                  |   4    |                            |
    |                  o---> invoke()                           call() <---o                            |
    |                  |                                                   |                            |
    |                  |                                                   |                            |
    |                                                                                                   |
    +---------------------------------------------------------------------------------------------------+
                                              ProtobufRpcEngine