diff options
Diffstat (limited to 'project2/cgi/cgiAppEngine.h')
-rw-r--r-- | project2/cgi/cgiAppEngine.h | 24 |
1 files changed, 11 insertions, 13 deletions
diff --git a/project2/cgi/cgiAppEngine.h b/project2/cgi/cgiAppEngine.h index 154ca09..7e081e6 100644 --- a/project2/cgi/cgiAppEngine.h +++ b/project2/cgi/cgiAppEngine.h @@ -32,13 +32,13 @@ class CgiApplicationEngine : public ApplicationEngine, public TransformChainLink virtual ~CgiApplicationEngine(); void process() const; - const Environment * env() const; + const CgiEnvironment * env() const; SessionPtr session() const; void addAppData(const MultiRowSetPresenter * p, OutputOptionsPtr) const; void addEnvData(const MultiRowSetPresenter * p, OutputOptionsPtr) const; - const CgiEnvironment * _env; private: + const CgiEnvironment * _env; mutable boost::posix_time::ptime startTime; mutable boost::posix_time::ptime endTime; SessionContainerPtr sessionsContainer; @@ -58,11 +58,10 @@ class CgiApplicationEngine : public ApplicationEngine, public TransformChainLink /// Base class for a stage iteration that should eventually produce a response for the client class Stage : public virtual IntrusivePtrBase { public: - Stage(const CgiEnvironment * e); virtual ~Stage() = 0; virtual NextStage run() = 0; protected: - const CgiEnvironment * e; + const CgiEnvironment * env() const; }; /// Base class for a stage that can be a response to the client @@ -70,7 +69,7 @@ class CgiApplicationEngine : public ApplicationEngine, public TransformChainLink public: typedef ANONORDEREDSTORAGEOF(PresenterCache) PresenterCaches; - ResponseStage(const CgiEnvironment * e, ScriptNodePtr root); + ResponseStage(ScriptNodePtr root); virtual HttpHeaderPtr getHeader() const = 0; OutputOptionsPtr outputOptions; @@ -81,14 +80,13 @@ class CgiApplicationEngine : public ApplicationEngine, public TransformChainLink /// Stage implementation used to bootstrap the iteration process based on the CGI environment class InitialStage : public Stage { public: - InitialStage(const CgiEnvironment * e); virtual NextStage run(); }; /// Stage to process POST requests class RequestStage : public ResponseStage, TaskHost { public: - RequestStage(const CgiEnvironment *, ScriptReaderPtr); + RequestStage(ScriptReaderPtr); virtual NextStage run(); virtual HttpHeaderPtr getHeader() const; @@ -99,7 +97,7 @@ class CgiApplicationEngine : public ApplicationEngine, public TransformChainLink /// Stage to process GET requests and follow up RequestStages class PresentStage : public virtual ResponseStage, ViewHost { public: - PresentStage(const CgiEnvironment * e, ScriptReaderPtr); + PresentStage(ScriptReaderPtr); MultiRowSetPresenterPtr getPresenter() const; virtual NextStage run(); @@ -111,7 +109,7 @@ class CgiApplicationEngine : public ApplicationEngine, public TransformChainLink /// Stage to return previous cached output class CacheHitStage : public virtual ResponseStage { public: - CacheHitStage(const CgiEnvironment * e, ScriptNodePtr, PresenterCachePtr); + CacheHitStage(ScriptNodePtr, PresenterCachePtr); virtual NextStage run(); virtual HttpHeaderPtr getHeader() const; @@ -122,7 +120,7 @@ class CgiApplicationEngine : public ApplicationEngine, public TransformChainLink /// The built-in fail-safe not found stage class DefaultNotFoundStage : public virtual ResponseStage { public: - DefaultNotFoundStage(const CgiEnvironment *, const ScriptNotFound &); + DefaultNotFoundStage(const ScriptNotFound &); virtual NextStage run(); virtual HttpHeaderPtr getHeader() const; @@ -134,7 +132,7 @@ class CgiApplicationEngine : public ApplicationEngine, public TransformChainLink /// Custom not found handling stage class CustomNotFoundStage : public DefaultNotFoundStage, public PresentStage { public: - CustomNotFoundStage(const CgiEnvironment *, const ScriptNotFound &, ScriptReaderPtr); + CustomNotFoundStage(const ScriptNotFound &, ScriptReaderPtr); virtual NextStage run(); virtual HttpHeaderPtr getHeader() const; }; @@ -142,7 +140,7 @@ class CgiApplicationEngine : public ApplicationEngine, public TransformChainLink /// The built-in fail-safe unhandled error stage class DefaultErrorStage : public virtual ResponseStage { public: - DefaultErrorStage(const CgiEnvironment *, const std::exception &); + DefaultErrorStage(const std::exception &); ~DefaultErrorStage(); virtual NextStage run(); @@ -156,7 +154,7 @@ class CgiApplicationEngine : public ApplicationEngine, public TransformChainLink /// Custom unhandled error handling stage class CustomErrorStage : public DefaultErrorStage, public PresentStage { public: - CustomErrorStage(const CgiEnvironment *, const std::exception &, ScriptReaderPtr); + CustomErrorStage(const std::exception &, ScriptReaderPtr); virtual NextStage run(); virtual HttpHeaderPtr getHeader() const; }; |