An abstract method that Executes the command
if (!validateOptions())
throw new CommandValidationException("Validation is false");
//use http connector
MBeanServerConnection mbsc = getMBeanServerConnection(getHost(), getPort(),
getUser(), getPassword());
final String objectName = getObjectName();
final Object[] params = getParamsInfo();
final String operationName = getOperationName();
final String[] types = getTypesInfo();
try
{
//if (System.getProperty("Debug") != null) printDebug(mbsc, objectName);
List returnValue = (List) mbsc.invoke(new ObjectName(objectName),
operationName, params, types);
if (returnValue.size() == 0)
{
CLILogger.getInstance().printDetailMessage(
getLocalizedString("NoElementsToList"));
}
ObjectName objName;
String target = getOperands().size() > 0 ?
(String) getOperands().get(0):null;
CLILogger.getInstance().printDebugMessage("target = " + target);
CLILogger.getInstance().printDebugMessage("list size = " + returnValue.size());
for (int ii=0; ii<returnValue.size(); ii++)
{
objName = (ObjectName) returnValue.get(ii);
CLILogger.getInstance().printDebugMessage("objName = " + objName.toString());
String mbeanName = (String) mbsc.getAttribute(objName, ServerTags.NAME);
String mbeanObjName = (String) mbsc.getAttribute(objName,
ServerTags.OBJECT_NAME);
final String boolVal = (String) mbsc.getAttribute(objName, ServerTags.ENABLED);
boolean enabled = Boolean.valueOf(boolVal);
//CLILogger.getInstance().printDebugMessage("enabled = " + enabled);
String printString = mbeanName + " " + mbeanObjName + " " +
(enabled ? getLocalizedString("Enabled")
: getLocalizedString("Disabled"));
CLILogger.getInstance().printMessage(printString);
}
CLILogger.getInstance().printDetailMessage(getLocalizedString(
"CommandSuccessful",
new Object[] {name}));
}
catch(Exception e)
{
displayExceptionMessage(e);
}