CernVM-FS  2.12.0
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
task_register.h
Go to the documentation of this file.
1 
5 #ifndef CVMFS_INGESTION_TASK_REGISTER_H_
6 #define CVMFS_INGESTION_TASK_REGISTER_H_
7 
8 #include "ingestion/item.h"
9 #include "ingestion/task.h"
10 #include "upload_spooler_result.h"
11 #include "util/concurrency.h"
12 #include "util/tube.h"
13 
20  : public TubeConsumer<FileItem>
21  , public Observable<upload::SpoolerResult>
22 {
23  public:
25  Tube<FileItem> *tube_ctr_inflight_pre,
26  Tube<FileItem> *tube_ctr_inflight_post)
27  : TubeConsumer<FileItem>(tube_in)
28  , tube_ctr_inflight_pre_(tube_ctr_inflight_pre)
29  , tube_ctr_inflight_post_(tube_ctr_inflight_post)
30  { }
31 
32  protected:
33  virtual void Process(FileItem *file_item);
34 
35  private:
38 }; // class TaskRegister
39 
40 #endif // CVMFS_INGESTION_TASK_REGISTER_H_
TaskRegister(Tube< FileItem > *tube_in, Tube< FileItem > *tube_ctr_inflight_pre, Tube< FileItem > *tube_ctr_inflight_post)
Definition: task_register.h:24
Tube< FileItem > * tube_ctr_inflight_post_
Definition: task_register.h:37
Tube< FileItem > * tube_ctr_inflight_pre_
Definition: task_register.h:36
virtual void Process(FileItem *file_item)
Definition: item.h:34