diff --git a/src/main/java/jp/sf/fess/action/admin/SystemAction.java b/src/main/java/jp/sf/fess/action/admin/SystemAction.java index beb1ef933..c2a5173e6 100644 --- a/src/main/java/jp/sf/fess/action/admin/SystemAction.java +++ b/src/main/java/jp/sf/fess/action/admin/SystemAction.java @@ -31,7 +31,6 @@ import jp.sf.fess.db.exentity.ScheduledJob; import jp.sf.fess.form.admin.SystemForm; import jp.sf.fess.helper.SystemHelper; import jp.sf.fess.helper.WebManagementHelper; -import jp.sf.fess.job.TriggeredJob; import jp.sf.fess.service.ScheduledJobService; import org.codelibs.core.util.DynamicProperties; @@ -221,12 +220,7 @@ public class SystemAction implements Serializable { final List scheduledJobList = scheduledJobService .getCrawloerJobList(); for (final ScheduledJob scheduledJob : scheduledJobList) { - new Thread(new Runnable() { - @Override - public void run() { - new TriggeredJob().execute(scheduledJob); - } - }).start(); + scheduledJob.start(); } SAStrutsUtil.addSessionMessage("success.start_crawl_process"); } else { @@ -244,8 +238,13 @@ public class SystemAction implements Serializable { @Execute(validator = true, input = "index") public String stop() { if (systemHelper.isCrawlProcessRunning()) { - for (final String sessionId : systemHelper.getRunningSessionIdSet()) { - systemHelper.destroyCrawlerProcess(sessionId); + if (StringUtil.isNotBlank(systemForm.sessionId)) { + systemHelper.destroyCrawlerProcess(systemForm.sessionId); + } else { + for (final String sessionId : systemHelper + .getRunningSessionIdSet()) { + systemHelper.destroyCrawlerProcess(sessionId); + } } SAStrutsUtil.addSessionMessage("success.stopping_crawl_process"); } else { @@ -316,8 +315,9 @@ public class SystemAction implements Serializable { return systemHelper.isCrawlProcessRunning(); } - public Set getRunningSessionIdSet() { - return systemHelper.getRunningSessionIdSet(); + public String[] getRunningSessionIds() { + final Set idSet = systemHelper.getRunningSessionIdSet(); + return idSet.toArray(new String[idSet.size()]); } } \ No newline at end of file diff --git a/src/main/java/jp/sf/fess/db/exentity/ScheduledJob.java b/src/main/java/jp/sf/fess/db/exentity/ScheduledJob.java index 6426c2cbd..d98c4260f 100644 --- a/src/main/java/jp/sf/fess/db/exentity/ScheduledJob.java +++ b/src/main/java/jp/sf/fess/db/exentity/ScheduledJob.java @@ -19,6 +19,7 @@ package jp.sf.fess.db.exentity; import jp.sf.fess.Constants; import jp.sf.fess.db.bsentity.BsScheduledJob; import jp.sf.fess.helper.SystemHelper; +import jp.sf.fess.job.TriggeredJob; import org.seasar.framework.container.SingletonS2Container; @@ -51,4 +52,14 @@ public class ScheduledJob extends BsScheduledJob { return SingletonS2Container.getComponent(SystemHelper.class) .getJobExecutoer(getId()) != null; } + + public void start() { + final ScheduledJob scheduledJob = this; + new Thread(new Runnable() { + @Override + public void run() { + new TriggeredJob().execute(scheduledJob); + } + }).start(); + } } diff --git a/src/main/resources/application.properties b/src/main/resources/application.properties index 98025707a..aaffb77ca 100644 --- a/src/main/resources/application.properties +++ b/src/main/resources/application.properties @@ -712,16 +712,17 @@ labels.solr_current_select_server=Current Select Server labels.solr_current_update_server=Current Update Server labels.solr_title_action=Solr Action labels.solr_title_delete=Delete -labels.solr_process_running=Crawler Process -labels.solr_running=Running -labels.solr_stopped=Stopped +labels.crawler_process_running=Crawler Process +labels.crawler_running=Running +labels.crawler_stopped=Stopped +labels.crawler_process_action=Action labels.solr_document_title=Added Documents labels.solr_group_name=Server Group labels.session_name=Session labels.solr_num_of_docs=Num of Docs labels.solr_title_edit=Solr Status -labels.solr_button_start=Start Crawler -labels.solr_button_stop=Stop Crawker +labels.crawler_button_start=Start Crawler +labels.crawler_button_stop=Stop Crawker labels.solr_management_title=Solr Instance labels.solr_instance_name=Name labels.solr_instance_status=Status @@ -734,6 +735,8 @@ labels.system_document_all=All labels.system_group_server_name=Group : Server labels.system_server_status=Server Status labels.system_index_status=Index Status +labels.crawler_status_title=Crawler Status +labels.crawler_sessionid_all=All # view/admin/crawlingSession/confirm.jsp #labels.path_mapping_configuration= diff --git a/src/main/resources/application_ja.properties b/src/main/resources/application_ja.properties index 0fd92275b..9547cb88f 100644 --- a/src/main/resources/application_ja.properties +++ b/src/main/resources/application_ja.properties @@ -710,16 +710,17 @@ labels.solr_current_select_server=\u73fe\u5728\u306e\u691c\u7d22\u7528\u30b5\u30 labels.solr_current_update_server=\u73fe\u5728\u306e\u66f4\u65b0\u7528\u30b5\u30fc\u30d0\u30fc labels.solr_title_action=Solr \u30a2\u30af\u30b7\u30e7\u30f3 labels.solr_title_delete=\u30a4\u30f3\u30c7\u30c3\u30af\u30b9\u524a\u9664 -labels.solr_process_running=\u30af\u30ed\u30fc\u30e9\u30fc\u30d7\u30ed\u30bb\u30b9 -labels.solr_running=\u5b9f\u884c\u4e2d -labels.solr_stopped=\u505c\u6b62\u4e2d +labels.crawler_process_running=\u30af\u30ed\u30fc\u30e9\u30fc\u30d7\u30ed\u30bb\u30b9 +labels.crawler_running=\u5b9f\u884c\u4e2d +labels.crawler_stopped=\u505c\u6b62\u4e2d +labels.crawler_process_action=\u30a2\u30af\u30b7\u30e7\u30f3 labels.solr_document_title=\u8ffd\u52a0\u3055\u308c\u305f\u30c9\u30ad\u30e5\u30e1\u30f3\u30c8 labels.solr_group_name=\u30b5\u30fc\u30d0\u30fc\u30b0\u30eb\u30fc\u30d7 labels.session_name=\u30bb\u30c3\u30b7\u30e7\u30f3 labels.solr_num_of_docs=\u30c9\u30ad\u30e5\u30e1\u30f3\u30c8\u6570 labels.solr_title_edit=Solr \u72b6\u614b\u8a2d\u5b9a -labels.solr_button_start=\u30af\u30ed\u30fc\u30eb\u306e\u958b\u59cb -labels.solr_button_stop=\u30af\u30ed\u30fc\u30eb\u306e\u505c\u6b62 +labels.crawler_button_start=\u30af\u30ed\u30fc\u30eb\u306e\u958b\u59cb +labels.crawler_button_stop=\u30af\u30ed\u30fc\u30eb\u306e\u505c\u6b62 labels.solr_management_title=Solr\u30a4\u30f3\u30b9\u30bf\u30f3\u30b9 labels.solr_instance_name=\u540d\u524d labels.solr_instance_status=\u72b6\u614b @@ -732,6 +733,8 @@ labels.system_document_all=\u3059\u3079\u3066 labels.system_group_server_name=\u30b0\u30eb\u30fc\u30d7 : \u30b5\u30fc\u30d0\u30fc labels.system_server_status=\u30b5\u30fc\u30d0\u30fc\u72b6\u614b labels.system_index_status=\u30a4\u30f3\u30c7\u30c3\u30af\u30b9\u72b6\u614b +labels.crawler_status_title=\u30af\u30ed\u30fc\u30e9\u30fc\u72b6\u614b +labels.crawler_sessionid_all=\u3059\u3079\u3066 # view/admin/crawlingSession/confirm.jsp #labels.path_mapping_configuration= diff --git a/src/main/webapp/WEB-INF/view/admin/system/index.jsp b/src/main/webapp/WEB-INF/view/admin/system/index.jsp index 02f820667..4b6758b1a 100644 --- a/src/main/webapp/WEB-INF/view/admin/system/index.jsp +++ b/src/main/webapp/WEB-INF/view/admin/system/index.jsp @@ -20,54 +20,76 @@ <%-- Message: END --%> +
+

+ +

+ + + + + + + + + + + +
+ ${f:h(currentServerForSelect)} ( + + + + ) +
+ ${f:h(currentServerForUpdate)} ( + + + + ) +
+
+

- +

+ key="labels.crawler_process_running" /> - - - - - - +
- - (${f:h(runningSessionId)}) + - + - - " /> - - " /> -
- ${f:h(currentServerForSelect)} ( - - - - ) -
- ${f:h(currentServerForUpdate)} ( - - - - ) + + + " /> + + + + + + + + + " /> +