## org.apache.axis.client
Class AdminClient

    java.lang.Object
      org.apache.axis.client.AdminClient

public class AdminClient
extends java.lang.Object

An admin client object that can be used both from the command line and programmatically.

Author:
  Rob Jellinghaus (robj@unrealities.com), Doug Davis (dug@us.ibm.com), Simeon Simeonov (simeons@macromedia.com)

Field Summary
`protected Call` `call` the object that represents our call
`protected static org.apache.commons.logging.Log` `log`
`protected static java.lang.String` `ROOT_UNDEPLOY` root element of the undeploy request

Constructor Summary
`AdminClient()` Construct an admin client w/o a logger.
`AdminClient(boolean ignored)` this is a somwhat contrived variant constructor, one that throws an exception if things go wrong.

Method Summary
`Call` `getCall()` External access to our `Call</code< object.</TD>`
`java.lang.String` `list()` send a list command
`java.lang.String` `list(Options opts)` process the options then run a list call
`static void` `main(java.lang.String[] args)` Creates in instance of `AdminClient` and invokes `process(args)`.
`java.lang.String` `process(java.io.InputStream input)`
`java.lang.String` `process(Options opts, java.io.InputStream input)` submit the input stream's contents to the endpoint, return the results as a string.
`java.lang.String` `process(Options opts, java.lang.String xmlFile)`
`java.lang.String` `process(java.lang.String xmlFile)` process an XML file containing a pre-prepared admin message
`java.lang.String` `process(java.lang.String[] args)` Processes a set of administration commands.
`java.lang.String` `process(java.net.URL xmlURL)`
`void` `processOpts(Options opts)` go from the (parsed) command line to setting properties on our call object.
`java.lang.String` `quit()` make a quit command
`java.lang.String` `quit(Options opts)` process the command line ops, then send a quit command
`static void` `setDefaultConfiguration(EngineConfiguration config)` If the user calls this with an EngineConfiguration object, all AdminClients on this thread will use that EngineConfiguration rather than the default one.
`void` `setLogin(java.lang.String user, java.lang.String password)` set the username and password requires that call!=null
`void` `setTargetEndpointAddress(java.net.URL address)` set the URL to deploy to requires that call!=null
`void` `setTransport(java.lang.String transportName)` set the transport to deploy with.
`java.lang.String` `undeployHandler(java.lang.String handlerName)` undeploy a handler
`java.lang.String` `undeployService(java.lang.String serviceName)` undeploy a service

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Field Detail

### log

    protected static org.apache.commons.logging.Log log

### call

    protected Call call

  the object that represents our call

### ROOT_UNDEPLOY

    protected static final java.lang.String ROOT_UNDEPLOY

  root element of the undeploy request

Constructor Detail

### AdminClient

    public AdminClient()

  Construct an admin client w/o a logger. If the client cannot create a call object, then it does not throw an exception. Instead it prints a message to `System.err`. This is for 'historical reasons'

### AdminClient

    public AdminClient(boolean ignored)
                throws ServiceException

  this is a somwhat contrived variant constructor, one that throws an exception if things go wrong.

Parameters:
  `ignored` -

Method Detail

### setDefaultConfiguration

    public static void setDefaultConfiguration(EngineConfiguration config)

  If the user calls this with an EngineConfiguration object, all AdminClients on this thread will use that EngineConfiguration rather than the default one. This is primarily to enable the deployment of custom transports and handlers.

  Parameters:
    `config` - the EngineConfiguration which should be used

### getCall

    public Call getCall()

  External access to our `Call</code< object. This will be null if the non-excepting constructor was used and the construction failed. <P>`
  Returns:
    the `Call` object this instance uses

### list

    public java.lang.String list(Options opts)
                          throws java.lang.Exception

  process the options then run a list call

  Parameters:
    `opts` -
  Returns:
  Throws:
    `java.lang.Exception`

### list

    public java.lang.String list()
                          throws java.lang.Exception

  send a list command

  Returns:
    the response from the call
  Throws:
    `java.lang.Exception`

