A candidate for the Apache River 2.1.2 Release is available at

http://people.apache.org/~peter_firmstone/

The release candidate sources are zip / tar.gz archives of the sources in:

http://svn.apache.org/repos/asf/incubator/river/jtsk/trunk/

The SHA1 checksums are:

apache-river-2.1.2-incubating-src.tar.gz:
3D06 58BC C42C 460C 4BCE  F602 A3FB 4357 C5BA F65E
apache-river-2.1.2-incubating-src.zip:
71F8 2BE5 ADC9 AAB2 2D73  0B9D EF11 1E63 1749 3168

The binary release artifacts, also available there are SHA1 checksums:

apache-river-2.1.2-incubating-bin.tar.gz:
3CA5 299C 679D 8887 5442  ACA9 CAD2 618C 2A24 A26B
apache-river-2.1.2-incubating-bin.zip:
BBB8 3072 1C57 34BF BED5  954B 5DDF 41DD 322F 8303

Please vote on releasing this package as Apache River 2.1.2
The vote is open until Friday the 12th of February 2010 and passes if
a majority of at least three +1 River Incubator PMC votes are cast.


 Apache River
 v2.1.2 Release Notes

------------------------------------------------------------------------
Apache River is an effort undergoing incubation at The Apache Software Foundation (ASF), sponsored by the Apache Incubator. Incubation is required of all newly accepted projects until a further review indicates that the infrastructure, communications, and decision making process have stabilized in a manner consistent with other successful ASF projects. While incubation status is not necessarily a reflection of the completeness or stability of the code, it does indicate that the project has yet to be fully endorsed by the ASF.

Apache River is aimed at the development and advancement of the River technology core infrastructure. River technology is a service oriented architecture that defines a programming model which both exploits and extends Java technology to enable the construction of secure, distributed systems which are adaptive to change.

------------------------------------------------------------------------


   Notes of Interest for this Release

This second release from the Apache River project is based on the contributions of Sun's Jini Technology Starter Kit (Starter Kit) v2.1 and Service UI from Artima. The release focuses on merging the two contributions together, structuring separate src and bin releases, and amending the source and documentation naming/versioning/etc to the Apache River project.

