summaryrefslogtreecommitdiffabout
path: root/include/sitecing/cgi_component.h
Side-by-side diff
Diffstat (limited to 'include/sitecing/cgi_component.h') (more/less context) (ignore whitespace changes)
-rw-r--r--include/sitecing/cgi_component.h54
1 files changed, 54 insertions, 0 deletions
diff --git a/include/sitecing/cgi_component.h b/include/sitecing/cgi_component.h
new file mode 100644
index 0000000..91df689
--- a/dev/null
+++ b/include/sitecing/cgi_component.h
@@ -0,0 +1,54 @@
+#ifndef __SITECING_CGI_COMPONENT_H
+#define __SITECING_CGI_COMPONENT_H
+
+#include <map>
+#include "kingate/cgi_gateway.h"
+#include "sitecing/acomponent.h"
+#include "sitecing/sitecing_interface_cgi.h"
+
+/**
+ * @file
+ * @brief The cgi_component class declaration.
+ */
+
+namespace sitecing {
+ using namespace std;
+
+ /**
+ * The CGI-oriented component class.
+ */
+ class cgi_component : virtual public acomponent {
+ public:
+ /**
+ * The interface to site-C-ing core.
+ */
+ sitecing_interface_cgi* __SCIF;
+ /**
+ * The interface to the CGI gateway.
+ */
+ kingate::cgi_gateway* __CGI;
+
+ cgi_component();
+ virtual ~cgi_component();
+
+ /**
+ * @overload acomponent::__set_interface()
+ */
+ void __set_interface(sitecing_interface* scif);
+ /**
+ * @overload acomponent::__on_change_interface()
+ */
+ void __on_change_interface(sitecing_interface *o);
+ /**
+ * Invoked on the change of the interface to the CGI.
+ */
+ virtual void __on_change_CGI(kingate::cgi_gateway *o);
+ /**
+ * @overload acomponent::__on_imports()
+ */
+ virtual void __on_imports();
+ };
+
+}
+
+#endif /* __SITECING_CGI_COMPONENT_H */