MICO Platform
 All Classes Namespaces Functions Variables Friends
AnalysisService.hpp
1 #ifndef HAVE_ANALYSIS_SERVICE_H
2 #define HAVE_ANALYSIS_SERVICE_H 1
3 
4 #include <string>
5 
6 #include "rdf_model.hpp"
7 #include "ContentItem.hpp"
8 
9 namespace mico {
10  namespace event {
11 
19  protected:
20  mico::rdf::model::URI serviceID;
21  std::string provides;
22  std::string requires;
23  std::string queue;
24 
25  public:
26  AnalysisService(const std::string serviceID, const std::string requires, const std::string provides, const std::string queue)
27  : serviceID(serviceID), provides(provides), requires(requires), queue(queue) {};
28 
29 
30  virtual ~AnalysisService() {};
31 
37  virtual const mico::rdf::model::URI& getServiceID() const { return serviceID; };
38 
39 
46  virtual const std::string& getProvides() const { return provides; };
47 
48 
55  virtual const std::string& getRequires() const { return requires; };
56 
57 
67  virtual const std::string& getQueueName() const { return queue; };
68 
69 
79  virtual void call(std::function<void(const mico::persistence::ContentItem& ci, const mico::rdf::model::URI& object)> resp, mico::persistence::ContentItem& ci, mico::rdf::model::URI& object) = 0;
80 
81  };
82 
83  }
84 }
85 #endif
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in c...
Definition: http_client.cpp:23
virtual const std::string & getQueueName() const
Return the queue name that should be used by the messaging infrastructure for this service...
Definition: AnalysisService.hpp:67
virtual const std::string & getRequires() const
Return the type of input required by this service as symbolic identifier.
Definition: AnalysisService.hpp:55
virtual const mico::rdf::model::URI & getServiceID() const
Return a unique ID (URI) that identifies this service and its functionality.
Definition: AnalysisService.hpp:37
Representation of a ContentItem.
Definition: ContentItem.hpp:76
virtual void call(std::function< void(const mico::persistence::ContentItem &ci, const mico::rdf::model::URI &object)> resp, mico::persistence::ContentItem &ci, mico::rdf::model::URI &object)=0
Call this service for the given content item and object.
A URI.
Definition: rdf_model.hpp:74
Interface to be implemented by services.
Definition: AnalysisService.hpp:18
virtual const std::string & getProvides() const
Return the type of output produced by this service as symbolic identifier.
Definition: AnalysisService.hpp:46