Exemple #1
0
 /// <exception cref="System.IO.IOException"/>
 public virtual void ReportBadBlocks(LocatedBlock[] blocks)
 {
     DatanodeProtocolProtos.ReportBadBlocksRequestProto.Builder builder = DatanodeProtocolProtos.ReportBadBlocksRequestProto
                                                                          .NewBuilder();
     for (int i = 0; i < blocks.Length; i++)
     {
         builder.AddBlocks(i, PBHelper.Convert(blocks[i]));
     }
     DatanodeProtocolProtos.ReportBadBlocksRequestProto req = ((DatanodeProtocolProtos.ReportBadBlocksRequestProto
                                                                )builder.Build());
     try
     {
         rpcProxy.ReportBadBlocks(NullController, req);
     }
     catch (ServiceException se)
     {
         throw ProtobufHelper.GetRemoteException(se);
     }
 }
        /// <exception cref="Com.Google.Protobuf.ServiceException"/>
        public virtual DatanodeProtocolProtos.ReportBadBlocksResponseProto ReportBadBlocks
            (RpcController controller, DatanodeProtocolProtos.ReportBadBlocksRequestProto request
            )
        {
            IList <HdfsProtos.LocatedBlockProto> lbps = request.GetBlocksList();

            LocatedBlock[] blocks = new LocatedBlock[lbps.Count];
            for (int i = 0; i < lbps.Count; i++)
            {
                blocks[i] = PBHelper.Convert(lbps[i]);
            }
            try
            {
                impl.ReportBadBlocks(blocks);
            }
            catch (IOException e)
            {
                throw new ServiceException(e);
            }
            return(VoidReportBadBlockResponse);
        }