org.rhq.enterprise.server.install.remote
Interface RemoteInstallManagerRemote


public interface RemoteInstallManagerRemote

Provides an interface to remotely install an RHQ Agent over SSH.


Method Summary
 boolean agentInstallCheck(Subject subject, RemoteAccessInfo remoteAccessInfo, String agentInstallPath)
          Checks to see if an agent is installed in the given directory.
 String agentStatus(Subject subject, RemoteAccessInfo remoteAccessInfo, String agentInstallPath)
          Determines the running status of the agent located in the given installation directory.
 String findAgentInstallPath(Subject subject, RemoteAccessInfo remoteAccessInfo, String parentPath)
          Given a root parent path to check, this will scan all subdirectories (recursively) to try to find where the agent is installed (if it is installed at all).
 AgentInstallInfo installAgent(Subject subject, RemoteAccessInfo remoteAccessInfo, String parentPath)
          Installs the agent update binary distribution file to the given parent directory.
 String[] remotePathDiscover(Subject subject, RemoteAccessInfo remoteAccessInfo, String parentPath)
          Returns the given parent directory's child files/directories.
 String startAgent(Subject subject, RemoteAccessInfo remoteAccessInfo, String agentInstallPath)
          Starts the agent located in the given installation directory.
 String stopAgent(Subject subject, RemoteAccessInfo remoteAccessInfo, String agentInstallPath)
          Stops the agent located in the given installation directory.
 

Method Detail

agentInstallCheck

boolean agentInstallCheck(Subject subject,
                          RemoteAccessInfo remoteAccessInfo,
                          String agentInstallPath)
Checks to see if an agent is installed in the given directory.

Parameters:
subject - the RHQ user making the request
remoteAccessInfo - the remote machine information and remote user SSH credentials
agentInstallPath - the directory to check
Returns:
true if an agent is installed in the given install path, false if not

installAgent

AgentInstallInfo installAgent(Subject subject,
                              RemoteAccessInfo remoteAccessInfo,
                              String parentPath)
Installs the agent update binary distribution file to the given parent directory. Note that the agent's install directory will be a child of the given parent directory, with that child install directory usually named "rhq-agent".

Parameters:
subject - the RHQ user making the request
remoteAccessInfo - the remote machine information and remote user SSH credentials
parentPath - where the agent install directory will be
Returns:
info containing the results of the installation

startAgent

String startAgent(Subject subject,
                  RemoteAccessInfo remoteAccessInfo,
                  String agentInstallPath)
Starts the agent located in the given installation directory.

Parameters:
subject - the RHQ user making the request
remoteAccessInfo - the remote machine information and remote user SSH credentials
agentInstallPath - where the agent is installed
Returns:
results of the start command

stopAgent

String stopAgent(Subject subject,
                 RemoteAccessInfo remoteAccessInfo,
                 String agentInstallPath)
Stops the agent located in the given installation directory.

Parameters:
subject - the RHQ user making the request
remoteAccessInfo - the remote machine information and remote user SSH credentials
agentInstallPath - where the agent is installed
Returns:
results of the stop command

agentStatus

String agentStatus(Subject subject,
                   RemoteAccessInfo remoteAccessInfo,
                   String agentInstallPath)
Determines the running status of the agent located in the given installation directory.

Parameters:
subject - the RHQ user making the request
remoteAccessInfo - the remote machine information and remote user SSH credentials
agentInstallPath - where the agent is installed
Returns:
results of the status command

findAgentInstallPath

String findAgentInstallPath(Subject subject,
                            RemoteAccessInfo remoteAccessInfo,
                            String parentPath)
Given a root parent path to check, this will scan all subdirectories (recursively) to try to find where the agent is installed (if it is installed at all). If parentPath is null or empty, the more common locations where agents are normally installed will be scanned. Returns the path to the first location where an agent is probably installed; null is returned if it does not look like the agent is installed anywhere under the given parent path (or in any of the common locations, if parent path is null).

Parameters:
subject - the RHQ user making the request
remoteAccessInfo - the remote machine information and remote user SSH credentials
parentPath - the parent directory whose children files/directories are scanned
Returns:
the probable location of an installed agent; null if no agent install was found

remotePathDiscover

String[] remotePathDiscover(Subject subject,
                            RemoteAccessInfo remoteAccessInfo,
                            String parentPath)
Returns the given parent directory's child files/directories.

Parameters:
subject - the RHQ user making the request
remoteAccessInfo - the remote machine information and remote user SSH credentials
parentPath - the parent directory whose children files/directories are returned
Returns:
names of the parent's child files/directories


Copyright © 2005-2011 Red Hat, Inc.. All Rights Reserved.