### quit

    public java.lang.String quit(Options opts)
                          throws java.lang.Exception

  process the command line ops, then send a quit command

  Parameters:
    `opts` -
  Returns:
  Throws:
    `java.lang.Exception`

### quit

    public java.lang.String quit()
                          throws java.lang.Exception

  make a quit command

  Returns:
  Throws:
    `java.lang.Exception`

### undeployHandler

    public java.lang.String undeployHandler(java.lang.String handlerName)
                                     throws java.lang.Exception

  undeploy a handler

  Parameters:
    `handlerName` - name of the handler to undeploy
  Returns:
  Throws:
    `java.lang.Exception`

### undeployService

    public java.lang.String undeployService(java.lang.String serviceName)
                                     throws java.lang.Exception

  undeploy a service

  Parameters:
    `serviceName` - name of service
  Returns:
  Throws:
    `java.lang.Exception`

### process

    public java.lang.String process(java.lang.String[] args)
                             throws java.lang.Exception

  Processes a set of administration commands.

  The following commands are available:

  - `-lurl` sets the AxisServlet URL
  - `-hhostName` sets the AxisServlet host
  - `-pportNumber` sets the AxisServlet port
  - `-sservletPath` sets the path to the AxisServlet
  - `-ffileName` specifies that a simple file protocol should be used
  - `-uusername` sets the username
  - `-wpassword` sets the password
  - `-d` sets the debug flag (for instance, -ddd would set it to 3)
  - `-tname` sets the transport chain touse
  - `list` will list the currently deployed services
  - `quit` will quit (???)
  - `passwd value` changes the admin password
  - `xmlConfigFile` deploys or undeploys Axis components and web services

  If `-l` or `-h -p -s` are not set, the AdminClient will invoke `http://localhost:8080/axis/servlet/AxisServlet`.

  Parameters:
    `args` - Commands to process
  Returns:
    XML result or null in case of failure. In the case of multiple commands, the XML results will be concatenated, separated by \n
  Throws:
    `java.lang.Exception` - Could be an IO exception, an AxisFault or something else

### processOpts

    public void processOpts(Options opts)
                     throws java.lang.Exception

  go from the (parsed) command line to setting properties on our call object.

  Parameters:
    `opts` -
  Throws:
    `java.lang.Exception` - if call==null

### setLogin

    public void setLogin(java.lang.String user,
                         java.lang.String password)

  set the username and password requires that call!=null

  Parameters:
    `user` - username
    `password` - password

### setTargetEndpointAddress

    public void setTargetEndpointAddress(java.net.URL address)

  set the URL to deploy to requires that call!=null

  Parameters:
    `address` -

### setTransport

    public void setTransport(java.lang.String transportName)

  set the transport to deploy with. requires that call!=null

  Parameters:
    `transportName` - a null or empty value does not trigger a setting

### process

    public java.lang.String process(java.io.InputStream input)
                             throws java.lang.Exception

  Throws:
    `java.lang.Exception`

### process

    public java.lang.String process(java.net.URL xmlURL)
                             throws java.lang.Exception

  Throws:
    `java.lang.Exception`

### process

    public java.lang.String process(java.lang.String xmlFile)
                             throws java.lang.Exception

  process an XML file containing a pre-prepared admin message

  Parameters:
    `xmlFile` - file to load
  Returns:
  Throws:
    `java.lang.Exception`

### process

    public java.lang.String process(Options opts,
                                    java.lang.String xmlFile)
                             throws java.lang.Exception

  Throws:
    `java.lang.Exception`

### process

    public java.lang.String process(Options opts,
                                    java.io.InputStream input)
                             throws java.lang.Exception

  submit the input stream's contents to the endpoint, return the results as a string. The input stream is always closed after the call, whether the request worked or not

  Parameters:
    `opts` - options -can be null
    `input` - -input stream for request
  Returns:
  Throws:
    `java.lang.Exception` - if the call was null
    `AxisFault` - if the invocation returned an empty response

### main

    public static void main(java.lang.String[] args)

  Creates in instance of `AdminClient` and invokes `process(args)`.

  Diagnostic output goes to `log.info`.

  Parameters:
    `args` - Commands to process

Copyright © 2005 Apache Web Services Project. All Rights Reserved.