modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/ViewPath.java | 2 - modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/common/detail/operation/schedule/AbstractOperationScheduleDetailsView.java | 17 ++++++++++ 2 files changed, 18 insertions(+), 1 deletion(-)
New commits: commit b340d788cb663411d93bd3116acf52d4512f26b7 Author: John Sanda jsanda@redhat.com Date: Fri Feb 3 10:50:05 2012 -0500
[BZ 742698] Send user to history page for operation scheduled immediately
With this commit, the user will now be sent to the history page when an operation is scheduled for immediate execution. This change applies both at the resource and group level.
diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/ViewPath.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/ViewPath.java index e448610..5d66f5d 100644 --- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/ViewPath.java +++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/ViewPath.java @@ -83,7 +83,7 @@ public class ViewPath { return getPathToIndex(this.index); }
- private String getPathToIndex(int endIndex) { + public String getPathToIndex(int endIndex) { String path = ""; for (int i = 0; i < endIndex; i++) { if (i > 0) { diff --git a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/common/detail/operation/schedule/AbstractOperationScheduleDetailsView.java b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/common/detail/operation/schedule/AbstractOperationScheduleDetailsView.java index c06a8b1..192711f 100644 --- a/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/common/detail/operation/schedule/AbstractOperationScheduleDetailsView.java +++ b/modules/enterprise/gui/coregui/src/main/java/org/rhq/enterprise/gui/coregui/client/inventory/common/detail/operation/schedule/AbstractOperationScheduleDetailsView.java @@ -45,6 +45,7 @@ import org.rhq.core.domain.operation.OperationDefinition; import org.rhq.core.domain.resource.ResourceType; import org.rhq.enterprise.gui.coregui.client.CoreGUI; import org.rhq.enterprise.gui.coregui.client.UserSessionManager; +import org.rhq.enterprise.gui.coregui.client.ViewId; import org.rhq.enterprise.gui.coregui.client.ViewPath; import org.rhq.enterprise.gui.coregui.client.components.configuration.ConfigurationEditor; import org.rhq.enterprise.gui.coregui.client.components.form.*; @@ -52,6 +53,7 @@ import org.rhq.enterprise.gui.coregui.client.components.trigger.JobTriggerEditor import org.rhq.enterprise.gui.coregui.client.gwt.ConfigurationGWTServiceAsync; import org.rhq.enterprise.gui.coregui.client.gwt.GWTServiceLookup; import org.rhq.enterprise.gui.coregui.client.inventory.resource.detail.operation.schedule.ResourceOperationScheduleDataSource; +import org.rhq.enterprise.gui.coregui.client.operation.OperationHistoryView; import org.rhq.enterprise.gui.coregui.client.util.FormUtility; import org.rhq.enterprise.gui.coregui.client.util.TypeConversionUtility; import org.rhq.enterprise.gui.coregui.client.util.message.Message; @@ -85,6 +87,8 @@ public abstract class AbstractOperationScheduleDetailsView extends private JobTriggerEditor triggerEditor; private EnhancedDynamicForm notesForm; private Integer operationDefinitionId; + private ViewPath viewPath; + private boolean isImmediateExecution;
public AbstractOperationScheduleDetailsView(String locatorId, AbstractOperationScheduleDataSource dataSource, ResourceType resourceType, int scheduleId) { @@ -104,7 +108,19 @@ public abstract class AbstractOperationScheduleDetailsView extends protected abstract boolean hasControlPermission();
@Override + public String getListViewPath() { + // If the operation is scheduled for immediate execution, we will send the user + // to the history page so that he can view the status/result of the operation; + // otherwise, the user will stay on the schedules list view. + if (isImmediateExecution) { + return viewPath.getPathToIndex(viewPath.getCurrentIndex() - 2) + "/History"; + } + return super.getListViewPath(); + } + + @Override public void renderView(ViewPath viewPath) { + this.viewPath = viewPath; super.renderView(viewPath);
// If the operationDefId has been seeded capture it now @@ -344,6 +360,7 @@ public abstract class AbstractOperationScheduleDetailsView extends Record jobTriggerRecord = new ListGridRecord();
Date startTime = this.triggerEditor.getStartTime(); + isImmediateExecution = startTime == null; jobTriggerRecord.setAttribute(AbstractOperationScheduleDataSource.Field.START_TIME, startTime);
Date endTime = this.triggerEditor.getEndTime();
rhq-commits@lists.fedorahosted.org