Categories:
Audio (13)
Biotech (29)
Bytecode (36)
Database (77)
Framework (7)
Game (7)
General (507)
Graphics (53)
I/O (35)
IDE (2)
JAR Tools (101)
JavaBeans (21)
JDBC (121)
JDK (426)
JSP (20)
Logging (108)
Mail (58)
Messaging (8)
Network (84)
PDF (97)
Report (7)
Scripting (84)
Security (32)
Server (121)
Servlet (26)
SOAP (24)
Testing (54)
Web (15)
XML (309)
Collections:
Other Resources:
JDK 11 jdk.httpserver.jmod - HTTP Server Module
JDK 11 jdk.httpserver.jmod is the JMOD file for JDK 11 HTTP Server module.
JDK 11 HTTP Server module compiled class files are stored in \fyicenter\jdk-11.0.1\jmods\jdk.httpserver.jmod.
JDK 11 HTTP Server module compiled class files are also linked and stored in the \fyicenter\jdk-11.0.1\lib\modules JImage file.
JDK 11 HTTP Server module source code files are stored in \fyicenter\jdk-11.0.1\lib\src.zip\jdk.httpserver.
You can click and view the content of each source code file in the list below.
✍: FYIcenter
⏎ sun/net/httpserver/ChunkedInputStream.java
/* * Copyright (c) 2005, 2017, Oracle and/or its affiliates. All rights reserved. * ORACLE PROPRIETARY/CONFIDENTIAL. Use is subject to license terms. * * * * * * * * * * * * * * * * * * * * */ package sun.net.httpserver; import java.io.*; import java.net.*; import com.sun.net.httpserver.*; import com.sun.net.httpserver.spi.*; class ChunkedInputStream extends LeftOverInputStream { ChunkedInputStream (ExchangeImpl t, InputStream src) { super (t, src); } private int remaining; /* true when a chunk header needs to be read */ private boolean needToReadHeader = true; final static char CR = '\r'; final static char LF = '\n'; /* * Maximum chunk header size of 2KB + 2 bytes for CRLF */ private final static int MAX_CHUNK_HEADER_SIZE = 2050; private int numeric (char[] arr, int nchars) throws IOException { assert arr.length >= nchars; int len = 0; for (int i=0; i<nchars; i++) { char c = arr[i]; int val=0; if (c>='0' && c <='9') { val = c - '0'; } else if (c>='a' && c<= 'f') { val = c - 'a' + 10; } else if (c>='A' && c<= 'F') { val = c - 'A' + 10; } else { throw new IOException ("invalid chunk length"); } len = len * 16 + val; } return len; } /* read the chunk header line and return the chunk length * any chunk extensions are ignored */ private int readChunkHeader () throws IOException { boolean gotCR = false; int c; char[] len_arr = new char [16]; int len_size = 0; boolean end_of_len = false; int read = 0; while ((c=in.read())!= -1) { char ch = (char) c; read++; if ((len_size == len_arr.length -1) || (read > MAX_CHUNK_HEADER_SIZE)) { throw new IOException ("invalid chunk header"); } if (gotCR) { if (ch == LF) { int l = numeric (len_arr, len_size); return l; } else { gotCR = false; } if (!end_of_len) { len_arr[len_size++] = ch; } } else { if (ch == CR) { gotCR = true; } else if (ch == ';') { end_of_len = true; } else if (!end_of_len) { len_arr[len_size++] = ch; } } } throw new IOException ("end of stream reading chunk header"); } protected int readImpl (byte[]b, int off, int len) throws IOException { if (eof) { return -1; } if (needToReadHeader) { remaining = readChunkHeader(); if (remaining == 0) { eof = true; consumeCRLF(); t.getServerImpl().requestCompleted (t.getConnection()); return -1; } needToReadHeader = false; } if (len > remaining) { len = remaining; } int n = in.read(b, off, len); if (n > -1) { remaining -= n; } if (remaining == 0) { needToReadHeader = true; consumeCRLF(); } if (n < 0 && !eof) throw new IOException("connection closed before all data received"); return n; } private void consumeCRLF () throws IOException { char c; c = (char)in.read(); /* CR */ if (c != CR) { throw new IOException ("invalid chunk end"); } c = (char)in.read(); /* LF */ if (c != LF) { throw new IOException ("invalid chunk end"); } } /** * returns the number of bytes available to read in the current chunk * which may be less than the real amount, but we'll live with that * limitation for the moment. It only affects potential efficiency * rather than correctness. */ public int available () throws IOException { if (eof || closed) { return 0; } int n = in.available(); return n > remaining? remaining: n; } /* called after the stream is closed to see if bytes * have been read from the underlying channel * and buffered internally */ public boolean isDataBuffered () throws IOException { assert eof; return in.available() > 0; } public boolean markSupported () {return false;} public void mark (int l) { } public void reset () throws IOException { throw new IOException ("mark/reset not supported"); } }
⏎ sun/net/httpserver/ChunkedInputStream.java
Or download all of them as a single archive file:
File name: jdk.httpserver-11.0.1-src.zip File size: 66350 bytes Release date: 2018-11-04 Download
⇒ JDK 11 jdk.internal.ed.jmod - Internal Editor Module
2020-02-29, 16496👍, 0💬
Popular Posts:
JDK 6 tools.jar is the JAR file for JDK 6 tools. It contains Java classes to support different JDK t...
Joda-Time provides a quality replacement for the Java date and time classes. The design allows for m...
How to download and install JDK (Java Development Kit) 7? If you want to write Java applications, yo...
What Is jtds-1.2.2.jar? jtds-1.2.2.jar is the JAR files of jTDS Java library 1.2.2, which is a JDBC ...
JRE 8 rt.jar is the JAR file for JRE 8 RT (Runtime) libraries. JRE (Java Runtime) 8 is the runtime e...