package com.cxy.redisclient.integration.protocol; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStream; import java.io.InputStreamReader; public class MultiBulkParser extends ReplyParser { @Override public Result parse(String head, InputStream reader,String CODEC) throws IOException { int replys = Integer.parseInt(head.substring(1, head.length())); if(replys == -1) throw new NullReplyException("NULL Multi Bulk Reply"); String result = ""; for(int i = 0; i < replys; i ++){ BufferedReader charReader = new BufferedReader(new InputStreamReader(reader, CODEC)) ; String subHead = charReader.readLine(); ReplyParser parser = ReplyParser.getParser(subHead); result += parser.parse(subHead, reader, CODEC).getResult(); result += "\n"; } return new Result(result, ResultType.MultiBulk); } }