Some points of note:

   * NOTICE file and source license headers updated
   * Source and documentation updated for release name ("Apache River
     release") and version ("v2.1.2")
   * Graphical installer (which was a 3rd party application in the
     Starter Kit) is no longer available
   * The combined source and binary release in the Starter Kit has been
     separated into two releases: src and bin
   * The "logstore" implementation of com.sun.jini.outrigger.Store has
     been removed

     The persistent version of Outrigger relies on a pluggable
     persistence layer, |com.sun.jini.outrigger.Store|. Previous
     releases of the Starter Kit included two implementations of the
     Store interface, /logstore/ and /snaplogstore/. This release
     removes logstore.

     Logstore has been around in various forms since the 1.0 version of
     Outrigger. Snapstore was introduced in v2.1 of the Starter Kit.

     The v2.0.n releases of the Starter Kit used logstore as the
     default Store implementation, this release has no default Store.
     In order to switch an existing set of configuration files,
     security policy files, etc., from using logstore to snaplogstore,
     you will need to change the |com.sun.jini.outrigger.store|
     configuration entry (or add a store configuration entry if you
     don't already have one) to yield a
     |com.sun.jini.outrigger.snaplogstore.LogStore| object. You will
     also need to ensure that |outrigger-snaplogstore.jar| has been
     granted sufficient permissions (see Outrigger's package
     documentation for a sample security policy file.).

     Note that depending on the nature of your application snaplogstore
     can have a significantly different performance profile than logstore.

     The storage formats used by snaplogstore and logstore are mutually
     incompatible.

------------------------------------------------------------------------


   Submitting Issues

If you would like to submit a bug against the Apache River release, please use the River JIRA <http://issues.apache.org/jira/browse/RIVER>. To discuss problems, questions, or suggestions on the release, please subscribe to the |river-dev| list from the project Mailing Lists <http://incubator.apache.org/river/mailing.html> page.

------------------------------------------------------------------------


   Upcoming Changes planned for the next version of Apache River

# All packages ouside of the net.jini namespace will be renamed to org.apache.river.
# Support for Java 5 language features
# Support for Modular Frameworks conforming to the OSGi r4.2 core Specification
------------------------------------------------------------------------


   Changes made since Apache River v2.1.1


   Bug

   * [RIVER-5 <https://issues.apache.org/jira/browse/RIVER-5>] -
     HTTMPMD URLs can be considered equal while they are not
   * [RIVER-8 <https://issues.apache.org/jira/browse/RIVER-8>] -
     com.sun.jini.tool.ClassDep empty inside collection doesn't work
   * [RIVER-17 <https://issues.apache.org/jira/browse/RIVER-17>] -
     Misleading logging message when discovery constraint checking is
     delayed
   * [RIVER-18 <https://issues.apache.org/jira/browse/RIVER-18>] -
     Order of discovery providers not maintained
   * [RIVER-22 <https://issues.apache.org/jira/browse/RIVER-22>] - NPE
     in
     net.jini.jeri.tcp.TcpEndpoint$ConnectionImpl.checkConnectPermission
   * [RIVER-24 <https://issues.apache.org/jira/browse/RIVER-24>] -
     PreferredListGen can create illegal PREFERRED.LIST
   * [RIVER-78 <https://issues.apache.org/jira/browse/RIVER-78>] -
     ClassDep generates duplicate output lines
   * [RIVER-82 <https://issues.apache.org/jira/browse/RIVER-82>] -
     ClassDep generates duplicate output lines
   * [RIVER-91 <https://issues.apache.org/jira/browse/RIVER-91>] -
     Uninstaller does not remove all items
   * [RIVER-205 <https://issues.apache.org/jira/browse/RIVER-205>] -
     LookupDiscovery can give untrusted code access to privileged threads
   * [RIVER-209 <https://issues.apache.org/jira/browse/RIVER-209>] -
     NullPointerException in SslConnection.checkConnectPermission()
   * [RIVER-212 <https://issues.apache.org/jira/browse/RIVER-212>] -
     use of "enum" as a variable name
   * [RIVER-213 <https://issues.apache.org/jira/browse/RIVER-213>] -
     (DOC) - JoinManger has typo in javadoc (missing </code>
     termination tag)
   * [RIVER-215 <https://issues.apache.org/jira/browse/RIVER-215>] -
     LookupDiscovery throws NullPointerException on terminate
   * [RIVER-216 <https://issues.apache.org/jira/browse/RIVER-216>] -
     ConfigurationFile should throw ExceptionInInitializerError if
     unable to read prohibited methods
   * [RIVER-217 <https://issues.apache.org/jira/browse/RIVER-217>] -
     Browser incorrectly assumes event source is ServiceRegistrar proxy
   * [RIVER-223 <https://issues.apache.org/jira/browse/RIVER-223>] -
     test: jtreg/net/jini/jeri/tcp/connectTimeout/TestConnectTimeout
     fails on Linux
   * [RIVER-224 <https://issues.apache.org/jira/browse/RIVER-224>] -
     Problem using browser to destroy service that supports
     DestroyAdmin but not JoinAdmin
   * [RIVER-225 <https://issues.apache.org/jira/browse/RIVER-225>] -
     NullPointerException in Reggie during destroy
   * [RIVER-227 <https://issues.apache.org/jira/browse/RIVER-227>] -
     tools manpages command lines do not include line continuation
     characters
   * [RIVER-230 <https://issues.apache.org/jira/browse/RIVER-230>] -
     (mux) SelectionManager catch Error block assumes getMessage()
     returns non-null
   * [RIVER-232 <https://issues.apache.org/jira/browse/RIVER-232>] -
     JarWrapper and PreferredListGen uses jsk_install_dir and install_dir
   * [RIVER-234 <https://issues.apache.org/jira/browse/RIVER-234>] -
     (DOC) Fiddler manpage directions for HTTP server should reference
     classserver.jar, not tools.jar
   * [RIVER-240 <https://issues.apache.org/jira/browse/RIVER-240>] -
     BasicInvocationDispatcher.dispatch could log more info for some
     exceptions
   * [RIVER-241 <https://issues.apache.org/jira/browse/RIVER-241>] -
     Mercury spelling errore
   * [RIVER-242 <https://issues.apache.org/jira/browse/RIVER-242>] - if
     a given ConnectionManager instance cannot create a reaper thread
     once, it never will again
   * [RIVER-245 <https://issues.apache.org/jira/browse/RIVER-245>] -
     Unicast discovery should close socket in case of connection
     exception.
   * [RIVER-252 <https://issues.apache.org/jira/browse/RIVER-252>] -
     ComputeHttpmdCodebase NPE if resource bundle not found
   * [RIVER-253 <https://issues.apache.org/jira/browse/RIVER-253>] -
     ComputeDigest NPE if resource bundle not found
   * [RIVER-254 <https://issues.apache.org/jira/browse/RIVER-254>] -
     request initiation can block on I/O for inapplicable connection
   * [RIVER-255 <https://issues.apache.org/jira/browse/RIVER-255>] -
     Outrigger DestroyThread does not catch exceptions from
     exporter.unexport
   * [RIVER-284 <https://issues.apache.org/jira/browse/RIVER-284>] -
     [PATCH] fix bad ParticipantHandle.compareTo
   * [RIVER-286 <https://issues.apache.org/jira/browse/RIVER-286>] -
     [PATCH] iterators on synchronized collections still need
     synchronization
   * [RIVER-289 <https://issues.apache.org/jira/browse/RIVER-289>] -
     Fix for RIVER-247 introduced wrong license headers and references
   * [RIVER-298 <https://issues.apache.org/jira/browse/RIVER-298>] - No
     JavaDocs generated for package "com.sun.jini.reliableLog"
   * [RIVER-302 <https://issues.apache.org/jira/browse/RIVER-302>] -
     ClassDep -newdirbehaviour option does not work
   * [RIVER-305 <https://issues.apache.org/jira/browse/RIVER-305>] -
     qa/GetPermissions test still uses "enum" keyword
   * [RIVER-320 <https://issues.apache.org/jira/browse/RIVER-320>] -
     Prebuilt hello example certificates have expired - need to provide
     new ones
   * [RIVER-324 <https://issues.apache.org/jira/browse/RIVER-324>] -
     Under certain circumstances, the ServiceDiscoveryManager internal
     LookupCache implementation can incorrectly process attribute
     change events before the lookup snapshot is processed.


   Improvement

   * [RIVER-7 <https://issues.apache.org/jira/browse/RIVER-7>] -
     com.sun.jini.tool.ClassDep should be smarter with outer classes
   * [RIVER-9 <https://issues.apache.org/jira/browse/RIVER-9>] -
     PreferredClassLoader should try to avoid making a direct check
     against the first URL
   * [RIVER-25 <https://issues.apache.org/jira/browse/RIVER-25>] -
     Improve logging for JoinManager at INFO and WARNING level
   * [RIVER-115 <https://issues.apache.org/jira/browse/RIVER-115>] -
     Multiple jar files with conflicting lists need facilities to map
     the chosen preferred value
   * [RIVER-116 <https://issues.apache.org/jira/browse/RIVER-116>] -
     Multiple jar files with conflicting lists need facilities to map
     the chosen preferred value
   * [RIVER-160 <https://issues.apache.org/jira/browse/RIVER-160>] -
     add TrustEquivalence to browser's list of uninterestingInterfaces
   * [RIVER-201 <https://issues.apache.org/jira/browse/RIVER-201>] -
     Show interfaces rather than classes in browser's Matching Services
     pane.
   * [RIVER-206 <https://issues.apache.org/jira/browse/RIVER-206>] -
     Change default load factors from 3 to 1
   * [RIVER-210 <https://issues.apache.org/jira/browse/RIVER-210>] -
     Browser should cancel event lease on exit
   * [RIVER-220 <https://issues.apache.org/jira/browse/RIVER-220>] -
     LookupLocatorDiscovery catch Throwable blocks should also catch
     Throwable
   * [RIVER-226 <https://issues.apache.org/jira/browse/RIVER-226>] -
     LLD: consider delaying the queuing of a discovery request
     immediately after a discard
   * [RIVER-229 <https://issues.apache.org/jira/browse/RIVER-229>] -
     reduce number of Reaper threads created by ConnectionManager
   * [RIVER-231 <https://issues.apache.org/jira/browse/RIVER-231>] -
     ComputeHttpmdCodebase man page could be clarified with respect to
     algorithm used
   * [RIVER-233 <https://issues.apache.org/jira/browse/RIVER-233>] -
     ComputeDigest instructions reference sha and sha1
   * [RIVER-243 <https://issues.apache.org/jira/browse/RIVER-243>] -
     JarWrapper javadoc could be clearer wrt to classpath manifests
   * [RIVER-244 <https://issues.apache.org/jira/browse/RIVER-244>] -
     Text area below menu bar in ServiceBrowser should not be editable
   * [RIVER-246 <https://issues.apache.org/jira/browse/RIVER-246>] -
     Consider adding shutdown hook so Reggie sends final multicast
     packet if its VM is terminated
   * [RIVER-247 <https://issues.apache.org/jira/browse/RIVER-247>] -
     Destroy processing should use configurable duration and interval
     for unexporting
   * [RIVER-256 <https://issues.apache.org/jira/browse/RIVER-256>] -
     Outrigger catch Throwable blocks should also catch Throwable
   * [RIVER-262 <https://issues.apache.org/jira/browse/RIVER-262>] -
     ServiceUI Specification
   * [RIVER-270 <https://issues.apache.org/jira/browse/RIVER-270>] -
     tar tasks in release* ant targets fail due to 100-char limitation
     and are disabled
   * [RIVER-285 <https://issues.apache.org/jira/browse/RIVER-285>] -
     LookupDiscoveryManager has unused variable declarations


   New Feature

   * [RIVER-151 <https://issues.apache.org/jira/browse/RIVER-151>] -
     ClassDep should have a method to determine if problems occurred
   * [RIVER-161 <https://issues.apache.org/jira/browse/RIVER-161>] -
     Coalesce jars from multiple source dirs while retain current
     Manifest Classpath semantics
   * [RIVER-163 <https://issues.apache.org/jira/browse/RIVER-163>] -
     ClassDep doesn't pick up annotation or type parameter dependencies
   * [RIVER-292 <https://issues.apache.org/jira/browse/RIVER-292>] -
     The service browser should provide support for the ServiceUI support
   * [RIVER-295 <https://issues.apache.org/jira/browse/RIVER-295>] -
     Support configurable option to prevent from popup windows that
     require a confirmation by the user


   Task

   * [RIVER-294 <https://issues.apache.org/jira/browse/RIVER-294>] -
     Remove http://svn.apache.org/repos/asf/incubator/river/trunk/ from
     the SVN repository


   Test

   * [RIVER-291 <https://issues.apache.org/jira/browse/RIVER-291>] -
     Cannot build QA tests using the supplied make files

------------------------------------------------------------------------


   Changes made since JTSK v2.1


   Bug

   * [RIVER-211 <https://issues.apache.org/jira/browse/RIVER-211>] -
     source files for ServiceItem, ServiceMatches, and ServiceTemplate
     do not match binary distribution
   * [RIVER-269 <https://issues.apache.org/jira/browse/RIVER-269>] -
     build reports problem with javadoc generation on Windows


   Task

   * [RIVER-263 <https://issues.apache.org/jira/browse/RIVER-263>] -
     Remove outrigger logstore sources and build support
   * [RIVER-264 <https://issues.apache.org/jira/browse/RIVER-264>] -
     integrate serviceui sources into jtsk trunk
   * [RIVER-266 <https://issues.apache.org/jira/browse/RIVER-266>] -
     update build and source code for name, version number, ...
   * [RIVER-267 <https://issues.apache.org/jira/browse/RIVER-267>] -
     Documentation update in release

------------------------------------------------------------------------


   Release notes from the Jini Technology Starter Kit v2.1

   * What's new in v2.1? <cid:[email protected]>
   * Bugs fixed between v2.0.1 and v2.0.2 releases
     <cid:[email protected]>
   * Changes since the v2.0.1 release
     <cid:[email protected]>
   * Platform dependencies <cid:[email protected]>
   * JAR file structure
         o Platform JAR files <cid:[email protected]>
         o Service Starter JAR files
           <cid:[email protected]>
         o Service JAR files <cid:[email protected]>
         o Activation JAR files <cid:[email protected]>
         o Tools JAR files <cid:[email protected]>
         o Persistent Outrigger JAR files
           <cid:[email protected]>
         o Deprecated JAR files <cid:[email protected]>
   * Note on the API documentation
     <cid:[email protected]>


   Changes by Component, updated for v2.1.2


     Services

   * Reggie <cid:[email protected]>
   * Mahalo <cid:[email protected]>
   * Norm <cid:[email protected]>
   * Mercury <cid:[email protected]>
   * Fiddler <cid:[email protected]>
   * Outrigger <cid:[email protected]>


     Utilities

   * Discovery Utilities <cid:[email protected]>
   * Entry Utilities <cid:[email protected]>
   * Join Utilities <cid:[email protected]>
   * Lease Utilities <cid:[email protected]>
   * Service Discovery Utilities
     <cid:[email protected]>


     Tools

   * ServiceBrowser <cid:[email protected]>
   * |ClassDep| <cid:[email protected]>
   * |ClassServer| <cid:[email protected]>
   * |ServiceStarter| <cid:[email protected]>


     Other

   * Jini extensible remote invocation (Jini ERI)
     <cid:[email protected]>
   * Class loader <cid:[email protected]>
   * Security <cid:[email protected]>
   * Activation <cid:[email protected]>
   * |com.sun.jini.thread| <cid:[email protected]>

------------------------------------------------------------------------


         Platform dependencies

     This release depends on new features included in version 1.4 of
     the Java(TM) 2 Platform, Standard Edition
     <http://java.sun.com/j2se/1.4/>. You should not expect to be able
     to use the source code or JAR files from this release with earlier
     versions of the Java platform. This requirement also extends to
     clients that dynamically download code from the services provided
in this release.
------------------------------------------------------------------------


         Platform JAR files

     In this release we have extended our platform requirements to be
     more than just the Java 2 Platform, Standard Edition.

     *|jsk-policy.jar|*
         This JAR file contains a security policy provider,
         |DynamicPolicyProvider|
         
<file:///opt/src/ApacheRiver/trunk/doc/api/net/jini/security/policy/DynamicPolicyProvider.html>,
         that supports dynamic granting of permissions at run time.
         Although use of this policy provider is not required, its use
         is highly recommended when deploying secure applications and
         services. To permit effective use of this policy provider, it
         must first be installed as an extension in the Java 2 SDK (or
         JRE) that you will be using, as described in the installation
         instructions <cid:[email protected]>. This
         is the /only/ JAR file that we recommend installing as an
         extension.

         To use this provider, you need to define a /security/ property
         (/not/ a system property):

         policy.provider=net.jini.security.policy.DynamicPolicyProvider
         in some file (for example, named |security.properties|) and
         then define a /system/ property:

         -Djava.security.properties=path-to-file/security.properties
         when running your application. If you are using a Java 2 SDK
         (or JRE) from a vendor other than Sun, you may also need to
         set a security property:

         
net.jini.security.policy.PolicyFileProvider.basePolicyClass=provider-class
         in the same |security.properties| file, where provider-class
         is the vendor's default policy provider class, which typically
         can be found as the value of the |policy.provider| security
         property in the |jre/lib/security/java.security| file of the
         Java 2 SDK installation.

     *|jsk-platform.jar|*
         This JAR file contains classes and interfaces that we have
         chosen to include in all of our applications, and have also
         chosen to assume are available in all other applications that
         receive objects from our applications. This JAR file primarily
         contains classes and interfaces that are typically referenced in:
             o /service provider/
               
<http://java.sun.com/j2se/1.4/docs/guide/jar/jar.html#Service%20Provider>
               resources to control the configuration of
               |RMIClassLoader|
               
<http://java.sun.com/j2se/1.4/docs/api/java/rmi/server/RMIClassLoader.html>,
               |TrustVerifier|
               
<file:///opt/src/ApacheRiver/trunk/doc/api/net/jini/security/TrustVerifier.html>,
               |IntegrityVerifier|
               
<file:///opt/src/ApacheRiver/trunk/doc/api/net/jini/security/IntegrityVerifier.html>,
               |ServerContext|
               
<file:///opt/src/ApacheRiver/trunk/doc/api/net/jini/export/ServerContext.html>,
               and |DiscoveryFormatProvider|
               
<file:///opt/src/ApacheRiver/trunk/doc/api/com/sun/jini/discovery/DiscoveryFormatProvider.html>
               providers
             o |ConfigurationFile|
               
<file:///opt/src/ApacheRiver/trunk/doc/api/net/jini/config/ConfigurationFile.html>
               source files, but which are unlikely to be referenced
               directly by the applications and services being
               configured (in particular, classes for creating
               |Exporter|
               
<file:///opt/src/ApacheRiver/trunk/doc/api/net/jini/export/Exporter.html>
               and |ProxyPreparer|
               
<file:///opt/src/ApacheRiver/trunk/doc/api/net/jini/security/ProxyPreparer.html>
               instances and their components)
             o dynamically downloaded code, but which we believe are
               not themselves reasonable to download (in particular,
               because they are needed to bootstrap proxy trust
               verification, or because their implementations require
               extraordinary permissions)
         plus all of the classes and interfaces that their
         implementations directly or indirectly depend on.

         This JAR file contains all of the classes and interfaces in
         the following namespaces (including all subpackages):

             o |net.jini.activation|
             o |net.jini.config|
             o |net.jini.constraint|
             o |net.jini.core|
             o |net.jini.export|
             o |net.jini.id|
             o |net.jini.iiop|
             o |net.jini.io|
             o |net.jini.jeri|
             o |net.jini.jrmp|
             o |net.jini.loader|
             o |net.jini.security|
             o |net.jini.url|
             o |com.sun.jini.discovery|
         plus the following classes:
             o |ConstrainableLookupLocatorTrustVerifier|
               
<file:///opt/src/ApacheRiver/trunk/doc/api/net/jini/discovery/ConstrainableLookupLocatorTrustVerifier.html>

             o |KeyStores|
               
<file:///opt/src/ApacheRiver/trunk/doc/api/com/sun/jini/config/KeyStores.html>

             o |ConfigUtil|
               
<file:///opt/src/ApacheRiver/trunk/doc/api/com/sun/jini/config/ConfigUtil.html>

             o |LogManager|
               
<file:///opt/src/ApacheRiver/trunk/doc/api/com/sun/jini/logging/LogManager.html>

         Any other classes or interfaces found in this JAR file should
         be considered implementation details.

         This JAR file includes a protocol handler for HTTPMD
         
<file:///opt/src/ApacheRiver/trunk/doc/api/net/jini/url/httpmd/package-summary.html>
         URLs. To enable this handler, you need to specify the system
         property:

         -Djava.protocol.handler.pkgs=net.jini.url
         in any application that creates or receives such URLs. In
         particular, any service that uses an HTTPMD URL in its
         codebase, and any client that wants to download code from such
         a service, should set this system property.

         It is important to understand that the contents of this JAR
         file do /not/ constitute a "standard" platform; this JAR file
         is simply our choice of /a/ platform likely to be useful for
         deployments of this release. Depending on your deployment
         requirements, you may want to alter the contents of this JAR
         file (but if you do so, you also might have to make changes to
         other JAR files).

     *|jsk-resources.jar|*
         This JAR file is referenced in the |Class-Path| manifest
         attribute of |jsk-platform.jar|, and configures the following
         specific service providers to be used:
             o |RMIClassLoader|
               
<http://java.sun.com/j2se/1.4/docs/api/java/rmi/server/RMIClassLoader.html>
               provider:
                   + |PreferredClassProvider|
                     
<file:///opt/src/ApacheRiver/trunk/doc/api/net/jini/loader/pref/PreferredClassProvider.html>

             o |TrustVerifier|
               
<file:///opt/src/ApacheRiver/trunk/doc/api/net/jini/security/TrustVerifier.html>
               providers:
                   + |ConstraintTrustVerifier|
                     
<file:///opt/src/ApacheRiver/trunk/doc/api/net/jini/constraint/ConstraintTrustVerifier.html>

                   + |BasicJeriTrustVerifier|
                     
<file:///opt/src/ApacheRiver/trunk/doc/api/net/jini/jeri/BasicJeriTrustVerifier.html>

                   + |SslTrustVerifier|
                     
<file:///opt/src/ApacheRiver/trunk/doc/api/net/jini/jeri/ssl/SslTrustVerifier.html>

                   + |KerberosTrustVerifier|
                     
<file:///opt/src/ApacheRiver/trunk/doc/api/net/jini/jeri/kerberos/KerberosTrustVerifier.html>

                   + |ProxyTrustVerifier|
                     
<file:///opt/src/ApacheRiver/trunk/doc/api/net/jini/security/proxytrust/ProxyTrustVerifier.html>

                   + |ConstrainableLookupLocatorTrustVerifier|
                     
<file:///opt/src/ApacheRiver/trunk/doc/api/net/jini/discovery/ConstrainableLookupLocatorTrustVerifier.html>

                   + |DiscoveryConstraintTrustVerifier|
                     
<file:///opt/src/ApacheRiver/trunk/doc/api/com/sun/jini/discovery/DiscoveryConstraintTrustVerifier.html>

             o |IntegrityVerifier|
               
<file:///opt/src/ApacheRiver/trunk/doc/api/net/jini/security/IntegrityVerifier.html>
               providers:
                   + |HttpmdIntegrityVerifier|
                     
<file:///opt/src/ApacheRiver/trunk/doc/api/net/jini/url/httpmd/HttpmdIntegrityVerifier.html>

                   + |HttpsIntegrityVerifier|
                     
<file:///opt/src/ApacheRiver/trunk/doc/api/net/jini/url/https/HttpsIntegrityVerifier.html>

                   + |FileIntegrityVerifier|
                     
<file:///opt/src/ApacheRiver/trunk/doc/api/net/jini/url/file/FileIntegrityVerifier.html>

             o |ServerContext|
               
<file:///opt/src/ApacheRiver/trunk/doc/api/net/jini/export/ServerContext.html>
               providers:
                   + |JrmpServerContext|
                     
<file:///opt/src/ApacheRiver/trunk/doc/api/net/jini/jrmp/JrmpServerContext.html>

             o |DiscoveryFormatProvider|
               
<file:///opt/src/ApacheRiver/trunk/doc/api/com/sun/jini/discovery/DiscoveryFormatProvider.html>s
               for the following discovery formats:
                   + |net.jini.discovery.plaintext|
                   + |net.jini.discovery.ssl|
                   + |net.jini.discovery.kerberos|
                   + |net.jini.discovery.x500.SHA1withDSA|
                   + |net.jini.discovery.x500.SHA1withRSA|
         Depending on your deployment requirements, you may want to
         alter the contents of this JAR file to use different sets of
         providers.

     *|jsk-lib.jar|*
         This JAR file is referenced in the |Class-Path| manifest
         attribute of many Apache River release implementation JAR
         files, and contains the utility APIs that are not tied to a
         specific service implementation.

         This JAR file contains all of the classes and interfaces in
         the following namespaces (including all subpackages):

             o |net.jini.admin|
             o |net.jini.discovery| excluding
               |ConstrainableLookupLocatorTrustVerifier| which is
               contained in |jsk-platform.jar|
             o |net.jini.entry|
             o |net.jini.event|
             o |net.jini.lease|
             o |net.jini.lookup|
             o |net.jini.space|
             o |com.sun.jini.admin|
             o |com.sun.jini.landlord|
             o |com.sun.jini.lease|
             o |com.sun.jini.lookup.entry|
             o |com.sun.jini.proxy|
             o |com.sun.jini.resource|
             o |com.sun.jini.thread|
         plus the following classes:
             o |Config|
               
<file:///opt/src/ApacheRiver/trunk/doc/api/com/sun/jini/config/Config.html>

             o |Levels|
               
<file:///opt/src/ApacheRiver/trunk/doc/api/com/sun/jini/logging/Levels.html>

             o |ActivationAdmin|
               
<file:///opt/src/ApacheRiver/trunk/doc/api/com/sun/jini/phoenix/ActivationAdmin.html>

             o |LifeCycle|
               
<file:///opt/src/ApacheRiver/trunk/doc/api/com/sun/jini/start/LifeCycle.html>

             o |ServiceProxyAccessor|
               
<file:///opt/src/ApacheRiver/trunk/doc/api/com/sun/jini/start/ServiceProxyAccessor.html>

         Any other classes or interfaces found in this JAR file should
         be considered implementation details.

     *|jsk-dl.jar|*
         The codebase JAR file for |jsk-lib.jar|. An application that
         includes |jsk-lib.jar| in its class-path may also need to
         include |jsk-dl.jar| in its codebase.

         This JAR file contains all of the classes and interfaces in
         the following namespaces (including all subpackages):

             o |net.jini.admin|
             o |net.jini.entry|
             o |net.jini.event|
             o |net.jini.lookup.entry| excluding |EntryBeans|
             o |net.jini.space|
             o |com.sun.jini.admin|
             o |com.sun.jini.lease|
             o |com.sun.jini.proxy|
         plus the following classes:
             o |LookupDiscoveryRegistration|
               
<file:///opt/src/ApacheRiver/trunk/doc/api/net/jini/discovery/LookupDiscoveryRegistration.html>

             o |LookupDiscoveryService|
               
<file:///opt/src/ApacheRiver/trunk/doc/api/net/jini/discovery/LookupDiscoveryService.html>

             o |LookupUnmarshalException|
               
<file:///opt/src/ApacheRiver/trunk/doc/api/net/jini/discovery/LookupUnmarshalException.html>

             o |RemoteDiscoveryEvent|
               
<file:///opt/src/ApacheRiver/trunk/doc/api/net/jini/discovery/RemoteDiscoveryEvent.html>

             o |LeaseRenewalService|
               
<file:///opt/src/ApacheRiver/trunk/doc/api/net/jini/lease/LeaseRenewalService.html>

             o |LeaseRenewalSet|
               
<file:///opt/src/ApacheRiver/trunk/doc/api/net/jini/lease/LeaseRenewalSet.html>

             o |LeaseUnmarshalException|
               
<file:///opt/src/ApacheRiver/trunk/doc/api/net/jini/lease/LeaseUnmarshalException.html>

             o |RenewalFailureEvent|
               
<file:///opt/src/ApacheRiver/trunk/doc/api/net/jini/lease/RenewalFailureEvent.html>

             o |ConstrainableLandlordLease|
               
<file:///opt/src/ApacheRiver/trunk/doc/api/com/sun/jini/landlord/ConstrainableLandlordLease.html>

             o |ConstrainableLandlordLeaseMap|
               
<file:///opt/src/ApacheRiver/trunk/doc/api/com/sun/jini/landlord/ConstrainableLandlordLeaseMap.html>

             o |Landlord|
               
<file:///opt/src/ApacheRiver/trunk/doc/api/com/sun/jini/landlord/Landlord.html>

             o |LandlordLease|
               
<file:///opt/src/ApacheRiver/trunk/doc/api/com/sun/jini/landlord/LandlordLease.html>

             o |LandlordLeaseMap|
               
<file:///opt/src/ApacheRiver/trunk/doc/api/com/sun/jini/landlord/LandlordLeaseMap.html>

             o |LandlordProxyVerifier|
               
<file:///opt/src/ApacheRiver/trunk/doc/api/com/sun/jini/landlord/LandlordProxyVerifier.html>

             o |Levels|
               
<file:///opt/src/ApacheRiver/trunk/doc/api/com/sun/jini/logging/Levels.html>

             o |BasicServiceType|
               
<file:///opt/src/ApacheRiver/trunk/doc/api/com/sun/jini/lookup/entry/BasicServiceType.html>

             o |ServiceConfigurationError|
               
<file:///opt/src/ApacheRiver/trunk/doc/api/com/sun/jini/resource/ServiceConfigurationError.html>

             o |ServiceProxyAccessor|
               
<file:///opt/src/ApacheRiver/trunk/doc/api/com/sun/jini/start/ServiceProxyAccessor.html>

         Any other classes or interfaces found in this JAR file should
be considered implementation details.

         Service Starter JAR files

     All of our services are designed to be run under the Service
     Starter
     
<file:///opt/src/ApacheRiver/trunk/doc/api/com/sun/jini/start/package-summary.html>.


     *|start.jar|*
         This executable JAR file is the primary entry point for the
         Service Starter. It acts as both the class path for the
         container virtual machine (VM) for the Java platform that
         executes non-activatable services, and as the setup VM for
         activatable services. It has a |Class-Path| manifest attribute
         that references |jsk-platform.jar|.

     *|sharedvm.jar|*
         This JAR file is used as the class path for the activation
         group VM (the container VM for activatable services). It has a
         |Class-Path| manifest attribute that references both
         |jsk-platform.jar| and |phoenix-init.jar|.

     *|destroy.jar|*
         This executable JAR file can be used to destroy an existing
         activation group and all of the activatable services
         registered in that group.

     *|group.jar|*
         This JAR file contains the implementation of an activatable
         service used to destroy an existing activation group. It is
         typically used as the class path in a
         |SharedActivatableServiceDescriptor|
         
<file:///opt/src/ApacheRiver/trunk/doc/api/com/sun/jini/start/SharedActivatableServiceDescriptor.html>
         in a configuration file passed to |destroy.jar|.

     *|group-dl.jar|*
         The codebase JAR file for |group.jar|, used in the same
service descriptor as above for |group.jar|.

         Service JAR files

     There are two primary JAR files for each service, a service JAR
     file with a name of the form |service.jar|, and a codebase JAR
     file with a name of the form |service-dl.jar|. The service JAR
     file contains the service implementation itself, and can be
     thought of as the /class path/ for the service. The service JAR
     file generally contains three versions of the service: a transient
     (non-activatable, non-persistent) version; a non-activatable,
     persistent version; and an activatable, persistent version. In
     this release, Mahalo and Mercury do not yet provide transient
     versions. The service JAR file is designed to be run under the
     Service Starter, and as such is not directly executable. The
     service JAR file's |Class-Path| manifest attribute refers to
     |jsk-lib.jar|. The codebase JAR file is used as the /codebase
     annotation/ for the service; it contains classes and interfaces
     that are used by the service's proxies and trust verifiers, and
     that clients need to dynamically download. The codebase JAR file
     also contains a /preferred list/
     
<file:///opt/src/ApacheRiver/trunk/doc/api/net/jini/loader/pref/package-summary.html>
     for use by clients that have the |PreferredClassProvider|
     
<file:///opt/src/ApacheRiver/trunk/doc/api/net/jini/loader/pref/PreferredClassProvider.html>
     enabled. The codebase JAR file does not include any of the classes
     or interfaces found in |jsk-dl.jar| therefore |jsk-dl.jar| must be
     included in the service's codebase annotation. The codebase JAR
     should come first in the codebase annotation, so that its
     preferred list is obeyed, rather than the one in |jsk-dl.jar|.
     Neither the service JAR file nor the codebase JAR file include any
     of the classes or interfaces found in |jsk-platform.jar|: the
     Service Starter container (either |start.jar| or |sharedvm.jar|)
     provides these classes for the service implementation, and clients
     are expected to have |jsk-platform.jar| in their class path.

     *|fiddler.jar|*
         The service JAR file for the Fiddler
         
<file:///opt/src/ApacheRiver/trunk/doc/api/com/sun/jini/fiddler/package-summary.html>
         implementation of the lookup discovery service.

     *|fiddler-dl.jar|*
         The codebase JAR file for Fiddler.

     *|mahalo.jar|*
         The service JAR file for the Mahalo
         
<file:///opt/src/ApacheRiver/trunk/doc/api/com/sun/jini/mahalo/package-summary.html>
         implementation of the transaction manager service.

     *|mahalo-dl.jar|*
         The codebase JAR file for Mahalo.

     *|mercury.jar|*
         The service JAR file for the Mercury
         
<file:///opt/src/ApacheRiver/trunk/doc/api/com/sun/jini/mercury/package-summary.html>
         implementation of the event mailbox service.

     *|mercury-dl.jar|*
         The codebase JAR file for Mercury.

     *|norm.jar|*
         The service JAR file for the Norm
         
<file:///opt/src/ApacheRiver/trunk/doc/api/com/sun/jini/norm/package-summary.html>
         implementation of the lease renewal service.

     *|norm-dl.jar|*
         The codebase JAR file for Norm.

     *|outrigger.jar|*
         The service JAR file for the Outrigger
         
<file:///opt/src/ApacheRiver/trunk/doc/api/com/sun/jini/outrigger/package-summary.html>
         implementation of the JavaSpaces service.

     *|outrigger-dl.jar|*
         The codebase JAR file for Outrigger.

     *|reggie.jar|*
         The service JAR file for the Reggie
         
<file:///opt/src/ApacheRiver/trunk/doc/api/com/sun/jini/reggie/package-summary.html>
         implementation of the lookup service.

     *|reggie-dl.jar|*
The codebase JAR file for Reggie.

         Activation JAR files

     This release contains a configurable Java Remote Method Invocation
     (Java RMI) activation system daemon implementation named Phoenix
     
<file:///opt/src/ApacheRiver/trunk/doc/api/com/sun/jini/phoenix/package-summary.html>
     that we recommend using instead of |rmid| when deploying
     activatable versions of services.

     *|phoenix.jar|*
         This executable JAR file is used to run Phoenix.

     *|phoenix-dl.jar|*
         The codebase JAR file for Phoenix. Unlike |rmid|, Phoenix
         /requires/ clients to dynamically download code.

     *|phoenix-init.jar|*
         This JAR file (or its contents) must be included in the class
         path of any activation group VM that is created by Phoenix to
         run activatable objects.

     *|phoenix-group.jar|*
         This JAR file contains the default |ActivationGroup|
         implementation for Phoenix. Normally it is not referenced
         explicitly, but is instead loaded automatically from the same
directory as |phoenix.jar|.

         Tools JAR files

     *|tools.jar|*
         This JAR file contains tools
         <cid:[email protected]> for: checking
         configuration files; checking for missing |serialVersionUID|
         fields; computing class dependencies; providing HTTP service;
         generating message digests; generating HTTPMD URLs; examining
         the run-time environment of a River component; generating
         wrapper JAR files; and generating preferred lists. When used
         as an executable JAR file, it runs the ClassServer
         
<file:///opt/src/ApacheRiver/trunk/doc/api/com/sun/jini/tool/ClassServer.html>.


     *|checkconfigurationfile.jar|*
         A wrapper for |tools.jar|. When used as an executable JAR
         file, it runs CheckConfigurationFile
         
<file:///opt/src/ApacheRiver/trunk/doc/api/com/sun/jini/tool/CheckConfigurationFile.html>.


     *|checkser.jar|*
         A wrapper for |tools.jar|. When used as an executable JAR
         file, it runs CheckSer
         
<file:///opt/src/ApacheRiver/trunk/doc/api/com/sun/jini/tool/CheckSer.html>.


     *|classdep.jar|*
         A wrapper for |tools.jar|. When used as an executable JAR
         file, it runs ClassDep
         
<file:///opt/src/ApacheRiver/trunk/doc/api/com/sun/jini/tool/ClassDep.html>.


     *|classserver.jar|*
         A wrapper for |tools.jar|. When used as an executable JAR
         file, it runs ClassServer
         
<file:///opt/src/ApacheRiver/trunk/doc/api/com/sun/jini/tool/ClassServer.html>.


     *|computedigest.jar|*
         A wrapper for |tools.jar|. When used as an executable JAR
         file, it runs ComputeDigest
         
<file:///opt/src/ApacheRiver/trunk/doc/api/com/sun/jini/tool/ComputeDigest.html>.


     *|computehttpmdcodebase.jar|*
         A wrapper for |tools.jar|. When used as an executable JAR
         file, it runs ComputeHttpmdCodebase
         
<file:///opt/src/ApacheRiver/trunk/doc/api/com/sun/jini/tool/ComputeHttpmdCodebase.html>.


     *|envcheck.jar|*
         A wrapper for |tools.jar|. When used as an executable JAR
         file, it runs EnvCheck
         
<file:///opt/src/ApacheRiver/trunk/doc/api/com/sun/jini/tool/envcheck/EnvCheck.html>.


     *|jarwrapper.jar|*
         A wrapper for |tools.jar|. When used as an executable JAR
         file, it runs JarWrapper
         
<file:///opt/src/ApacheRiver/trunk/doc/api/com/sun/jini/tool/JarWrapper.html>.


     *|preferredlistgen.jar|*
         A wrapper for |tools.jar|. When used as an executable JAR
         file, it runs PreferredListGen
         
<file:///opt/src/ApacheRiver/trunk/doc/api/com/sun/jini/tool/PreferredListGen.html>.


     *|browser.jar|*
         This executable JAR file is used to run the example Service
         Browser
         
<file:///opt/src/ApacheRiver/trunk/doc/api/com/sun/jini/example/browser/package-summary.html>.


     *|browser-dl.jar|*
The codebase JAR file for the Service Browser.

         Persistent Outrigger JAR files

     *|outrigger-logstore.jar|*
         A secondary JAR file referenced by the |Class-Path| manifest
         attribute of |outrigger.jar|, containing classes for the
         default storage implementation used by the persistent versions
         of Outrigger. In practice you should not need to refer
         directly to this JAR file.

     *|prebuilt-outrigger-logstore.jar|*
         A secondary JAR file containing specially postprocessed
         classes in |outrigger-logstore.jar|. This JAR file is never
         used at runtime, it is only used if you attempt to rebuild the
         Apache River release from sources and do not have the
         necessary ObjectStore PSE Pro for Java postprocessor tool. In
practice you should not need to refer directly to this JAR file.

         Deprecated JAR files

     *|jini-core.jar|*
         This JAR file contains all of the classes and interfaces in
         the |net.jini.core| namespace. No direct use of this JAR file
         is made in this release; it is simply provided as a possible
         convenience to developers. This JAR file has been deprecated
         in this release and might not be supplied in future versions
         of the Apache River release.

     *|jini-ext.jar|*
         This JAR file contains all of the classes and interfaces in
         the |net.jini| namespace, plus all of the classes and
         interfaces that their implementations directly or indirectly
         depend on, including service providers in the |com.sun|
         namespace that might want to be configured in resources. The
         classes and interfaces in the |net.jini.core| namespace are
         not included directly; instead this JAR file has a
         |Class-Path| manifest attribute that refers to
         |jini-core.jar|. Note that the |Class-Path| manifest attribute
         does /not/ refer to |jsk-resources.jar|, so no service
         providers are configured by default when using this JAR file
         at runtime. Any classes or interfaces in the |com.sun|
         namespace that appear in this JAR file should be considered
         implementation details. No direct use of this JAR file is made
         in this release; it is simply provided as a possible
         convenience to developers. This JAR file has been deprecated
         in this release and might not be supplied in future versions
         of the Apache River release.

     *|sdm-dl.jar|*
         This JAR file contains proxy and trust verifier classes that
         generally need to be included in the codebase of any
         application that uses the implementation of the
         |ServiceDiscoveryManager|
         
<file:///opt/src/ApacheRiver/trunk/doc/api/net/jini/lookup/ServiceDiscoveryManager.html>
         provided in this release. This JAR file has been deprecated in
         this release and might not be supplied in future versions of
         the Apache River release. The function provided by this JAR
         file has been replaced by |jsk-dl.jar|.

     *|sun-util.jar|*
         This JAR file contains various classes and interfaces in the
         |com.sun.jini| namespace that developers might want to
         reference. Of particular interest are the non-standard
         administrative interfaces implemented by our services, as well
         as the interfaces needed by services that want to run under
         the Service Starter. We make no claims about the API stability
         of these classes and interfaces. No direct use of this JAR
         file is made in this release; it is simply provided as a
         possible convenience to developers. This JAR file has been
         deprecated in this release and might not be supplied in future
versions of the Apache River release.
------------------------------------------------------------------------


         Note on the API documentation

     The on-line API documentation (generated by the Javadoc(TM) tool)
     provided in this release does not include every class and
     interface in the |com.sun.jini| packages. This omission was
     intentional; we only produced on-line API documentation for the
     classes and interfaces that we think might be important or useful
     to you. However, almost all of our classes and interfaces have
     documentation comments, so if you wish, you can produce API
documentation for them yourself.
------------------------------------------------------------------------
Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements. See the NOTICE file distributed with this work for additional information regarding copyright ownership. The ASF licenses this file to you under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

Reply via email to