diff Core/JobsEngine/SetOfInstancesJob.h @ 2842:ff0ed5ea9e4e

trailing step in SetOfInstancesJob
author Sebastien Jodogne <s.jodogne@gmail.com>
date Wed, 26 Sep 2018 15:55:42 +0200
parents ea7aea6f6a95
children 8b00e4cb4a6b
line wrap: on
line diff
--- a/Core/JobsEngine/SetOfInstancesJob.h	Wed Sep 26 09:50:30 2018 +0200
+++ b/Core/JobsEngine/SetOfInstancesJob.h	Wed Sep 26 15:55:42 2018 +0200
@@ -42,6 +42,7 @@
   class SetOfInstancesJob : public IJob
   {
   private:
+    bool                      hasTrailingStep_;
     bool                      started_;
     std::vector<std::string>  instances_;
     bool                      permissive_;
@@ -52,11 +53,18 @@
   protected:
     virtual bool HandleInstance(const std::string& instance) = 0;
 
+    virtual bool HandleTrailingStep() = 0;
+
   public:
-    SetOfInstancesJob();
+    SetOfInstancesJob(bool hasTrailingStep);
 
     SetOfInstancesJob(const Json::Value& s);  // Unserialization
 
+    bool HasTrailingStep() const
+    {
+      return hasTrailingStep_;
+    }
+    
     size_t GetPosition() const
     {
       return position_;
@@ -79,6 +87,8 @@
       return instances_.size();
     }
     
+    size_t GetStepsCount() const;
+
     void AddInstance(const std::string& instance);
 
     bool IsPermissive() const