59 int code;
60 String response;
61
62 serverResponse.setSize(0);
63 while (true) {
64 while ((c = serverInput.read()) != -1) {
65 if (c == '\r') {
66 if ((c = serverInput.read()) != '\n')
67 replyBuf.append('\r');
68 }
69 replyBuf.append((char)c);
70 if (c == '\n')
71 break;
72 }
73 response = replyBuf.toString();
74 replyBuf.setLength(0);
75 if (debug) {
76 System.out.print(response);
77 }
78
79 if (response.length() == 0) {
80 code = -1;
81 } else {
82 try {
83 code = Integer.parseInt(response, 0, 3, 10);
84 } catch (NumberFormatException e) {
85 code = -1;
86 } catch (IndexOutOfBoundsException e) {
87 /* this line doesn't contain a response code, so
88 we just completely ignore it */
89 continue;
90 }
91 }
92 serverResponse.addElement(response);
93 if (continuingCode != -1) {
94 /* we've seen a XXX- sequence */
95 if (code != continuingCode ||
96 (response.length() >= 4 && response.charAt(3) == '-')) {
97 continue;
98 } else {
99 /* seen the end of code sequence */
|
59 int code;
60 String response;
61
62 serverResponse.setSize(0);
63 while (true) {
64 while ((c = serverInput.read()) != -1) {
65 if (c == '\r') {
66 if ((c = serverInput.read()) != '\n')
67 replyBuf.append('\r');
68 }
69 replyBuf.append((char)c);
70 if (c == '\n')
71 break;
72 }
73 response = replyBuf.toString();
74 replyBuf.setLength(0);
75 if (debug) {
76 System.out.print(response);
77 }
78
79 if (response.isEmpty()) {
80 code = -1;
81 } else {
82 try {
83 code = Integer.parseInt(response, 0, 3, 10);
84 } catch (NumberFormatException e) {
85 code = -1;
86 } catch (IndexOutOfBoundsException e) {
87 /* this line doesn't contain a response code, so
88 we just completely ignore it */
89 continue;
90 }
91 }
92 serverResponse.addElement(response);
93 if (continuingCode != -1) {
94 /* we've seen a XXX- sequence */
95 if (code != continuingCode ||
96 (response.length() >= 4 && response.charAt(3) == '-')) {
97 continue;
98 } else {
99 /* seen the end of code sequence */
|