You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@river.apache.org by bu...@apache.org on 2010/12/24 22:44:20 UTC

svn commit: r781561 [2/7] - /websites/staging/river/trunk/content/river/doc/api/com/sun/jini/discovery/

Added: websites/staging/river/trunk/content/river/doc/api/com/sun/jini/discovery/Discovery.html
==============================================================================
--- websites/staging/river/trunk/content/river/doc/api/com/sun/jini/discovery/Discovery.html (added)
+++ websites/staging/river/trunk/content/river/doc/api/com/sun/jini/discovery/Discovery.html Fri Dec 24 21:44:20 2010
@@ -0,0 +1,844 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.5.0_15) on Mon Mar 08 17:45:48 EST 2010 -->
+<TITLE>
+Discovery (Apache River v2.1.2-SNAPSHOT API Documentation)
+</TITLE>
+
+<META NAME="keywords" CONTENT="com.sun.jini.discovery.Discovery class">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+    parent.document.title="Discovery (Apache River v2.1.2-SNAPSHOT API Documentation)";
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+  <TR ALIGN="center" VALIGN="top">
+  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+  <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
+  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="class-use/Discovery.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
+  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+  </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="../../../../com/sun/jini/discovery/DelayedMulticastRequestDecoder.html" title="interface in com.sun.jini.discovery"><B>PREV CLASS</B></A>&nbsp;
+&nbsp;<A HREF="../../../../com/sun/jini/discovery/DiscoveryConstraints.html" title="class in com.sun.jini.discovery"><B>NEXT CLASS</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+  <A HREF="../../../../index.html?com/sun/jini/discovery/Discovery.html" target="_top"><B>FRAMES</B></A>  &nbsp;
+&nbsp;<A HREF="Discovery.html" target="_top"><B>NO FRAMES</B></A>  &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+  <!--
+  if(window==top) {
+    document.writeln('<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+  }
+  //-->
+</SCRIPT>
+<NOSCRIPT>
+  <A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+<TR>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+  SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;<A HREF="#field_summary">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+DETAIL:&nbsp;<A HREF="#field_detail">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<!-- ======== START OF CLASS DATA ======== -->
+<H2>
+<FONT SIZE="-1">
+com.sun.jini.discovery</FONT>
+<BR>
+Class Discovery</H2>
+<PRE>
+<A HREF="http://java.sun.com/j2se/1.4.2/docs/api/java/lang/Object.html" title="class or interface in java.lang">java.lang.Object</A>
+  <IMG SRC="../../../../resources/inherit.gif" ALT="extended by "><B>com.sun.jini.discovery.Discovery</B>
+</PRE>
+<HR>
+<DL>
+<DT><PRE>public abstract class <B>Discovery</B><DT>extends <A HREF="http://java.sun.com/j2se/1.4.2/docs/api/java/lang/Object.html" title="class or interface in java.lang">Object</A></DL>
+</PRE>
+
+<P>
+Class providing methods for participating in versions 1 and 2 of the
+ discovery protocol. <p>
+
+ <b><font size="+1">Logging</font></b> <p>
+
+ This implementation uses the <A HREF="http://java.sun.com/j2se/1.4.2/docs/api/java/util/logging/Logger.html" title="class or interface in java.util.logging"><CODE>Logger</CODE></A>s named
+ <code>com.sun.jini.discovery.DiscoveryV1</code> and
+ <code>com.sun.jini.discovery.DiscoveryV2</code> to log information at the
+ following logging levels: <p>
+
+ <table border="1" cellpadding="5"
+          summary="Describes logging performed by the
+                   Discovery class to the DiscoveryV1 logger at various
+                   logging levels">
+
+ <caption halign="center" valign="top"><b><code>
+            com.sun.jini.discovery.DiscoveryV1</code></b></caption>
+
+ <tr> <th scope="col"> Level <th scope="col"> Description
+
+ <tr> <td> <A HREF="http://java.sun.com/j2se/1.4.2/docs/api/java/util/logging/Level.html#FINEST" title="class or interface in java.util.logging"><CODE>FINEST</CODE></A>
+        <td> Encoding and decoding of discovery protocol version 1 multicast
+             requests, multicast announcements, and unicast responses
+
+ </table> <p>
+
+ <table border="1" cellpadding="5"
+          summary="Describes logging performed by the
+                   Discovery class to the DiscoveryV2 logger at various logging
+                   levels">
+
+ <caption halign="center" valign="top"><b><code>
+            com.sun.jini.discovery.DiscoveryV2</code></b></caption>
+
+ <tr> <th scope="col"> Level <th scope="col"> Description
+
+ <tr> <td> <A HREF="http://java.sun.com/j2se/1.4.2/docs/api/java/util/logging/Level.html#WARNING" title="class or interface in java.util.logging"><CODE>WARNING</CODE></A>
+        <td> Truncation of unicast request format ID list due to length;
+             discovery format providers that are unusable or have conflicting
+             discovery format IDs
+
+ <tr> <td> <A HREF="../../../../com/sun/jini/logging/Levels.html#HANDLED"><CODE>HANDLED</CODE></A>
+        <td> Constraint check failures encountered during the unicast discovery
+             handshake when determining a suitable discovery format to use
+
+ <tr> <td> <A HREF="http://java.sun.com/j2se/1.4.2/docs/api/java/util/logging/Level.html#FINEST" title="class or interface in java.util.logging"><CODE>FINEST</CODE></A>
+        <td> Encoding and decoding of discovery protocol version 2 multicast
+             requests, multicast announcements, and unicast responses; also,
+             access of <code>Discovery</code> instances implementing protocol
+             version 2
+
+ </table>
+<P>
+
+<P>
+<DL>
+<DT><B>Since:</B></DT>
+  <DD>2.0</DD>
+<DT><B>Author:</B></DT>
+  <DD>Sun Microsystems, Inc.</DD>
+</DL>
+<HR>
+
+<P>
+<!-- =========== FIELD SUMMARY =========== -->
+
+<A NAME="field_summary"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+<B>Field Summary</B></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>static&nbsp;int</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../com/sun/jini/discovery/Discovery.html#PROTOCOL_VERSION_1">PROTOCOL_VERSION_1</A></B></CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The version number for discovery protocol version 1.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>static&nbsp;int</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../com/sun/jini/discovery/Discovery.html#PROTOCOL_VERSION_2">PROTOCOL_VERSION_2</A></B></CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The version number for discovery protocol version 2.</TD>
+</TR>
+</TABLE>
+&nbsp;
+<!-- ======== CONSTRUCTOR SUMMARY ======== -->
+
+<A NAME="constructor_summary"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+<B>Constructor Summary</B></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><CODE><B><A HREF="../../../../com/sun/jini/discovery/Discovery.html#Discovery()">Discovery</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<!-- ========== METHOD SUMMARY =========== -->
+
+<A NAME="method_summary"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+<B>Method Summary</B></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>abstract &nbsp;<A HREF="../../../../com/sun/jini/discovery/MulticastAnnouncement.html" title="class in com.sun.jini.discovery">MulticastAnnouncement</A></CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../com/sun/jini/discovery/Discovery.html#decodeMulticastAnnouncement(java.net.DatagramPacket, net.jini.core.constraint.InvocationConstraints)">decodeMulticastAnnouncement</A></B>(<A HREF="http://java.sun.com/j2se/1.4.2/docs/api/java/net/DatagramPacket.html" title="class or interface in java.net">DatagramPacket</A>&nbsp;packet,
+                            <A HREF="../../../../net/jini/core/constraint/InvocationConstraints.html" title="class in net.jini.core.constraint">InvocationConstraints</A>&nbsp;constraints)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Decodes the multicast announcement data contained in the given datagram
+ in a manner that satisfies the specified constraints, returning a <A HREF="../../../../com/sun/jini/discovery/MulticastAnnouncement.html" title="class in com.sun.jini.discovery"><CODE>MulticastAnnouncement</CODE></A> instance that contains the decoded data.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;<A HREF="../../../../com/sun/jini/discovery/MulticastAnnouncement.html" title="class in com.sun.jini.discovery">MulticastAnnouncement</A></CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../com/sun/jini/discovery/Discovery.html#decodeMulticastAnnouncement(java.net.DatagramPacket, net.jini.core.constraint.InvocationConstraints, boolean)">decodeMulticastAnnouncement</A></B>(<A HREF="http://java.sun.com/j2se/1.4.2/docs/api/java/net/DatagramPacket.html" title="class or interface in java.net">DatagramPacket</A>&nbsp;packet,
+                            <A HREF="../../../../net/jini/core/constraint/InvocationConstraints.html" title="class in net.jini.core.constraint">InvocationConstraints</A>&nbsp;constraints,
+                            boolean&nbsp;delayConstraintCheck)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Decodes the multicast announcement data contained in the given datagram
+ in a manner that satisfies the specified constraints, returning a <A HREF="../../../../com/sun/jini/discovery/MulticastAnnouncement.html" title="class in com.sun.jini.discovery"><CODE>MulticastAnnouncement</CODE></A> instance that contains the decoded data, with
+ constraint checking optionally delayed.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>abstract &nbsp;<A HREF="../../../../com/sun/jini/discovery/MulticastRequest.html" title="class in com.sun.jini.discovery">MulticastRequest</A></CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../com/sun/jini/discovery/Discovery.html#decodeMulticastRequest(java.net.DatagramPacket, net.jini.core.constraint.InvocationConstraints, com.sun.jini.discovery.ClientSubjectChecker)">decodeMulticastRequest</A></B>(<A HREF="http://java.sun.com/j2se/1.4.2/docs/api/java/net/DatagramPacket.html" title="class or interface in java.net">DatagramPacket</A>&nbsp;packet,
+                       <A HREF="../../../../net/jini/core/constraint/InvocationConstraints.html" title="class in net.jini.core.constraint">InvocationConstraints</A>&nbsp;constraints,
+                       <A HREF="../../../../com/sun/jini/discovery/ClientSubjectChecker.html" title="interface in com.sun.jini.discovery">ClientSubjectChecker</A>&nbsp;checker)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Decodes the multicast request data contained in the given datagram in a
+ manner that satisfies the specified constraints and client subject
+ checker (if any), returning a <A HREF="../../../../com/sun/jini/discovery/MulticastRequest.html" title="class in com.sun.jini.discovery"><CODE>MulticastRequest</CODE></A> instance that
+ contains the decoded data.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;<A HREF="../../../../com/sun/jini/discovery/MulticastRequest.html" title="class in com.sun.jini.discovery">MulticastRequest</A></CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../com/sun/jini/discovery/Discovery.html#decodeMulticastRequest(java.net.DatagramPacket, net.jini.core.constraint.InvocationConstraints, com.sun.jini.discovery.ClientSubjectChecker, boolean)">decodeMulticastRequest</A></B>(<A HREF="http://java.sun.com/j2se/1.4.2/docs/api/java/net/DatagramPacket.html" title="class or interface in java.net">DatagramPacket</A>&nbsp;packet,
+                       <A HREF="../../../../net/jini/core/constraint/InvocationConstraints.html" title="class in net.jini.core.constraint">InvocationConstraints</A>&nbsp;constraints,
+                       <A HREF="../../../../com/sun/jini/discovery/ClientSubjectChecker.html" title="interface in com.sun.jini.discovery">ClientSubjectChecker</A>&nbsp;checker,
+                       boolean&nbsp;delayConstraintCheck)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Decodes the multicast request data contained in the given datagram in a
+ manner that satisfies the specified constraints and client subject
+ checker (if any), returning a <A HREF="../../../../com/sun/jini/discovery/MulticastRequest.html" title="class in com.sun.jini.discovery"><CODE>MulticastRequest</CODE></A> instance that
+ contains the decoded data, with constraint checking optionally
+ delayed.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>abstract &nbsp;<A HREF="../../../../com/sun/jini/discovery/UnicastResponse.html" title="class in com.sun.jini.discovery">UnicastResponse</A></CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../com/sun/jini/discovery/Discovery.html#doUnicastDiscovery(java.net.Socket, net.jini.core.constraint.InvocationConstraints, java.lang.ClassLoader, java.lang.ClassLoader, java.util.Collection)">doUnicastDiscovery</A></B>(<A HREF="http://java.sun.com/j2se/1.4.2/docs/api/java/net/Socket.html" title="class or interface in java.net">Socket</A>&nbsp;socket,
+                   <A HREF="../../../../net/jini/core/constraint/InvocationConstraints.html" title="class in net.jini.core.constraint">InvocationConstraints</A>&nbsp;constraints,
+                   <A HREF="http://java.sun.com/j2se/1.4.2/docs/api/java/lang/ClassLoader.html" title="class or interface in java.lang">ClassLoader</A>&nbsp;defaultLoader,
+                   <A HREF="http://java.sun.com/j2se/1.4.2/docs/api/java/lang/ClassLoader.html" title="class or interface in java.lang">ClassLoader</A>&nbsp;verifierLoader,
+                   <A HREF="http://java.sun.com/j2se/1.4.2/docs/api/java/util/Collection.html" title="class or interface in java.util">Collection</A>&nbsp;context)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Performs the client side of unicast discovery, obtaining the returned
+ response data over the provided socket using the given default and
+ codebase verifier class loaders and collection of object stream context
+ objects in a manner that satisfies the specified constraints.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>abstract &nbsp;<A HREF="../../../../com/sun/jini/discovery/EncodeIterator.html" title="interface in com.sun.jini.discovery">EncodeIterator</A></CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../com/sun/jini/discovery/Discovery.html#encodeMulticastAnnouncement(com.sun.jini.discovery.MulticastAnnouncement, int, net.jini.core.constraint.InvocationConstraints)">encodeMulticastAnnouncement</A></B>(<A HREF="../../../../com/sun/jini/discovery/MulticastAnnouncement.html" title="class in com.sun.jini.discovery">MulticastAnnouncement</A>&nbsp;announcement,
+                            int&nbsp;maxPacketSize,
+                            <A HREF="../../../../net/jini/core/constraint/InvocationConstraints.html" title="class in net.jini.core.constraint">InvocationConstraints</A>&nbsp;constraints)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns an iterator which can be used to encode the given multicast
+ announcement data into sets of <A HREF="http://java.sun.com/j2se/1.4.2/docs/api/java/net/DatagramPacket.html" title="class or interface in java.net"><CODE>DatagramPacket</CODE></A>s, each bounded in
+ length by the specified maximum packet size, in a manner that satisfies
+ the given constraints.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>abstract &nbsp;<A HREF="../../../../com/sun/jini/discovery/EncodeIterator.html" title="interface in com.sun.jini.discovery">EncodeIterator</A></CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../com/sun/jini/discovery/Discovery.html#encodeMulticastRequest(com.sun.jini.discovery.MulticastRequest, int, net.jini.core.constraint.InvocationConstraints)">encodeMulticastRequest</A></B>(<A HREF="../../../../com/sun/jini/discovery/MulticastRequest.html" title="class in com.sun.jini.discovery">MulticastRequest</A>&nbsp;request,
+                       int&nbsp;maxPacketSize,
+                       <A HREF="../../../../net/jini/core/constraint/InvocationConstraints.html" title="class in net.jini.core.constraint">InvocationConstraints</A>&nbsp;constraints)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns an iterator which can be used to encode the given multicast
+ request data into sets of <A HREF="http://java.sun.com/j2se/1.4.2/docs/api/java/net/DatagramPacket.html" title="class or interface in java.net"><CODE>DatagramPacket</CODE></A>s, each bounded in
+ length by the specified maximum packet size, in a manner that satisfies
+ the given constraints.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>static&nbsp;<A HREF="../../../../com/sun/jini/discovery/Discovery.html" title="class in com.sun.jini.discovery">Discovery</A></CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../com/sun/jini/discovery/Discovery.html#getProtocol1()">getProtocol1</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns an instance implementing protocol version 1.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>static&nbsp;<A HREF="../../../../com/sun/jini/discovery/Discovery.html" title="class in com.sun.jini.discovery">Discovery</A></CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../com/sun/jini/discovery/Discovery.html#getProtocol2(java.lang.ClassLoader)">getProtocol2</A></B>(<A HREF="http://java.sun.com/j2se/1.4.2/docs/api/java/lang/ClassLoader.html" title="class or interface in java.lang">ClassLoader</A>&nbsp;loader)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns an instance implementing protocol version 2 which uses providers
+ loaded from the given class loader, or the current context class loader
+ if the given loader is <code>null</code>.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>static&nbsp;<A HREF="../../../../com/sun/jini/discovery/Discovery.html" title="class in com.sun.jini.discovery">Discovery</A></CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../com/sun/jini/discovery/Discovery.html#getProtocol2(com.sun.jini.discovery.MulticastRequestEncoder[], com.sun.jini.discovery.MulticastRequestDecoder[], com.sun.jini.discovery.MulticastAnnouncementEncoder[], com.sun.jini.discovery.MulticastAnnouncementDecoder[], com.sun.jini.discovery.UnicastDiscoveryClient[], com.sun.jini.discovery.UnicastDiscoveryServer[])">getProtocol2</A></B>(<A HREF="../../../../com/sun/jini/discovery/MulticastRequestEncoder.html" title="interface in com.sun.jini.discovery">MulticastRequestEncoder</A>[]&nbsp;mre,
+             <A HREF="../../../../com/sun/jini/discovery/MulticastRequestDecoder.html" title="interface in com.sun.jini.discovery">MulticastRequestDecoder</A>[]&nbsp;mrd,
+             <A HREF="../../../../com/sun/jini/discovery/MulticastAnnouncementEncoder.html" title="interface in com.sun.jini.discovery">MulticastAnnouncementEncoder</A>[]&nbsp;mae,
+             <A HREF="../../../../com/sun/jini/discovery/MulticastAnnouncementDecoder.html" title="interface in com.sun.jini.discovery">MulticastAnnouncementDecoder</A>[]&nbsp;mad,
+             <A HREF="../../../../com/sun/jini/discovery/UnicastDiscoveryClient.html" title="interface in com.sun.jini.discovery">UnicastDiscoveryClient</A>[]&nbsp;udc,
+             <A HREF="../../../../com/sun/jini/discovery/UnicastDiscoveryServer.html" title="interface in com.sun.jini.discovery">UnicastDiscoveryServer</A>[]&nbsp;uds)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns an instance implementing protocol version 2 which uses the given
+ providers.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>abstract &nbsp;void</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../com/sun/jini/discovery/Discovery.html#handleUnicastDiscovery(com.sun.jini.discovery.UnicastResponse, java.net.Socket, net.jini.core.constraint.InvocationConstraints, com.sun.jini.discovery.ClientSubjectChecker, java.util.Collection)">handleUnicastDiscovery</A></B>(<A HREF="../../../../com/sun/jini/discovery/UnicastResponse.html" title="class in com.sun.jini.discovery">UnicastResponse</A>&nbsp;response,
+                       <A HREF="http://java.sun.com/j2se/1.4.2/docs/api/java/net/Socket.html" title="class or interface in java.net">Socket</A>&nbsp;socket,
+                       <A HREF="../../../../net/jini/core/constraint/InvocationConstraints.html" title="class in net.jini.core.constraint">InvocationConstraints</A>&nbsp;constraints,
+                       <A HREF="../../../../com/sun/jini/discovery/ClientSubjectChecker.html" title="interface in com.sun.jini.discovery">ClientSubjectChecker</A>&nbsp;checker,
+                       <A HREF="http://java.sun.com/j2se/1.4.2/docs/api/java/util/Collection.html" title="class or interface in java.util">Collection</A>&nbsp;context)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Handles the server side of unicast discovery, transmitting the given
+ response data over the provided socket using the given collection of
+ object stream context objects in a manner that satisfies the specified
+ constraints and client subject checker (if any).</TD>
+</TR>
+</TABLE>
+&nbsp;<A NAME="methods_inherited_from_class_java.lang.Object"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
+<TH ALIGN="left"><B>Methods inherited from class java.lang.<A HREF="http://java.sun.com/j2se/1.4.2/docs/api/java/lang/Object.html" title="class or interface in java.lang">Object</A></B></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><CODE><A HREF="http://java.sun.com/j2se/1.4.2/docs/api/java/lang/Object.html#clone()" title="class or interface in java.lang">clone</A>, <A HREF="http://java.sun.com/j2se/1.4.2/docs/api/java/lang/Object.html#equals(java.lang.Object)" title="class or interface in java.lang">equals</A>, <A HREF="http://java.sun.com/j2se/1.4.2/docs/api/java/lang/Object.html#finalize()" title="class or interface in java.lang">finalize</A>, <A HREF="http://java.sun.com/j2se/1.4.2/docs/api/java/lang/Object.html#getClass()" title="class or interface in java.lang">getClass</A>, <A HREF="http://java.sun.com/j2se/1.4.2/docs/api/java/lang/Object.html#hashCode()" title="class or interface in java.lang">hashCode</A>, <A HREF="http://java.sun.com/j2se/1.4.2/docs/api/java/lang/Object.html#notify()" title="class or interface in java.lang">notify</A>, <A HREF="http://java.sun.com/j2se/1.4.2/docs/api/java/lang/Object.html#notifyAll()" title="class or interface in java.lang">notifyAll</A>, <A HREF="http://
 java.sun.com/j2se/1.4.2/docs/api/java/lang/Object.html#toString()" title="class or interface in java.lang">toString</A>, <A HREF="http://java.sun.com/j2se/1.4.2/docs/api/java/lang/Object.html#wait()" title="class or interface in java.lang">wait</A>, <A HREF="http://java.sun.com/j2se/1.4.2/docs/api/java/lang/Object.html#wait(long)" title="class or interface in java.lang">wait</A>, <A HREF="http://java.sun.com/j2se/1.4.2/docs/api/java/lang/Object.html#wait(long, int)" title="class or interface in java.lang">wait</A></CODE></TD>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+
