[
https://issues.apache.org/jira/browse/SYNCOPE-660?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14563109#comment-14563109
]
ASF GitHub Bot commented on SYNCOPE-660:
----------------------------------------
Github user ilgrosso commented on a diff in the pull request:
https://github.com/apache/syncope/pull/6#discussion_r31246708
--- Diff:
console/src/main/java/org/apache/syncope/console/pages/panels/RuntimePanel.java
---
@@ -0,0 +1,108 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.syncope.console.pages.panels;
+
+import org.apache.syncope.console.rest.JobRestClient;
+import
org.apache.syncope.console.wicket.ajax.markup.html.ClearIndicatingAjaxLink;
+import org.apache.wicket.PageReference;
+import org.apache.wicket.ajax.AbstractAjaxTimerBehavior;
+import org.apache.wicket.ajax.AjaxRequestTarget;
+import org.apache.wicket.markup.html.panel.Fragment;
+import org.apache.wicket.model.IModel;
+import org.apache.wicket.markup.html.panel.Panel;
+
+public class RuntimePanel extends Panel {
+
+ private static final long serialVersionUID = 1L;
+
+ private boolean latestStatus;
+
+ protected Fragment fragmentStop, fragmentSpinner;
+
+ public AbstractAjaxTimerBehavior timer;
+
+ final PageReference pageRef;
+
+ private final long jobId;
+
+ private final JobRestClient jobRestClient;
+
+ public RuntimePanel(final String componentId, final IModel<?> model,
final PageReference pageRef, final long jobId,
+ final JobRestClient jobRestClient) {
+ super(componentId, model);
+ this.pageRef = pageRef;
+ this.jobId = jobId;
+ this.jobRestClient = jobRestClient;
+ latestStatus = false;
+ this.refresh();
+
+ }
+
+ public void refresh() {
+ boolean currentStatus = jobRestClient.isJobRunning(jobId);
+ if (currentStatus == true && latestStatus == false) {
--- End diff --
Please rewrite this as `if (currentStatus && !latestStatus)`...
> Extend control over asynchronous job execution
> ----------------------------------------------
>
> Key: SYNCOPE-660
> URL: https://issues.apache.org/jira/browse/SYNCOPE-660
> Project: Syncope
> Issue Type: Improvement
> Reporter: Francesco Chicchiriccò
> Assignee: Giacomo Lamonaco
> Fix For: 1.2.5, 2.0.0
>
>
> Asynchronous job execution, generally delegated to Quartz, can currently be
> checked only at completion, and only by indirectly checking the status on
> related JPA entities (TaskExec, ReportExec, ...).
> A REST endpoint should be provided for reporting on jobs execution and
> providing the ability to control (e.g. stop / pause / resume / ...) .
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)