From 3cfd1757b263117fa828b6a9636cc2ec674d19bc Mon Sep 17 00:00:00 2001
From: Jean-Noël Rouvignac <jean-noel.rouvignac@forgerock.com>
Date: Fri, 04 Sep 2015 08:32:57 +0000
Subject: [PATCH] OPENDJ-2262 CLU: manage-tasks with cancel option does not write in stderr when an error occurs
---
opendj-server-legacy/src/main/java/org/opends/server/tools/ManageTasks.java | 40 +++++++++++++++++-----------------------
1 files changed, 17 insertions(+), 23 deletions(-)
diff --git a/opendj-server-legacy/src/main/java/org/opends/server/tools/ManageTasks.java b/opendj-server-legacy/src/main/java/org/opends/server/tools/ManageTasks.java
index d35d6a8..235d904 100644
--- a/opendj-server-legacy/src/main/java/org/opends/server/tools/ManageTasks.java
+++ b/opendj-server-legacy/src/main/java/org/opends/server/tools/ManageTasks.java
@@ -513,8 +513,7 @@
}
@Override
- public MenuResult<TaskEntry> invoke(ConsoleApplication app)
- throws ClientException
+ public MenuResult<TaskEntry> invoke(ConsoleApplication app) throws ClientException
{
return invoke((ManageTasks)app);
}
@@ -528,15 +527,13 @@
* @throws ClientException
* if any problem occurred
*/
- protected abstract MenuResult<TaskEntry> invoke(ManageTasks app)
- throws ClientException;
+ protected abstract MenuResult<TaskEntry> invoke(ManageTasks app) throws ClientException;
}
/** Executable for printing a task summary table. */
private static class PrintSummaryTop extends TopMenuCallback {
@Override
- public MenuResult<Void> invoke(ManageTasks app)
- throws ClientException
+ public MenuResult<Void> invoke(ManageTasks app) throws ClientException
{
// Since the summary table is reprinted every time,
// the user enters the top level this task just returns 'success'
@@ -619,10 +616,8 @@
@Override
public MenuResult<TaskEntry> invoke(ManageTasks app) throws ClientException
{
- LocalizableMessage m;
- TaskEntry taskEntry;
try {
- taskEntry = app.getTaskClient().getTaskEntry(taskId);
+ TaskEntry taskEntry = app.getTaskClient().getTaskEntry(taskId);
TableBuilder table = new TableBuilder();
table.appendHeading(INFO_TASKINFO_DETAILS.get());
@@ -643,10 +638,10 @@
table.appendCell(INFO_TASKINFO_FIELD_SCHEDULED_START.get());
if (TaskState.isRecurring(taskEntry.getTaskState())) {
- m = taskEntry.getScheduleTab();
+ LocalizableMessage m = taskEntry.getScheduleTab();
table.appendCell(m);
} else {
- m = taskEntry.getScheduledStartTime();
+ LocalizableMessage m = taskEntry.getScheduledStartTime();
if (m == null || m.equals(LocalizableMessage.EMPTY)) {
table.appendCell(INFO_TASKINFO_IMMEDIATE_EXECUTION.get());
} else {
@@ -669,7 +664,7 @@
table.startRow();
table.appendCell(INFO_TASKINFO_FIELD_FAILED_DEPENDENCY_ACTION.get());
- m = taskEntry.getFailedDependencyAction();
+ LocalizableMessage m = taskEntry.getFailedDependencyAction();
table.appendCell(m != null ? m : INFO_TASKINFO_NONE.get());
writeMultiValueCells(
@@ -728,11 +723,11 @@
}
app.getOutputStream().println();
+ return MenuResult.success(taskEntry);
} catch (Exception e) {
- app.println(ERR_TASKINFO_RETRIEVING_TASK_ENTRY.get(taskId, e.getMessage()));
+ app.errPrintln(ERR_TASKINFO_RETRIEVING_TASK_ENTRY.get(taskId, e.getMessage()));
return MenuResult.again();
}
- return MenuResult.success(taskEntry);
}
/**
@@ -788,8 +783,7 @@
}
@Override
- protected MenuResult<TaskEntry> invoke(ManageTasks app)
- throws ClientException
+ protected MenuResult<TaskEntry> invoke(ManageTasks app) throws ClientException
{
TaskEntry taskEntry = null;
try {
@@ -867,7 +861,7 @@
} catch (NumberFormatException ignored) {}
if (index == null) {
- app.println(ERR_TASKINFO_INVALID_MENU_KEY.get(line));
+ app.errPrintln(ERR_TASKINFO_INVALID_MENU_KEY.get(line));
return MenuResult.again();
}
@@ -899,14 +893,14 @@
{
try {
TaskEntry entry = app.getTaskClient().getTaskEntry(taskId);
- if (entry.isCancelable()) {
- app.getTaskClient().cancelTask(taskId);
- app.println(INFO_TASKINFO_CMD_CANCEL_SUCCESS.get(taskId));
- return MenuResult.success(entry);
- } else {
- app.println(ERR_TASKINFO_TASK_NOT_CANCELABLE_TASK.get(taskId));
+ if (!entry.isCancelable()) {
+ app.errPrintln(ERR_TASKINFO_TASK_NOT_CANCELABLE_TASK.get(taskId));
return MenuResult.again();
}
+
+ app.getTaskClient().cancelTask(taskId);
+ app.println(INFO_TASKINFO_CMD_CANCEL_SUCCESS.get(taskId));
+ return MenuResult.success(entry);
} catch (Exception e) {
app.errPrintln(ERR_TASKINFO_CANCELING_TASK.get(taskId, e.getMessage()));
return MenuResult.again();
--
Gitblit v1.10.0