+<!-- ============ FIELD DETAIL =========== -->
+
+<A NAME="field_detail"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
+<B>Field Detail</B></FONT></TH>
+</TR>
+</TABLE>
+
+<A NAME="PROTOCOL_VERSION_1"><!-- --></A><H3>
+PROTOCOL_VERSION_1</H3>
+<PRE>
+public static final int <B>PROTOCOL_VERSION_1</B></PRE>
+<DL>
+<DD>The version number for discovery protocol version 1.
+<P>
+<DL>
+<DT><B>See Also:</B><DD><A HREF="../../../../constant-values.html#com.sun.jini.discovery.Discovery.PROTOCOL_VERSION_1">Constant Field Values</A></DL>
+</DL>
+<HR>
+
+<A NAME="PROTOCOL_VERSION_2"><!-- --></A><H3>
+PROTOCOL_VERSION_2</H3>
+<PRE>
+public static final int <B>PROTOCOL_VERSION_2</B></PRE>
+<DL>
+<DD>The version number for discovery protocol version 2.
+<P>
+<DL>
+<DT><B>See Also:</B><DD><A HREF="../../../../constant-values.html#com.sun.jini.discovery.Discovery.PROTOCOL_VERSION_2">Constant Field Values</A></DL>
+</DL>
+
+<!-- ========= CONSTRUCTOR DETAIL ======== -->
+
+<A NAME="constructor_detail"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
+<B>Constructor Detail</B></FONT></TH>
+</TR>
+</TABLE>
+
+<A NAME="Discovery()"><!-- --></A><H3>
+Discovery</H3>
+<PRE>
+public <B>Discovery</B>()</PRE>
+<DL>
+</DL>
+
+<!-- ============ METHOD DETAIL ========== -->
+
+<A NAME="method_detail"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
+<B>Method Detail</B></FONT></TH>
+</TR>
+</TABLE>
+
+<A NAME="getProtocol1()"><!-- --></A><H3>
+getProtocol1</H3>
+<PRE>
+public static <A HREF="../../../../com/sun/jini/discovery/Discovery.html" title="class in com.sun.jini.discovery">Discovery</A> <B>getProtocol1</B>()</PRE>
+<DL>
+<DD>Returns an instance implementing protocol version 1.
+<P>
+<DD><DL>
+
+<DT><B>Returns:</B><DD>an instance implementing protocol version 1</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="getProtocol2(java.lang.ClassLoader)"><!-- --></A><H3>
+getProtocol2</H3>
+<PRE>
+public static <A HREF="../../../../com/sun/jini/discovery/Discovery.html" title="class in com.sun.jini.discovery">Discovery</A> <B>getProtocol2</B>(<A HREF="http://java.sun.com/j2se/1.4.2/docs/api/java/lang/ClassLoader.html" title="class or interface in java.lang">ClassLoader</A>&nbsp;loader)</PRE>
+<DL>
+<DD>Returns an instance implementing protocol version 2 which uses providers
+ loaded from the given class loader, or the current context class loader
+ if the given loader is <code>null</code>.  Available providers are
+ determined by interpreting any resources of the indicated class loader
+ named
+ <code>"META-INF/services/com.sun.jini.discovery.DiscoveryFormatProvider"</code>
+ as files containing names of provider classes, with one name per line.
+<P>
+<DD><DL>
+<DT><B>Parameters:</B><DD><CODE>loader</CODE> - class loader from which to load providers, or
+ <code>null</code> to indicate the current context class loader
+<DT><B>Returns:</B><DD>an instance implementing protocol version 2</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="getProtocol2(com.sun.jini.discovery.MulticastRequestEncoder[], com.sun.jini.discovery.MulticastRequestDecoder[], com.sun.jini.discovery.MulticastAnnouncementEncoder[], com.sun.jini.discovery.MulticastAnnouncementDecoder[], com.sun.jini.discovery.UnicastDiscoveryClient[], com.sun.jini.discovery.UnicastDiscoveryServer[])"><!-- --></A><H3>
+getProtocol2</H3>
+<PRE>
+public static <A HREF="../../../../com/sun/jini/discovery/Discovery.html" title="class in com.sun.jini.discovery">Discovery</A> <B>getProtocol2</B>(<A HREF="../../../../com/sun/jini/discovery/MulticastRequestEncoder.html" title="interface in com.sun.jini.discovery">MulticastRequestEncoder</A>[]&nbsp;mre,
+                                     <A HREF="../../../../com/sun/jini/discovery/MulticastRequestDecoder.html" title="interface in com.sun.jini.discovery">MulticastRequestDecoder</A>[]&nbsp;mrd,
+                                     <A HREF="../../../../com/sun/jini/discovery/MulticastAnnouncementEncoder.html" title="interface in com.sun.jini.discovery">MulticastAnnouncementEncoder</A>[]&nbsp;mae,
+                                     <A HREF="../../../../com/sun/jini/discovery/MulticastAnnouncementDecoder.html" title="interface in com.sun.jini.discovery">MulticastAnnouncementDecoder</A>[]&nbsp;mad,
+                                     <A HREF="../../../../com/sun/jini/discovery/UnicastDiscoveryClient.html" title="interface in com.sun.jini.discovery">UnicastDiscoveryClient</A>[]&nbsp;udc,
+                                     <A HREF="../../../../com/sun/jini/discovery/UnicastDiscoveryServer.html" title="interface in com.sun.jini.discovery">UnicastDiscoveryServer</A>[]&nbsp;uds)</PRE>
+<DL>
+<DD>Returns an instance implementing protocol version 2 which uses the given
+ providers.  Contents of arrays are copied; <code>null</code> array
+ values are equivalent to empty arrays.
+<P>
+<DD><DL>
+<DT><B>Parameters:</B><DD><CODE>mre</CODE> - providers for encoding multicast requests<DD><CODE>mrd</CODE> - providers for decoding multicast requests<DD><CODE>mae</CODE> - providers for encoding multicast announcements<DD><CODE>mad</CODE> - providers for decoding multicast announcements<DD><CODE>udc</CODE> - providers for performing the client side of unicast discovery<DD><CODE>uds</CODE> - providers for performing the server side of unicast discovery
+<DT><B>Returns:</B><DD>an instance implementing protocol version 2</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="encodeMulticastRequest(com.sun.jini.discovery.MulticastRequest, int, net.jini.core.constraint.InvocationConstraints)"><!-- --></A><H3>
+encodeMulticastRequest</H3>
+<PRE>
+public abstract <A HREF="../../../../com/sun/jini/discovery/EncodeIterator.html" title="interface in com.sun.jini.discovery">EncodeIterator</A> <B>encodeMulticastRequest</B>(<A HREF="../../../../com/sun/jini/discovery/MulticastRequest.html" title="class in com.sun.jini.discovery">MulticastRequest</A>&nbsp;request,
+                                                      int&nbsp;maxPacketSize,
+                                                      <A HREF="../../../../net/jini/core/constraint/InvocationConstraints.html" title="class in net.jini.core.constraint">InvocationConstraints</A>&nbsp;constraints)</PRE>
+<DL>
+<DD>Returns an iterator which can be used to encode the given multicast
+ request data into sets of <A HREF="http://java.sun.com/j2se/1.4.2/docs/api/java/net/DatagramPacket.html" title="class or interface in java.net"><CODE>DatagramPacket</CODE></A>s, each bounded in
+ length by the specified maximum packet size, in a manner that satisfies
+ the given constraints.  <code>null</code> constraints are considered
+ equivalent to empty constraints.  The destination of each
+ <code>DatagramPacket</code> produced by the returned iterator is set to
+ the address returned by
+ <A HREF="../../../../net/jini/discovery/Constants.html#getRequestAddress()"><CODE>Constants.getRequestAddress()</CODE></A>, with the value
+ of <A HREF="../../../../net/jini/discovery/Constants.html#discoveryPort"><CODE>Constants.discoveryPort</CODE></A> used as the
+ destination port.
+<P>
+<DD><DL>
+<DT><B>Parameters:</B><DD><CODE>request</CODE> - the request data to encode<DD><CODE>maxPacketSize</CODE> - the maximum size of packets to produce<DD><CODE>constraints</CODE> - the constraints to apply when encoding the data, or
+ <code>null</code>
+<DT><B>Returns:</B><DD>an iterator to use for encoding the data
+<DT><B>Throws:</B>
+<DD><CODE><A HREF="http://java.sun.com/j2se/1.4.2/docs/api/java/lang/NullPointerException.html" title="class or interface in java.lang">NullPointerException</A></CODE> - if <code>request</code> is
+ <code>null</code></DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="decodeMulticastRequest(java.net.DatagramPacket, net.jini.core.constraint.InvocationConstraints, com.sun.jini.discovery.ClientSubjectChecker)"><!-- --></A><H3>
+decodeMulticastRequest</H3>
+<PRE>
+public abstract <A HREF="../../../../com/sun/jini/discovery/MulticastRequest.html" title="class in com.sun.jini.discovery">MulticastRequest</A> <B>decodeMulticastRequest</B>(<A HREF="http://java.sun.com/j2se/1.4.2/docs/api/java/net/DatagramPacket.html" title="class or interface in java.net">DatagramPacket</A>&nbsp;packet,
+                                                        <A HREF="../../../../net/jini/core/constraint/InvocationConstraints.html" title="class in net.jini.core.constraint">InvocationConstraints</A>&nbsp;constraints,
+                                                        <A HREF="../../../../com/sun/jini/discovery/ClientSubjectChecker.html" title="interface in com.sun.jini.discovery">ClientSubjectChecker</A>&nbsp;checker)
+                                                 throws <A HREF="http://java.sun.com/j2se/1.4.2/docs/api/java/io/IOException.html" title="class or interface in java.io">IOException</A></PRE>
+<DL>
+<DD>Decodes the multicast request data contained in the given datagram in a
+ manner that satisfies the specified constraints and client subject
+ checker (if any), returning a <A HREF="../../../../com/sun/jini/discovery/MulticastRequest.html" title="class in com.sun.jini.discovery"><CODE>MulticastRequest</CODE></A> instance that
+ contains the decoded data.  <code>null</code> constraints are considered
+ equivalent to empty constraints.  All the specified constraints are
+ checked before this method returns.
+<P>
+<DD><DL>
+<DT><B>Parameters:</B><DD><CODE>packet</CODE> - the packet to decode<DD><CODE>constraints</CODE> - the constraints to apply when decoding the packet, or
+ <code>null</code><DD><CODE>checker</CODE> - the object to use to check the client subject, or
+ <code>null</code>
+<DT><B>Returns:</B><DD>the decoded multicast request data
+<DT><B>Throws:</B>
+<DD><CODE><A HREF="http://java.sun.com/j2se/1.4.2/docs/api/java/io/IOException.html" title="class or interface in java.io">IOException</A></CODE> - if an error occurs in interpreting the data
+<DD><CODE><A HREF="../../../../net/jini/io/UnsupportedConstraintException.html" title="class in net.jini.io">UnsupportedConstraintException</A></CODE> - if unable to satisfy the
+ specified constraints
+<DD><CODE><A HREF="http://java.sun.com/j2se/1.4.2/docs/api/java/lang/SecurityException.html" title="class or interface in java.lang">SecurityException</A></CODE> - if the given constraints cannot be satisfied
+ due to insufficient caller permissions, or if the client subject check
+ fails
+<DD><CODE><A HREF="http://java.sun.com/j2se/1.4.2/docs/api/java/lang/NullPointerException.html" title="class or interface in java.lang">NullPointerException</A></CODE> - if <code>packet</code> is <code>null</code></DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="decodeMulticastRequest(java.net.DatagramPacket, net.jini.core.constraint.InvocationConstraints, com.sun.jini.discovery.ClientSubjectChecker, boolean)"><!-- --></A><H3>
+decodeMulticastRequest</H3>
+<PRE>
+public <A HREF="../../../../com/sun/jini/discovery/MulticastRequest.html" title="class in com.sun.jini.discovery">MulticastRequest</A> <B>decodeMulticastRequest</B>(<A HREF="http://java.sun.com/j2se/1.4.2/docs/api/java/net/DatagramPacket.html" title="class or interface in java.net">DatagramPacket</A>&nbsp;packet,
+                                               <A HREF="../../../../net/jini/core/constraint/InvocationConstraints.html" title="class in net.jini.core.constraint">InvocationConstraints</A>&nbsp;constraints,
+                                               <A HREF="../../../../com/sun/jini/discovery/ClientSubjectChecker.html" title="interface in com.sun.jini.discovery">ClientSubjectChecker</A>&nbsp;checker,
+                                               boolean&nbsp;delayConstraintCheck)
+                                        throws <A HREF="http://java.sun.com/j2se/1.4.2/docs/api/java/io/IOException.html" title="class or interface in java.io">IOException</A></PRE>
+<DL>
+<DD>Decodes the multicast request data contained in the given datagram in a
+ manner that satisfies the specified constraints and client subject
+ checker (if any), returning a <A HREF="../../../../com/sun/jini/discovery/MulticastRequest.html" title="class in com.sun.jini.discovery"><CODE>MulticastRequest</CODE></A> instance that
+ contains the decoded data, with constraint checking optionally
+ delayed.  <code>null</code> constraints are considered
+ equivalent to empty constraints.
+ <p>The <code>delayConstraintCheck</code> flag is used to control delayed
+ constraint checking. Delayed constraint checking is useful for
+ potentially delaying the expense of complete constraint checking, until
+ other checks have been made on the returned
+ <code>MulticastRequest</code> for preliminary validation.
+ Implementations may ignore the flag, in which case, the behavior is
+ equivalent to that of <A HREF="../../../../com/sun/jini/discovery/Discovery.html#decodeMulticastRequest(java.net.DatagramPacket, net.jini.core.constraint.InvocationConstraints, com.sun.jini.discovery.ClientSubjectChecker)"><CODE>decodeMulticastRequest</CODE></A>.
+ <p>If <code>delayConstraintCheck</code> is <code>true</code>, the method
+ behaves as follows:<ul>
+ <li> Some of the specified constraints may not be checked before this
+ method returns; the returned <code>MulticastRequest</code>'s
+ <A HREF="../../../../com/sun/jini/discovery/MulticastRequest.html#checkConstraints()"><CODE>checkConstraints</CODE></A>
+ method must be invoked to complete checking of all the constraints.
+ <li> Constraints which must be checked before accessor methods of the
+ returned <code>MulticastRequest</code> can be invoked are always
+ checked before this method returns.</ul>
+ <p>If <code>delayConstraintCheck</code> is <code>false</code>, all the
+ specified constraints are checked before this method returns.
+ <p><code>Discovery</code> implements this method to simply invoke <A HREF="../../../../com/sun/jini/discovery/Discovery.html#decodeMulticastRequest(java.net.DatagramPacket, net.jini.core.constraint.InvocationConstraints, com.sun.jini.discovery.ClientSubjectChecker)"><CODE>decodeMulticastRequest</CODE></A>, and thus checks all the
+ specified constraints before returning.
+<P>
+<DD><DL>
+<DT><B>Parameters:</B><DD><CODE>packet</CODE> - the packet to decode<DD><CODE>constraints</CODE> - the constraints to apply when decoding the packet, or
+ <code>null</code><DD><CODE>checker</CODE> - the object to use to check the client subject, or
+ <code>null</code><DD><CODE>delayConstraintCheck</CODE> - flag to control delayed constraint checking
+<DT><B>Returns:</B><DD>the decoded multicast request data.
+<DT><B>Throws:</B>
+<DD><CODE><A HREF="http://java.sun.com/j2se/1.4.2/docs/api/java/io/IOException.html" title="class or interface in java.io">IOException</A></CODE> - if an error occurs in interpreting the data
+<DD><CODE><A HREF="http://java.sun.com/j2se/1.4.2/docs/api/java/lang/SecurityException.html" title="class or interface in java.lang">SecurityException</A></CODE> - if the given constraints cannot be satisfied
+ due to insufficient caller permissions, or if the client subject check
+ fails
+<DD><CODE><A HREF="http://java.sun.com/j2se/1.4.2/docs/api/java/lang/NullPointerException.html" title="class or interface in java.lang">NullPointerException</A></CODE> - if <code>packet</code> is <code>null</code><DT><B>Since:</B></DT>
+  <DD>2.1</DD>
+</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="encodeMulticastAnnouncement(com.sun.jini.discovery.MulticastAnnouncement, int, net.jini.core.constraint.InvocationConstraints)"><!-- --></A><H3>
+encodeMulticastAnnouncement</H3>
+<PRE>
+public abstract <A HREF="../../../../com/sun/jini/discovery/EncodeIterator.html" title="interface in com.sun.jini.discovery">EncodeIterator</A> <B>encodeMulticastAnnouncement</B>(<A HREF="../../../../com/sun/jini/discovery/MulticastAnnouncement.html" title="class in com.sun.jini.discovery">MulticastAnnouncement</A>&nbsp;announcement,
+                                                           int&nbsp;maxPacketSize,
+                                                           <A HREF="../../../../net/jini/core/constraint/InvocationConstraints.html" title="class in net.jini.core.constraint">InvocationConstraints</A>&nbsp;constraints)</PRE>
+<DL>
+<DD>Returns an iterator which can be used to encode the given multicast
+ announcement data into sets of <A HREF="http://java.sun.com/j2se/1.4.2/docs/api/java/net/DatagramPacket.html" title="class or interface in java.net"><CODE>DatagramPacket</CODE></A>s, each bounded in
+ length by the specified maximum packet size, in a manner that satisfies
+ the given constraints.  <code>null</code> constraints are considered
+ equivalent to empty constraints.  The destination of each
+ <code>DatagramPacket</code> produced by the returned iterator is set to
+ the address returned by
+ <A HREF="../../../../net/jini/discovery/Constants.html#getAnnouncementAddress()"><CODE>Constants.getAnnouncementAddress()</CODE></A>, with the
+ value of <A HREF="../../../../net/jini/discovery/Constants.html#discoveryPort"><CODE>Constants.discoveryPort</CODE></A> used as the
+ destination port.
+<P>
+<DD><DL>
+<DT><B>Parameters:</B><DD><CODE>announcement</CODE> - the announcement data to encode<DD><CODE>maxPacketSize</CODE> - the maximum size of packets to produce<DD><CODE>constraints</CODE> - the constraints to apply when encoding the data, or
+ <code>null</code>
+<DT><B>Returns:</B><DD>an iterator to use for encoding the data
+<DT><B>Throws:</B>
+<DD><CODE><A HREF="http://java.sun.com/j2se/1.4.2/docs/api/java/lang/NullPointerException.html" title="class or interface in java.lang">NullPointerException</A></CODE> - if <code>announcement</code> is
+ <code>null</code></DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="decodeMulticastAnnouncement(java.net.DatagramPacket, net.jini.core.constraint.InvocationConstraints)"><!-- --></A><H3>
+decodeMulticastAnnouncement</H3>
+<PRE>
+public abstract <A HREF="../../../../com/sun/jini/discovery/MulticastAnnouncement.html" title="class in com.sun.jini.discovery">MulticastAnnouncement</A> <B>decodeMulticastAnnouncement</B>(<A HREF="http://java.sun.com/j2se/1.4.2/docs/api/java/net/DatagramPacket.html" title="class or interface in java.net">DatagramPacket</A>&nbsp;packet,
+                                                                  <A HREF="../../../../net/jini/core/constraint/InvocationConstraints.html" title="class in net.jini.core.constraint">InvocationConstraints</A>&nbsp;constraints)
+                                                           throws <A HREF="http://java.sun.com/j2se/1.4.2/docs/api/java/io/IOException.html" title="class or interface in java.io">IOException</A></PRE>
+<DL>
+<DD>Decodes the multicast announcement data contained in the given datagram
+ in a manner that satisfies the specified constraints, returning a <A HREF="../../../../com/sun/jini/discovery/MulticastAnnouncement.html" title="class in com.sun.jini.discovery"><CODE>MulticastAnnouncement</CODE></A> instance that contains the decoded data.
+ <code>null</code> constraints are considered equivalent to empty
+ constraints.  All the specified constraints are checked before this
+ method returns.
+<P>
+<DD><DL>
+<DT><B>Parameters:</B><DD><CODE>packet</CODE> - the packet to decode<DD><CODE>constraints</CODE> - the constraints to apply when decoding the packet, or
+ <code>null</code>
+<DT><B>Returns:</B><DD>the decoded multicast announcement data
+<DT><B>Throws:</B>
+<DD><CODE><A HREF="http://java.sun.com/j2se/1.4.2/docs/api/java/io/IOException.html" title="class or interface in java.io">IOException</A></CODE> - if an error occurs in interpreting the data
+<DD><CODE><A HREF="../../../../net/jini/io/UnsupportedConstraintException.html" title="class in net.jini.io">UnsupportedConstraintException</A></CODE> - if unable to satisfy the
+ specified constraints
+<DD><CODE><A HREF="http://java.sun.com/j2se/1.4.2/docs/api/java/lang/SecurityException.html" title="class or interface in java.lang">SecurityException</A></CODE> - if the given constraints cannot be satisfied
+ due to insufficient caller permissions
+<DD><CODE><A HREF="http://java.sun.com/j2se/1.4.2/docs/api/java/lang/NullPointerException.html" title="class or interface in java.lang">NullPointerException</A></CODE> - if <code>packet</code> is <code>null</code></DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="decodeMulticastAnnouncement(java.net.DatagramPacket, net.jini.core.constraint.InvocationConstraints, boolean)"><!-- --></A><H3>
+decodeMulticastAnnouncement</H3>
+<PRE>
+public <A HREF="../../../../com/sun/jini/discovery/MulticastAnnouncement.html" title="class in com.sun.jini.discovery">MulticastAnnouncement</A> <B>decodeMulticastAnnouncement</B>(<A HREF="http://java.sun.com/j2se/1.4.2/docs/api/java/net/DatagramPacket.html" title="class or interface in java.net">DatagramPacket</A>&nbsp;packet,
+                                                         <A HREF="../../../../net/jini/core/constraint/InvocationConstraints.html" title="class in net.jini.core.constraint">InvocationConstraints</A>&nbsp;constraints,
+                                                         boolean&nbsp;delayConstraintCheck)
+                                                  throws <A HREF="http://java.sun.com/j2se/1.4.2/docs/api/java/io/IOException.html" title="class or interface in java.io">IOException</A></PRE>
+<DL>
+<DD>Decodes the multicast announcement data contained in the given datagram
+ in a manner that satisfies the specified constraints, returning a <A HREF="../../../../com/sun/jini/discovery/MulticastAnnouncement.html" title="class in com.sun.jini.discovery"><CODE>MulticastAnnouncement</CODE></A> instance that contains the decoded data, with
+ constraint checking optionally delayed.  <code>null</code> constraints
+ are considered equivalent to empty constraints.
+ <p>The <code>delayConstraintCheck</code> flag is used to control delayed
+ constraint checking.  Delayed constraint checking is useful for
+ potentially delaying the expense of complete constraint checking, until
+ other checks have been made on the returned
+ <code>MulticastAnnouncement</code> for preliminary validation.
+ Implementations may ignore the flag, in which case, the behavior is
+ equivalent to that of <A HREF="../../../../com/sun/jini/discovery/Discovery.html#decodeMulticastAnnouncement(java.net.DatagramPacket, net.jini.core.constraint.InvocationConstraints)"><CODE>decodeMulticastAnnouncement</CODE></A>.
+ <p>If <code>delayConstraintCheck</code> is <code>true</code>, the method
+ behaves as follows:<ul>
+ <li> Some of the specified constraints may not be checked before this
+ method returns; the returned <code>MulticastAnnouncement</code>'s
+ <A HREF="../../../../com/sun/jini/discovery/MulticastAnnouncement.html#checkConstraints()"><CODE>checkConstraints</CODE></A>
+ method must be invoked to complete checking of all the constraints.
+ <li> Constraints which must be checked before accessor methods of the
+ returned <code>MulticastAnnouncement</code> can be invoked are always
+ checked before this method returns.</ul>
+ <p> If <code>delayConstraintCheck</code> is <code>false</code>,
+ all the specified constraints are checked before this method returns.
+ <p><code>Discovery</code> implements this method to simply invoke <A HREF="../../../../com/sun/jini/discovery/Discovery.html#decodeMulticastAnnouncement(java.net.DatagramPacket, net.jini.core.constraint.InvocationConstraints)"><CODE>decodeMulticastAnnouncement</CODE></A>, and thus checks
+ all the specified constraints before returning.
+<P>
+<DD><DL>
+<DT><B>Parameters:</B><DD><CODE>packet</CODE> - the packet to decode<DD><CODE>constraints</CODE> - the constraints to apply when decoding the packet, or
+ <code>null</code><DD><CODE>delayConstraintCheck</CODE> - flag to control delayed constraint checking
+<DT><B>Returns:</B><DD>the decoded multicast announcement data.
+<DT><B>Throws:</B>
+<DD><CODE><A HREF="http://java.sun.com/j2se/1.4.2/docs/api/java/io/IOException.html" title="class or interface in java.io">IOException</A></CODE> - if an error occurs in interpreting the data
+<DD><CODE><A HREF="../../../../net/jini/io/UnsupportedConstraintException.html" title="class in net.jini.io">UnsupportedConstraintException</A></CODE> - if unable to satisfy the
+ specified constraints
+<DD><CODE><A HREF="http://java.sun.com/j2se/1.4.2/docs/api/java/lang/SecurityException.html" title="class or interface in java.lang">SecurityException</A></CODE> - if the given constraints cannot be satisfied
+ due to insufficient caller permissions.
+<DD><CODE><A HREF="http://java.sun.com/j2se/1.4.2/docs/api/java/lang/NullPointerException.html" title="class or interface in java.lang">NullPointerException</A></CODE> - if <code>packet</code> is <code>null</code><DT><B>Since:</B></DT>
+  <DD>2.1</DD>
+</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="doUnicastDiscovery(java.net.Socket, net.jini.core.constraint.InvocationConstraints, java.lang.ClassLoader, java.lang.ClassLoader, java.util.Collection)"><!-- --></A><H3>
+doUnicastDiscovery</H3>
+<PRE>
+public abstract <A HREF="../../../../com/sun/jini/discovery/UnicastResponse.html" title="class in com.sun.jini.discovery">UnicastResponse</A> <B>doUnicastDiscovery</B>(<A HREF="http://java.sun.com/j2se/1.4.2/docs/api/java/net/Socket.html" title="class or interface in java.net">Socket</A>&nbsp;socket,
+                                                   <A HREF="../../../../net/jini/core/constraint/InvocationConstraints.html" title="class in net.jini.core.constraint">InvocationConstraints</A>&nbsp;constraints,
+                                                   <A HREF="http://java.sun.com/j2se/1.4.2/docs/api/java/lang/ClassLoader.html" title="class or interface in java.lang">ClassLoader</A>&nbsp;defaultLoader,
+                                                   <A HREF="http://java.sun.com/j2se/1.4.2/docs/api/java/lang/ClassLoader.html" title="class or interface in java.lang">ClassLoader</A>&nbsp;verifierLoader,
+                                                   <A HREF="http://java.sun.com/j2se/1.4.2/docs/api/java/util/Collection.html" title="class or interface in java.util">Collection</A>&nbsp;context)
+                                            throws <A HREF="http://java.sun.com/j2se/1.4.2/docs/api/java/io/IOException.html" title="class or interface in java.io">IOException</A>,
+                                                   <A HREF="http://java.sun.com/j2se/1.4.2/docs/api/java/lang/ClassNotFoundException.html" title="class or interface in java.lang">ClassNotFoundException</A></PRE>
+<DL>
+<DD>Performs the client side of unicast discovery, obtaining the returned
+ response data over the provided socket using the given default and
+ codebase verifier class loaders and collection of object stream context
+ objects in a manner that satisfies the specified constraints.
+ <code>null</code> constraints are considered equivalent to empty
+ constraints.
+<P>
+<DD><DL>
+<DT><B>Parameters:</B><DD><CODE>socket</CODE> - the socket on which to perform unicast discovery<DD><CODE>constraints</CODE> - the constraints to apply to unicast discovery, or
+ <code>null</code><DD><CODE>defaultLoader</CODE> - the class loader value (possibly <code>null</code>)
+ to be passed as the <code>defaultLoader</code> argument to
+ <code>RMIClassLoader</code> methods when unmarshalling the registrar
+ proxy<DD><CODE>verifierLoader</CODE> - the class loader value (possibly
+ <code>null</code>) to pass to <A HREF="../../../../net/jini/security/Security.html#verifyCodebaseIntegrity(java.lang.String, java.lang.ClassLoader)"><CODE>Security.verifyCodebaseIntegrity</CODE></A>, if codebase integrity verification is
+ used when unmarshalling the registrar proxy<DD><CODE>context</CODE> - the collection of context information objects (possibly
+ <code>null</code>) to use when unmarshalling the registrar proxy
+<DT><B>Returns:</B><DD>the received unicast response data
+<DT><B>Throws:</B>
+<DD><CODE><A HREF="http://java.sun.com/j2se/1.4.2/docs/api/java/io/IOException.html" title="class or interface in java.io">IOException</A></CODE> - if an error occurs in interpreting received data or
+ in formatting data to send
+<DD><CODE><A HREF="../../../../net/jini/io/UnsupportedConstraintException.html" title="class in net.jini.io">UnsupportedConstraintException</A></CODE> - if unable to satisfy the
+ specified constraints
+<DD><CODE><A HREF="http://java.sun.com/j2se/1.4.2/docs/api/java/lang/SecurityException.html" title="class or interface in java.lang">SecurityException</A></CODE> - if the given constraints cannot be satisfied
+ due to insufficient caller permissions
+<DD><CODE><A HREF="http://java.sun.com/j2se/1.4.2/docs/api/java/lang/ClassNotFoundException.html" title="class or interface in java.lang">ClassNotFoundException</A></CODE> - if the class of the discovered registrar
+ cannot be resolved
+<DD><CODE><A HREF="http://java.sun.com/j2se/1.4.2/docs/api/java/lang/NullPointerException.html" title="class or interface in java.lang">NullPointerException</A></CODE> - if <code>socket</code> is <code>null</code></DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="handleUnicastDiscovery(com.sun.jini.discovery.UnicastResponse, java.net.Socket, net.jini.core.constraint.InvocationConstraints, com.sun.jini.discovery.ClientSubjectChecker, java.util.Collection)"><!-- --></A><H3>
+handleUnicastDiscovery</H3>
+<PRE>
+public abstract void <B>handleUnicastDiscovery</B>(<A HREF="../../../../com/sun/jini/discovery/UnicastResponse.html" title="class in com.sun.jini.discovery">UnicastResponse</A>&nbsp;response,
+                                            <A HREF="http://java.sun.com/j2se/1.4.2/docs/api/java/net/Socket.html" title="class or interface in java.net">Socket</A>&nbsp;socket,
+                                            <A HREF="../../../../net/jini/core/constraint/InvocationConstraints.html" title="class in net.jini.core.constraint">InvocationConstraints</A>&nbsp;constraints,
+                                            <A HREF="../../../../com/sun/jini/discovery/ClientSubjectChecker.html" title="interface in com.sun.jini.discovery">ClientSubjectChecker</A>&nbsp;checker,
+                                            <A HREF="http://java.sun.com/j2se/1.4.2/docs/api/java/util/Collection.html" title="class or interface in java.util">Collection</A>&nbsp;context)
+                                     throws <A HREF="http://java.sun.com/j2se/1.4.2/docs/api/java/io/IOException.html" title="class or interface in java.io">IOException</A></PRE>
+<DL>
+<DD>Handles the server side of unicast discovery, transmitting the given
+ response data over the provided socket using the given collection of
+ object stream context objects in a manner that satisfies the specified
+ constraints and client subject checker (if any).  This method assumes
+ that the protocol version number has already been consumed from the
+ socket, but that no further processing of the connection has occurred.
+ <code>null</code> constraints are considered equivalent to empty
+ constraints.
+<P>
+<DD><DL>
+<DT><B>Parameters:</B><DD><CODE>response</CODE> - the unicast response data to transmit<DD><CODE>socket</CODE> - the socket on which to handle unicast discovery<DD><CODE>constraints</CODE> - the constraints to apply to unicast discovery, or
+ <code>null</code><DD><CODE>checker</CODE> - the object to use to check the client subject, or
+ <code>null</code><DD><CODE>context</CODE> - the collection of context information objects to use when
+ marshalling the registrar proxy
+<DT><B>Throws:</B>
+<DD><CODE><A HREF="http://java.sun.com/j2se/1.4.2/docs/api/java/io/IOException.html" title="class or interface in java.io">IOException</A></CODE> - if the protocol handshake fails, or if an error
+ occurs in interpreting received data or in formatting data to send
+<DD><CODE><A HREF="../../../../net/jini/io/UnsupportedConstraintException.html" title="class in net.jini.io">UnsupportedConstraintException</A></CODE> - if unable to satisfy the
+ specified constraints
+<DD><CODE><A HREF="http://java.sun.com/j2se/1.4.2/docs/api/java/lang/SecurityException.html" title="class or interface in java.lang">SecurityException</A></CODE> - if the given constraints cannot be satisfied
+ due to insufficient caller permissions, or if the client subject check
+ fails
+<DD><CODE><A HREF="http://java.sun.com/j2se/1.4.2/docs/api/java/lang/NullPointerException.html" title="class or interface in java.lang">NullPointerException</A></CODE> - if <code>response</code>,
+ <code>socket</code>, or <code>context</code> is <code>null</code></DL>
+</DD>
+</DL>
+<!-- ========= END OF CLASS DATA ========= -->
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+  <TR ALIGN="center" VALIGN="top">
+  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+  <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
+  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="class-use/Discovery.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
+  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+  </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="../../../../com/sun/jini/discovery/DelayedMulticastRequestDecoder.html" title="interface in com.sun.jini.discovery"><B>PREV CLASS</B></A>&nbsp;
+&nbsp;<A HREF="../../../../com/sun/jini/discovery/DiscoveryConstraints.html" title="class in com.sun.jini.discovery"><B>NEXT CLASS</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+  <A HREF="../../../../index.html?com/sun/jini/discovery/Discovery.html" target="_top"><B>FRAMES</B></A>  &nbsp;
+&nbsp;<A HREF="Discovery.html" target="_top"><B>NO FRAMES</B></A>  &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+  <!--
+  if(window==top) {
+    document.writeln('<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+  }
+  //-->
+</SCRIPT>
+<NOSCRIPT>
+  <A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+<TR>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+  SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;<A HREF="#field_summary">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+DETAIL:&nbsp;<A HREF="#field_detail">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+Copyright 2007, multiple authors.<br>Licensed under the <a href="http://www.apache.org/licenses/LICENSE-2.0" target="child" >Apache License, Version 2.0</a>, see the <a href="../../../../doc-files/NOTICE" target="child" >NOTICE</a> file for attributions.
+</BODY>
+</HTML>

Added: websites/staging/river/trunk/content/river/doc/api/com/sun/jini/discovery/DiscoveryConstraintTrustVerifier.html
==============================================================================
--- websites/staging/river/trunk/content/river/doc/api/com/sun/jini/discovery/DiscoveryConstraintTrustVerifier.html (added)
+++ websites/staging/river/trunk/content/river/doc/api/com/sun/jini/discovery/DiscoveryConstraintTrustVerifier.html Fri Dec 24 21:44:20 2010
@@ -0,0 +1,310 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.5.0_15) on Mon Mar 08 17:45:48 EST 2010 -->
+<TITLE>
+DiscoveryConstraintTrustVerifier (Apache River v2.1.2-SNAPSHOT API Documentation)
+</TITLE>
+
+<META NAME="keywords" CONTENT="com.sun.jini.discovery.DiscoveryConstraintTrustVerifier class">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+    parent.document.title="DiscoveryConstraintTrustVerifier (Apache River v2.1.2-SNAPSHOT API Documentation)";
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+  <TR ALIGN="center" VALIGN="top">
+  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+  <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
+  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="class-use/DiscoveryConstraintTrustVerifier.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
+  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+  </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="../../../../com/sun/jini/discovery/DiscoveryConstraints.html" title="class in com.sun.jini.discovery"><B>PREV CLASS</B></A>&nbsp;
+&nbsp;<A HREF="../../../../com/sun/jini/discovery/DiscoveryFormatProvider.html" title="interface in com.sun.jini.discovery"><B>NEXT CLASS</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+  <A HREF="../../../../index.html?com/sun/jini/discovery/DiscoveryConstraintTrustVerifier.html" target="_top"><B>FRAMES</B></A>  &nbsp;
+&nbsp;<A HREF="DiscoveryConstraintTrustVerifier.html" target="_top"><B>NO FRAMES</B></A>  &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+  <!--
+  if(window==top) {
+    document.writeln('<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+  }
+  //-->
+</SCRIPT>
+<NOSCRIPT>
+  <A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+<TR>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+  SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+DETAIL:&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<!-- ======== START OF CLASS DATA ======== -->
+<H2>
+<FONT SIZE="-1">
+com.sun.jini.discovery</FONT>
+<BR>
+Class DiscoveryConstraintTrustVerifier</H2>
+<PRE>
+<A HREF="http://java.sun.com/j2se/1.4.2/docs/api/java/lang/Object.html" title="class or interface in java.lang">java.lang.Object</A>
+  <IMG SRC="../../../../resources/inherit.gif" ALT="extended by "><B>com.sun.jini.discovery.DiscoveryConstraintTrustVerifier</B>
+</PRE>
+<DL>
+<DT><B>All Implemented Interfaces:</B> <DD><A HREF="../../../../net/jini/security/TrustVerifier.html" title="interface in net.jini.security">TrustVerifier</A></DD>
+</DL>
+<HR>
+<DL>
+<DT><PRE>public class <B>DiscoveryConstraintTrustVerifier</B><DT>extends <A HREF="http://java.sun.com/j2se/1.4.2/docs/api/java/lang/Object.html" title="class or interface in java.lang">Object</A><DT>implements <A HREF="../../../../net/jini/security/TrustVerifier.html" title="interface in net.jini.security">TrustVerifier</A></DL>
+</PRE>
+
+<P>
+Trust verifier for instances of the constraint classes defined in the <A HREF="../../../../com/sun/jini/discovery/package-summary.html"><CODE>com.sun.jini.discovery</CODE></A> package.  This class is intended to be specified in
+ a resource to configure the operation of <A HREF="../../../../net/jini/security/Security.html#verifyObjectTrust(java.lang.Object, java.lang.ClassLoader, java.util.Collection)"><CODE>Security.verifyObjectTrust</CODE></A>.
+<P>
+
+<P>
+<DL>
+<DT><B>Since:</B></DT>
+  <DD>2.0</DD>
+<DT><B>Author:</B></DT>
+  <DD>Sun Microsystems, Inc.</DD>
+</DL>
+<HR>
+
+<P>
+<!-- ======== NESTED CLASS SUMMARY ======== -->
+
+<A NAME="nested_class_summary"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+<B>Nested Class Summary</B></FONT></TH>
+</TR>
+</TABLE>
+&nbsp;<A NAME="nested_classes_inherited_from_class_net.jini.security.TrustVerifier"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
+<TH ALIGN="left"><B>Nested classes/interfaces inherited from interface net.jini.security.<A HREF="../../../../net/jini/security/TrustVerifier.html" title="interface in net.jini.security">TrustVerifier</A></B></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><CODE><A HREF="../../../../net/jini/security/TrustVerifier.Context.html" title="interface in net.jini.security">TrustVerifier.Context</A></CODE></TD>
+</TR>
+</TABLE>
+&nbsp;
+
+<!-- ======== CONSTRUCTOR SUMMARY ======== -->
+
+<A NAME="constructor_summary"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+<B>Constructor Summary</B></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><CODE><B><A HREF="../../../../com/sun/jini/discovery/DiscoveryConstraintTrustVerifier.html#DiscoveryConstraintTrustVerifier()">DiscoveryConstraintTrustVerifier</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Creates an instance.</TD>
+</TR>
+</TABLE>
+&nbsp;
+<!-- ========== METHOD SUMMARY =========== -->
+
+<A NAME="method_summary"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+<B>Method Summary</B></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;boolean</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../com/sun/jini/discovery/DiscoveryConstraintTrustVerifier.html#isTrustedObject(java.lang.Object, net.jini.security.TrustVerifier.Context)">isTrustedObject</A></B>(<A HREF="http://java.sun.com/j2se/1.4.2/docs/api/java/lang/Object.html" title="class or interface in java.lang">Object</A>&nbsp;obj,
+                <A HREF="../../../../net/jini/security/TrustVerifier.Context.html" title="interface in net.jini.security">TrustVerifier.Context</A>&nbsp;ctx)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns <code>true</code> if the specified object is known to be trusted
+ to correctly implement its contract; returns <code>false</code>
+ otherwise.</TD>
+</TR>
+</TABLE>
+&nbsp;<A NAME="methods_inherited_from_class_java.lang.Object"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
+<TH ALIGN="left"><B>Methods inherited from class java.lang.<A HREF="http://java.sun.com/j2se/1.4.2/docs/api/java/lang/Object.html" title="class or interface in java.lang">Object</A></B></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><CODE><A HREF="http://java.sun.com/j2se/1.4.2/docs/api/java/lang/Object.html#clone()" title="class or interface in java.lang">clone</A>, <A HREF="http://java.sun.com/j2se/1.4.2/docs/api/java/lang/Object.html#equals(java.lang.Object)" title="class or interface in java.lang">equals</A>, <A HREF="http://java.sun.com/j2se/1.4.2/docs/api/java/lang/Object.html#finalize()" title="class or interface in java.lang">finalize</A>, <A HREF="http://java.sun.com/j2se/1.4.2/docs/api/java/lang/Object.html#getClass()" title="class or interface in java.lang">getClass</A>, <A HREF="http://java.sun.com/j2se/1.4.2/docs/api/java/lang/Object.html#hashCode()" title="class or interface in java.lang">hashCode</A>, <A HREF="http://java.sun.com/j2se/1.4.2/docs/api/java/lang/Object.html#notify()" title="class or interface in java.lang">notify</A>, <A HREF="http://java.sun.com/j2se/1.4.2/docs/api/java/lang/Object.html#notifyAll()" title="class or interface in java.lang">notifyAll</A>, <A HREF="http://
 java.sun.com/j2se/1.4.2/docs/api/java/lang/Object.html#toString()" title="class or interface in java.lang">toString</A>, <A HREF="http://java.sun.com/j2se/1.4.2/docs/api/java/lang/Object.html#wait()" title="class or interface in java.lang">wait</A>, <A HREF="http://java.sun.com/j2se/1.4.2/docs/api/java/lang/Object.html#wait(long)" title="class or interface in java.lang">wait</A>, <A HREF="http://java.sun.com/j2se/1.4.2/docs/api/java/lang/Object.html#wait(long, int)" title="class or interface in java.lang">wait</A></CODE></TD>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+
+<!-- ========= CONSTRUCTOR DETAIL ======== -->
+
+<A NAME="constructor_detail"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
+<B>Constructor Detail</B></FONT></TH>
+</TR>
+</TABLE>
+
+<A NAME="DiscoveryConstraintTrustVerifier()"><!-- --></A><H3>
+DiscoveryConstraintTrustVerifier</H3>
+<PRE>
+public <B>DiscoveryConstraintTrustVerifier</B>()</PRE>
+<DL>
+<DD>Creates an instance.
+<P>
+</DL>
+
+<!-- ============ METHOD DETAIL ========== -->
+
+<A NAME="method_detail"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
+<B>Method Detail</B></FONT></TH>
+</TR>
+</TABLE>
+
+<A NAME="isTrustedObject(java.lang.Object, net.jini.security.TrustVerifier.Context)"><!-- --></A><H3>
+isTrustedObject</H3>
+<PRE>
+public boolean <B>isTrustedObject</B>(<A HREF="http://java.sun.com/j2se/1.4.2/docs/api/java/lang/Object.html" title="class or interface in java.lang">Object</A>&nbsp;obj,
+                               <A HREF="../../../../net/jini/security/TrustVerifier.Context.html" title="interface in net.jini.security">TrustVerifier.Context</A>&nbsp;ctx)
+                        throws <A HREF="http://java.sun.com/j2se/1.4.2/docs/api/java/rmi/RemoteException.html" title="class or interface in java.rmi">RemoteException</A></PRE>
+<DL>
+<DD>Returns <code>true</code> if the specified object is known to be trusted
+ to correctly implement its contract; returns <code>false</code>
+ otherwise.  Returns <code>true</code> if the object is an instance of
+ any of the following classes, and returns <code>false</code> otherwise:
+ <ul>
+ <li> <A HREF="../../../../com/sun/jini/discovery/DiscoveryProtocolVersion.html" title="class in com.sun.jini.discovery"><CODE>DiscoveryProtocolVersion</CODE></A>
+ <li> <A HREF="../../../../com/sun/jini/discovery/MulticastMaxPacketSize.html" title="class in com.sun.jini.discovery"><CODE>MulticastMaxPacketSize</CODE></A>
+ <li> <A HREF="../../../../com/sun/jini/discovery/MulticastTimeToLive.html" title="class in com.sun.jini.discovery"><CODE>MulticastTimeToLive</CODE></A>
+ <li> <A HREF="../../../../com/sun/jini/discovery/UnicastSocketTimeout.html" title="class in com.sun.jini.discovery"><CODE>UnicastSocketTimeout</CODE></A>
+ </ul>
+<P>
+<DD><DL>
+<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../net/jini/security/TrustVerifier.html#isTrustedObject(java.lang.Object, net.jini.security.TrustVerifier.Context)">isTrustedObject</A></CODE> in interface <CODE><A HREF="../../../../net/jini/security/TrustVerifier.html" title="interface in net.jini.security">TrustVerifier</A></CODE></DL>
+</DD>
+<DD><DL>
+<DT><B>Parameters:</B><DD><CODE>obj</CODE> - the object in which to verify trust<DD><CODE>ctx</CODE> - the trust verifier context, to aid in verification of
+ the specified object and its components
+<DT><B>Returns:</B><DD><code>true</code> if the specified object is known to be
+ trusted to correctly implement its contract; <code>false</code>
+ otherwise
+<DT><B>Throws:</B>
+<DD><CODE><A HREF="http://java.sun.com/j2se/1.4.2/docs/api/java/lang/NullPointerException.html" title="class or interface in java.lang">NullPointerException</A></CODE> - if any argument is <code>null</code>
+<DD><CODE><A HREF="http://java.sun.com/j2se/1.4.2/docs/api/java/rmi/RemoteException.html" title="class or interface in java.rmi">RemoteException</A></CODE> - if a communication-related exception occurs</DL>
+</DD>
+</DL>
+<!-- ========= END OF CLASS DATA ========= -->
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+  <TR ALIGN="center" VALIGN="top">
+  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+  <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
+  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="class-use/DiscoveryConstraintTrustVerifier.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
+  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+  </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="../../../../com/sun/jini/discovery/DiscoveryConstraints.html" title="class in com.sun.jini.discovery"><B>PREV CLASS</B></A>&nbsp;
+&nbsp;<A HREF="../../../../com/sun/jini/discovery/DiscoveryFormatProvider.html" title="interface in com.sun.jini.discovery"><B>NEXT CLASS</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+  <A HREF="../../../../index.html?com/sun/jini/discovery/DiscoveryConstraintTrustVerifier.html" target="_top"><B>FRAMES</B></A>  &nbsp;
+&nbsp;<A HREF="DiscoveryConstraintTrustVerifier.html" target="_top"><B>NO FRAMES</B></A>  &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+  <!--
+  if(window==top) {
+    document.writeln('<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+  }
+  //-->
+</SCRIPT>
+<NOSCRIPT>
+  <A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+<TR>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+  SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+DETAIL:&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+Copyright 2007, multiple authors.<br>Licensed under the <a href="http://www.apache.org/licenses/LICENSE-2.0" target="child" >Apache License, Version 2.0</a>, see the <a href="../../../../doc-files/NOTICE" target="child" >NOTICE</a> file for attributions.
+</BODY>
+</HTML>