UNOMI-101 : Execution History and Import Status improvement

Project: http://git-wip-us.apache.org/repos/asf/incubator-unomi/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-unomi/commit/6203e994
Tree: http://git-wip-us.apache.org/repos/asf/incubator-unomi/tree/6203e994
Diff: http://git-wip-us.apache.org/repos/asf/incubator-unomi/diff/6203e994

Branch: refs/heads/feature-UNOMI-5-KARAF4
Commit: 6203e9947f5da98dc54eff20d7906fc5b51d1259
Parents: 6570c8a
Author: Abdelkader Midani <amid...@apache.org>
Authored: Sun Jun 18 08:36:08 2017 +0200
Committer: Abdelkader Midani <amid...@apache.org>
Committed: Sun Jun 18 08:36:08 2017 +0200

----------------------------------------------------------------------
 .../unomi/router/api/ImportConfiguration.java     | 18 +++++++++---------
 .../apache/unomi/router/core/RouterConstants.java | 13 +++++++++----
 .../core/processor/RouteCompletionProcessor.java  |  8 +++++++-
 .../ProfileImportFromSourceRouteBuilder.java      |  2 +-
 4 files changed, 26 insertions(+), 15 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-unomi/blob/6203e994/extensions/router/router-api/src/main/java/org/apache/unomi/router/api/ImportConfiguration.java
----------------------------------------------------------------------
diff --git 
a/extensions/router/router-api/src/main/java/org/apache/unomi/router/api/ImportConfiguration.java
 
