URL
https://opencores.org/ocsvn/scarts/scarts/trunk
Subversion Repositories scarts
[/] [scarts/] [trunk/] [toolchain/] [scarts-gcc/] [gcc-4.1.1/] [libjava/] [classpath/] [doc/] [www.gnu.org/] [inetlib.wml] - Rev 14
Compare with Previous | Blame | View Log
#include "include/layout.wml"<set-var last-modified-author="prk"><subject "GNU Classpath inetlib"><box><boxtitle><a name="main">Classpath::inetlib</a></boxtitle><boxitem><en><p>GNU inetlib is a library of clients for common internet protocols.The following protocols are currently supported:</p><ul><li>Hypertext Transfer Protocol (HTTP)</li><li>File Transfer Protocol (FTP)</li><li>Simple Mail Transfer Protocol (SMTP)</li><li>Internet Message Access Protocol (IMAP)</li><li>Post Office Protocol (POP)</li><li>Network News Transfer Protocol (NNTP)</li><li>Lightweight Directory Access Protocol (LDAP) (alpha)</li><li>Gopher</li><li>Finger</li></ul><p>The inetlib library is similar in intent to the Python internet protocolslibrary - the API is as close as possible to the intent of the underlyingprotocol design. This allows for very efficient coding of user agents.</p><p>Additionally, inetlib includes URLStreamHandler implementations for someof the protocols. These can be used to add support for the correspondingURL scheme to the java.net.URL class.</p></en></boxitem><boxtitle><a name="http">Classpath::inetlib::HTTP</a></boxtitle><boxitem><en><p>The inetlib HTTP client supports HTTP/1.1 as described in RFC 2616, withthe following features:</p><ul><li>Persistent connections</li><li>Basic and Digest authentication (RFC 2617)</li><li>HTTPS</li><li>HTTP proxies</li><li>HTTP/1.0 compatibility</li><li>Support for WebDAV methods and other HTTP extensions</li><li>Automatic decoding of the chunked transfer-coding</li><li>Parsing of HTTP date headers</li><li>Support for the 100-continue expectation</li></ul><p>The design of the API is similar to the<createlink url="http://www.webdav.org/neon/" name="neon">WebDAV/HTTP library. A logical connection to the server is instantiated,and multiple requests can be issued on this connection. Each request hasan atomic <code>dispatch</code> method which returns the response.All I/O, authentication, etc is handled by registering callback objectswith the request prior to dispatch, which are notified during the dispatchprocedure as necessary. Simple byte-array content callbacks are suppliedwhich can manage any request/response content that fits in available memory.</p><p>An URL stream handler is provided, supporting the full HttpURLConnectionspecification.</p></en></boxitem><boxtitle><a name="ftp">Classpath::inetlib::FTP</a></boxtitle><boxitem><en><p>The inetlib FTP client supports both active and passive mode FTP and alltransfer modes and representation types. The client implements RFC 959,with the following exceptions and limitations:</p><ul><li>Only one concurrent transfer connection is supported</li><li>The STAT, HELP, SITE, SMNT, and ACCT commands are not supported</li><li>The TYPE command does not allow alternatives to the default bytesize(Non-print), and local bytesize is not supported</li></ul><p>An URL stream handler is provided, which allows the setting of transfer modesand representation types by means of the <code>setRequestProperty</code>method.</p></en></boxitem><boxtitle><a name="smtp">Classpath::inetlib::SMTP</a></boxtitle><boxitem><en><p>The inetlib SMTP client fully implements RFC 2821 including the ESMTPextension standard.</p><p>The client also implements TLS negotiation (RFC 3207) and SASLauthentication (RFC 2554).</p></en></boxitem><boxtitle><a name="imap">Classpath::inetlib::IMAP</a></boxtitle><boxitem><en><p>The inetlib IMAP client fully implements IMAP4rev1 and includes thefollowing features:</p><ul><li>Extensible authentication using any available SASL mechanism</li><li>TLS negotiation (RFC 2595)</li><li>Automatic UTF-7imap folder name decoding/encoding</li><li>IMAP over SSL</li></ul></en></boxitem><boxtitle><a name="pop3">Classpath::inetlib::POP3</a></boxtitle><boxitem><en><p>The inetlib POP client implements version 3 only, as specified in RFC 1939,with the exception of the no-arg LIST and UIDL commands (use STAT followedby multiple LIST and/or UIDL instead).It supports the following features:</p><ul><li>The POP3 extension mechanism CAPA</li><li>Extensible authentication using any available SASL mechanism viathe AUTH mechanism (RFC 1734)</li><li>TLS negotiation (RFC 2595)</li></ul></en></boxitem><boxtitle><a name="nntp">Classpath::inetlib::NNTP</a></boxtitle><boxitem><en><p>The inetlib NNTP client implements all of RFC 977, and many of the commonNNTP extensions specified in RFC 2980. It supports the XOVER and XHDRcommands, and simple authentication.</p><p>There is also a newsrc mechanism for storing newsgroup subscriptions and readarticles in an implementation-independent manner, including a file-basedimplementation.</p></en></boxitem></box>
