Difference between revisions of "Necko"

From CDOT Wiki
Jump to: navigation, search
(Necko)
Line 1: Line 1:
== Necko ==
+
''' Necko '''
  
Necko is a platform-independent API for several layers of networking (transport to presentation).
 
  
 +
== Short Description ==
 +
Necko is a platform-independent API for several layers of networking (transport to presentation) that is built on XPCOM. It is currently in use in Mozilla and all of its clients.
 +
 +
== Longer Description ==
 +
* Built on XPCOM and NSPR - Not a stand-alone library
 +
* Implemented mainly in C++
 +
* Continually evolving (quite drastically!)
 +
* Originally located at mozilla/network. This version is now completely deprecated.
 +
* Now located at [http://lxr.mozilla.org/seamonkey/source/netwerk/ mozilla/netwerk].
 +
 +
== Important Interfaces ==
 
Necko has several important pieces:
 
Necko has several important pieces:
 
* nsIOService
 
* nsIOService
Line 11: Line 21:
  
 
=== nsIOService ===
 
=== nsIOService ===
* Main necko service
+
* Provides network utility functions.
* Manages protocol handlers
+
* Manages nsIProtocolHandler implementations.
* Creates URI objects from URI strings
+
* Creates nsIURI objects from URI strings.
  
 
=== nsIURI ===
 
=== nsIURI ===
* is an object that represents a URI.
+
* Represents a URI (scheme://host/path).
* getters/setters for parts of the URI
+
* Parent class of nsIURL, which is implemeted by nsStandardURL, which handles standard URL operations.
 +
 
 +
=== nsIProtocolHandler ===
 +
* Manages a single protocol based on a scheme (e.g. http).
 +
* Uses nsIURI instance to create nsIChannel.
 +
 
 +
=== nsIChannel ===
 +
* Uses nsIURI information to create logical connection to resource.
 +
 
 +
=== nsIStreamListener ===
 +
* Listener for connection start, arrival of data, and stop request.
 +
 
 +
=== nsITransport ===
 +
* Represents physical connection (e.g. file descriptor, socket).

Revision as of 21:42, 5 October 2006

Necko


Short Description

Necko is a platform-independent API for several layers of networking (transport to presentation) that is built on XPCOM. It is currently in use in Mozilla and all of its clients.

Longer Description

  • Built on XPCOM and NSPR - Not a stand-alone library
  • Implemented mainly in C++
  • Continually evolving (quite drastically!)
  • Originally located at mozilla/network. This version is now completely deprecated.
  • Now located at mozilla/netwerk.

Important Interfaces

Necko has several important pieces:

  • nsIOService
  • nsIURI
  • nsIChannel
  • nsIProtocolHandler
  • nsITransport

nsIOService

  • Provides network utility functions.
  • Manages nsIProtocolHandler implementations.
  • Creates nsIURI objects from URI strings.

nsIURI

  • Represents a URI (scheme://host/path).
  • Parent class of nsIURL, which is implemeted by nsStandardURL, which handles standard URL operations.

nsIProtocolHandler

  • Manages a single protocol based on a scheme (e.g. http).
  • Uses nsIURI instance to create nsIChannel.

nsIChannel

  • Uses nsIURI information to create logical connection to resource.

nsIStreamListener

  • Listener for connection start, arrival of data, and stop request.

nsITransport

  • Represents physical connection (e.g. file descriptor, socket).