/// <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); }