/// <exception cref="System.IO.IOException"/>
 public virtual BlocksWithLocations GetBlocks(DatanodeInfo datanode, long size)
 {
     NamenodeProtocolProtos.GetBlocksRequestProto req = ((NamenodeProtocolProtos.GetBlocksRequestProto
                                                          )NamenodeProtocolProtos.GetBlocksRequestProto.NewBuilder().SetDatanode(PBHelper.
                                                                                                                                 Convert((DatanodeID)datanode)).SetSize(size).Build());
     try
     {
         return(PBHelper.Convert(rpcProxy.GetBlocks(NullController, req).GetBlocks()));
     }
     catch (ServiceException e)
     {
         throw ProtobufHelper.GetRemoteException(e);
     }
 }
Пример #2
0
        /// <exception cref="Com.Google.Protobuf.ServiceException"/>
        public virtual NamenodeProtocolProtos.GetBlocksResponseProto GetBlocks(RpcController
                                                                               unused, NamenodeProtocolProtos.GetBlocksRequestProto request)
        {
            DatanodeInfo        dnInfo = new DatanodeInfo(PBHelper.Convert(request.GetDatanode()));
            BlocksWithLocations blocks;

            try
            {
                blocks = impl.GetBlocks(dnInfo, request.GetSize());
            }
            catch (IOException e)
            {
                throw new ServiceException(e);
            }
            return((NamenodeProtocolProtos.GetBlocksResponseProto)NamenodeProtocolProtos.GetBlocksResponseProto
                   .NewBuilder().SetBlocks(PBHelper.Convert(blocks)).Build());
        }