b/extensions/router/router-api/src/main/java/org/apache/unomi/router/api/ImportConfiguration.java
index bf17a31..ee0184a 100644
--- 
a/extensions/router/router-api/src/main/java/org/apache/unomi/router/api/ImportConfiguration.java
+++ 
b/extensions/router/router-api/src/main/java/org/apache/unomi/router/api/ImportConfiguration.java
@@ -44,7 +44,7 @@ public class ImportConfiguration extends Item {
     private String columnSeparator = ",";
     private String lineSeparator = "\n";
     private boolean active = false;
-    private boolean running = false;
+    private String status;
 
     private List<Map<String, Object>> executions = new ArrayList();
 
@@ -162,21 +162,21 @@ public class ImportConfiguration extends Item {
     }
 
     /**
-     * Retrieves the import configuration running flag.
+     * Retrieves the import configuration status for last execution.
      *
-     * @return true if the import configuration is running false if not
+     * @return status of the last execution
      */
-    public boolean isRunning() {
-        return this.running;
+    public String getStatus() {
+        return this.status;
     }
 
     /**
-     * Sets the running flag true/false.
+     * Sets status of the last execution.
      *
-     * @param running a boolean to set to running or inactive the import 
configuration
+     * @param status of the last execution
      */
-    public void setRunning(boolean running) {
-        this.running = running;
+    public void setStatus(String status) {
+        this.status = status;
     }
 
     /**

http://git-wip-us.apache.org/repos/asf/incubator-unomi/blob/6203e994/extensions/router/router-core/src/main/java/org/apache/unomi/router/core/RouterConstants.java
----------------------------------------------------------------------
diff --git 
a/extensions/router/router-core/src/main/java/org/apache/unomi/router/core/RouterConstants.java
 
b/extensions/router/router-core/src/main/java/org/apache/unomi/router/core/RouterConstants.java
index d15f2c3..04e3709 100644
--- 
a/extensions/router/router-core/src/main/java/org/apache/unomi/router/core/RouterConstants.java
+++ 
b/extensions/router/router-core/src/main/java/org/apache/unomi/router/core/RouterConstants.java
@@ -24,13 +24,18 @@ public interface RouterConstants {
     String CONFIG_TYPE_NOBROKER = "nobroker";
     String CONFIG_TYPE_KAFKA = "kafka";
 
+    String CONFIG_STATUS_RUNNING = "RUNNING";
+    String CONFIG_STATUS_COMPLETE_ERRORS = "ERRORS";
+    String CONFIG_STATUS_COMPLETE_SUCCESS = "SUCCESS";
+    String CONFIG_STATUS_COMPLETE_WITH_ERRORS = "WITH_ERRORS";
+
     String DIRECT_DEPOSIT_BUFFER = "direct:depositBuffer";
 
-    String HEADER_IMPORT_CONFIG_ONESHOT = "importConfigOneShot";
+    String DIRECTION_FROM = "from";
+    String DIRECTION_TO = "to";
+
     String HEADER_CONFIG_TYPE = "configType";
 
     String HEADER_FAILED_MESSAGE = "failedMessage";
-
-    String DIRECTION_FROM = "from";
-    String DIRECTION_TO = "to";
+    String HEADER_IMPORT_CONFIG_ONESHOT = "importConfigOneShot";
 }

http://git-wip-us.apache.org/repos/asf/incubator-unomi/blob/6203e994/extensions/router/router-core/src/main/java/org/apache/unomi/router/core/processor/RouteCompletionProcessor.java
----------------------------------------------------------------------
diff --git 
a/extensions/router/router-core/src/main/java/org/apache/unomi/router/core/processor/RouteCompletionProcessor.java
 
b/extensions/router/router-core/src/main/java/org/apache/unomi/router/core/processor/RouteCompletionProcessor.java
index e4f01cc..5952764 100644
--- 
a/extensions/router/router-core/src/main/java/org/apache/unomi/router/core/processor/RouteCompletionProcessor.java
+++ 
b/extensions/router/router-core/src/main/java/org/apache/unomi/router/core/processor/RouteCompletionProcessor.java
@@ -84,7 +84,13 @@ public class RouteCompletionProcessor implements Processor {
 
         importConfiguration.getExecutions().add(execution);
         //Set running to false, route is complete
-        importConfiguration.setRunning(false);
+        if(failureCount>0 && successCount>0) {
+            
importConfiguration.setStatus(RouterConstants.CONFIG_STATUS_COMPLETE_WITH_ERRORS);
+        } else if(failureCount>0 && successCount==0) {
+            
importConfiguration.setStatus(RouterConstants.CONFIG_STATUS_COMPLETE_ERRORS);
+        } else if(failureCount==0 && successCount>0) {
+            
importConfiguration.setStatus(RouterConstants.CONFIG_STATUS_COMPLETE_SUCCESS);
+        }
         importConfigurationService.save(importConfiguration);
         logger.info("Processing route {} completed.", 
exchange.getFromRouteId());
     }

http://git-wip-us.apache.org/repos/asf/incubator-unomi/blob/6203e994/extensions/router/router-core/src/main/java/org/apache/unomi/router/core/route/ProfileImportFromSourceRouteBuilder.java
----------------------------------------------------------------------
diff --git 
a/extensions/router/router-core/src/main/java/org/apache/unomi/router/core/route/ProfileImportFromSourceRouteBuilder.java
 
b/extensions/router/router-core/src/main/java/org/apache/unomi/router/core/route/ProfileImportFromSourceRouteBuilder.java
index ca64091..7d6bd07 100644
--- 
a/extensions/router/router-core/src/main/java/org/apache/unomi/router/core/route/ProfileImportFromSourceRouteBuilder.java
+++ 
b/extensions/router/router-core/src/main/java/org/apache/unomi/router/core/route/ProfileImportFromSourceRouteBuilder.java
@@ -95,7 +95,7 @@ public class ProfileImportFromSourceRouteBuilder extends 
ProfileImportAbstractRo
                         .process(new Processor() {
                             @Override
                             public void process(Exchange exchange) throws 
Exception {
-                                importConfiguration.setRunning(true);
+                                
importConfiguration.setStatus(RouterConstants.CONFIG_STATUS_RUNNING);
                                 
importConfigurationService.save(importConfiguration);
                             }
                         })

Reply via email to