dev@glassfish.java.net

refactored remote command support

From: Bill Shannon <bill.shannon_at_sun.com>
Date: Wed, 14 Apr 2010 17:35:31 -0700

I just checked in a big change to the remote command support.
I've included my commit comments below.

While this passes quicklook, a change this big always includes at least
one undetected bug. Let me know when you find it! :-)

-----

Refactor RemoteCommand to give us an API for executing remote admin
commands that's independent of the asadmin CLI. This required moving
some classes to different packages and different modules:

Moved to common/glassfish-api org.glassfish.api.admin:
  com.sun.enterprise.admin.cli.CommandException
  com.sun.enterprise.admin.cli.CommandValidationException
  com.sun.enterprise.admin.cli.InvalidCommandException
  com.sun.enterprise.admin.cli.AuthenticationException

Move to admin/util com.sun.enterprise.admin.util:
  com.sun.enterprise.admin.cli.CommandModelData
  com.sun.enterprise.admin.cli.util.AuthenticationInfo
  com.sun.enterprise.admin.cli.util.HttpConnectorAddress
  com.sun.enterprise.admin.cli.util.AsadminTrustManager

Moved to admin/util com.sun.enterprise.admin.remote:
  com.sun.enterprise.admin.cli.remote.GeneratedManPageManager
  com.sun.enterprise.admin.cli.remote.LocalStrings.properties
  com.sun.enterprise.admin.cli.remote.ManifestManager
  com.sun.enterprise.admin.cli.remote.PlainTextManager
  com.sun.enterprise.admin.cli.remote.RemoteAdminCommand
  com.sun.enterprise.admin.cli.remote.RemoteException
  com.sun.enterprise.admin.cli.remote.RemoteFailureException
  com.sun.enterprise.admin.cli.remote.RemoteResponseManager
  com.sun.enterprise.admin.cli.remote.RemoteSuccessException
  com.sun.enterprise.admin.cli.remote.ResponseManager

The admin/util module (admin-util.jar file) contains the RemoteAdminCommand
class that can be used independently of the asadmin CLI, including in the
server itself.

Also, rationalized the exceptions thrown by the admin commands so that
all exceptions are subclasses of CommandException. Still need to clean
up the command implementations to avoid the need to declare that they
throw both CommandException and CommandValidationException.