comparison src/org/eclipse/jetty/http/HttpGenerator.java @ 1019:f126d30e04a4

start replacing BufferCache with StringCache
author Franklin Schmidt <fschmidt@gmail.com>
date Mon, 31 Oct 2016 03:33:42 -0600
parents 83cc6e05a58f
children 6be43ef1eb96
comparison
equal deleted inserted replaced
1018:4dc1e1a18661 1019:f126d30e04a4
51 Buffer _responseLine; 51 Buffer _responseLine;
52 } 52 }
53 private static final Status[] __status = new Status[HttpStatus.MAX_CODE+1]; 53 private static final Status[] __status = new Status[HttpStatus.MAX_CODE+1];
54 static 54 static
55 { 55 {
56 int versionLength=HttpVersions.HTTP_1_1_BUFFER.length(); 56 final int versionLength=HttpVersions.HTTP_1_1_BYTES.length;
57 57
58 for (int i=0;i<__status.length;i++) 58 for (int i=0;i<__status.length;i++)
59 { 59 {
60 HttpStatus.Code code = HttpStatus.getCode(i); 60 HttpStatus.Code code = HttpStatus.getCode(i);
61 if (code==null) 61 if (code==null)
62 continue; 62 continue;
63 String reason=code.getMessage(); 63 String reason=code.getMessage();
64 byte[] bytes=new byte[versionLength+5+reason.length()+2]; 64 byte[] bytes=new byte[versionLength+5+reason.length()+2];
65 HttpVersions.HTTP_1_1_BUFFER.peek(0,bytes, 0, versionLength); 65 // HttpVersions.HTTP_1_1_BUFFER.peek(0,bytes, 0, versionLength);
66 System.arraycopy(HttpVersions.HTTP_1_1_BYTES,0,bytes,0,versionLength);
66 bytes[versionLength+0]=' '; 67 bytes[versionLength+0]=' ';
67 bytes[versionLength+1]=(byte)('0'+i/100); 68 bytes[versionLength+1]=(byte)('0'+i/100);
68 bytes[versionLength+2]=(byte)('0'+(i%100)/10); 69 bytes[versionLength+2]=(byte)('0'+(i%100)/10);
69 bytes[versionLength+3]=(byte)('0'+(i%10)); 70 bytes[versionLength+3]=(byte)('0'+(i%10));
70 bytes[versionLength+4]=' '; 71 bytes[versionLength+4]=' ';
347 { 348 {
348 _header.put(_method); 349 _header.put(_method);
349 _header.put((byte)' '); 350 _header.put((byte)' ');
350 _header.put(_uri.getBytes("UTF-8")); // TODO check 351 _header.put(_uri.getBytes("UTF-8")); // TODO check
351 _header.put((byte)' '); 352 _header.put((byte)' ');
352 _header.put(_version==HttpVersions.HTTP_1_0_ORDINAL?HttpVersions.HTTP_1_0_BUFFER:HttpVersions.HTTP_1_1_BUFFER); 353 _header.put(_version==HttpVersions.HTTP_1_0_ORDINAL?HttpVersions.HTTP_1_0_BYTES:HttpVersions.HTTP_1_1_BYTES);
353 _header.put(HttpTokens.CRLF); 354 _header.put(HttpTokens.CRLF);
354 } 355 }
355 } 356 }
356 else 357 else
357 { 358 {
371 // add response line 372 // add response line
372 Status status = _status<__status.length?__status[_status]:null; 373 Status status = _status<__status.length?__status[_status]:null;
373 374
374 if (status==null) 375 if (status==null)
375 { 376 {
376 _header.put(HttpVersions.HTTP_1_1_BUFFER); 377 _header.put(HttpVersions.HTTP_1_1_BYTES);
377 _header.put((byte) ' '); 378 _header.put((byte) ' ');
378 _header.put((byte) ('0' + _status / 100)); 379 _header.put((byte) ('0' + _status / 100));
379 _header.put((byte) ('0' + (_status % 100) / 10)); 380 _header.put((byte) ('0' + (_status % 100) / 10));
380 _header.put((byte) ('0' + (_status % 10))); 381 _header.put((byte) ('0' + (_status % 10)));
381 _header.put((byte) ' '); 382 _header.put((byte) ' ');