You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@river.apache.org by Peter Firmstone <ji...@zeus.net.au> on 2010/02/06 12:39:11 UTC

[VOTE] Release Apache River 2.1.2

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? <ci...@zeus.net.au>
    * Bugs fixed between v2.0.1 and v2.0.2 releases
      <ci...@zeus.net.au>
    * Changes since the v2.0.1 release
      <ci...@zeus.net.au>
    * Platform dependencies <ci...@zeus.net.au>
    * JAR file structure
          o Platform JAR files <ci...@zeus.net.au>
          o Service Starter JAR files
            <ci...@zeus.net.au>
          o Service JAR files <ci...@zeus.net.au>
          o Activation JAR files <ci...@zeus.net.au>
          o Tools JAR files <ci...@zeus.net.au>
          o Persistent Outrigger JAR files
            <ci...@zeus.net.au>
          o Deprecated JAR files <ci...@zeus.net.au>
    * Note on the API documentation
      <ci...@zeus.net.au>


    Changes by Component, updated for v2.1.2


      Services

    * Reggie <ci...@zeus.net.au>
    * Mahalo <ci...@zeus.net.au>
    * Norm <ci...@zeus.net.au>
    * Mercury <ci...@zeus.net.au>
    * Fiddler <ci...@zeus.net.au>
    * Outrigger <ci...@zeus.net.au>


      Utilities

    * Discovery Utilities <ci...@zeus.net.au>
    * Entry Utilities <ci...@zeus.net.au>
    * Join Utilities <ci...@zeus.net.au>
    * Lease Utilities <ci...@zeus.net.au>
    * Service Discovery Utilities
      <ci...@zeus.net.au>


      Tools

    * ServiceBrowser <ci...@zeus.net.au>
    * |ClassDep| <ci...@zeus.net.au>
    * |ClassServer| <ci...@zeus.net.au>
    * |ServiceStarter| <ci...@zeus.net.au>


      Other

    * Jini extensible remote invocation (Jini ERI)
      <ci...@zeus.net.au>
    * Class loader <ci...@zeus.net.au>
    * Security <ci...@zeus.net.au>
    * Activation <ci...@zeus.net.au>
    * |com.sun.jini.thread| <ci...@zeus.net.au>

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


          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 <ci...@zeus.net.au>. 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
          <ci...@zeus.net.au> 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.

Re: [VOTE] Release Apache River 2.1.2

Posted by Jukka Zitting <ju...@gmail.com>.
Hi,

On Sat, Feb 6, 2010 at 12:39 PM, Peter Firmstone <ji...@zeus.net.au> wrote:
> Please vote on releasing this package as Apache River 2.1.2

+1 Good stuff, thanks for pushing this forward!

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

It would be better if there was a tag for the release. I also noted
that the source packages have some minor differences when compared to
a vanilla svn export, but those all seem like trivial issues with the
packaging script and can be looked at in time for the following
release.

Another minor point for future; it would be nicer if the RAT reports
could be cleaned a bit by adding some documented exclude rules for
well known file types for which license headers aren't needed.

And yes, the NOTICE file could say 2010, but the 2009 there is no
problem especially since the number of changes since 2009 is minimal.

Nevertheless, compliments for the excellent work on this release!

BR,

Jukka Zitting

Re: [VOTE] Release Apache River 2.1.2

Posted by Niclas Hedhman <ni...@hedhman.org>.
This must be one of the most complex releases of any Apache Incubator
project, and I am really happy that Peter has stepped up to this
paramount task.

+1 for release.

Cheers

On Sat, Feb 6, 2010 at 7:39 PM, Peter Firmstone <ji...@zeus.net.au> wrote:
> 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? <ci...@zeus.net.au>
>   * Bugs fixed between v2.0.1 and v2.0.2 releases
>     <ci...@zeus.net.au>
>   * Changes since the v2.0.1 release
>     <ci...@zeus.net.au>
>   * Platform dependencies <ci...@zeus.net.au>
>   * JAR file structure
>         o Platform JAR files <ci...@zeus.net.au>
>         o Service Starter JAR files
>           <ci...@zeus.net.au>
>         o Service JAR files <ci...@zeus.net.au>
>         o Activation JAR files <ci...@zeus.net.au>
>         o Tools JAR files <ci...@zeus.net.au>
>         o Persistent Outrigger JAR files
>           <ci...@zeus.net.au>
>         o Deprecated JAR files <ci...@zeus.net.au>
>   * Note on the API documentation
>     <ci...@zeus.net.au>
>
>
>   Changes by Component, updated for v2.1.2
>
>
>     Services
>
>   * Reggie <ci...@zeus.net.au>
>   * Mahalo <ci...@zeus.net.au>
>   * Norm <ci...@zeus.net.au>
>   * Mercury <ci...@zeus.net.au>
>   * Fiddler <ci...@zeus.net.au>
>   * Outrigger <ci...@zeus.net.au>
>
>
>     Utilities
>
>   * Discovery Utilities <ci...@zeus.net.au>
>   * Entry Utilities <ci...@zeus.net.au>
>   * Join Utilities <ci...@zeus.net.au>
>   * Lease Utilities <ci...@zeus.net.au>
>   * Service Discovery Utilities
>     <ci...@zeus.net.au>
>
>
>     Tools
>
>   * ServiceBrowser <ci...@zeus.net.au>
>   * |ClassDep| <ci...@zeus.net.au>
>   * |ClassServer| <ci...@zeus.net.au>
>   * |ServiceStarter| <ci...@zeus.net.au>
>
>
>     Other
>
>   * Jini extensible remote invocation (Jini ERI)
>     <ci...@zeus.net.au>
>   * Class loader <ci...@zeus.net.au>
>   * Security <ci...@zeus.net.au>
>   * Activation <ci...@zeus.net.au>
>   * |com.sun.jini.thread| <ci...@zeus.net.au>
>
> ------------------------------------------------------------------------
>
>
>         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 <ci...@zeus.net.au>. 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
>         <ci...@zeus.net.au> 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.
>



-- 
Niclas Hedhman, Software Developer
http://www.qi4j.org - New Energy for Java

I  live here; http://tinyurl.com/2qq9er
I  work here; http://tinyurl.com/2ymelc
I relax here; http://tinyurl.com/2cgsug