Go to the documentation of this file.00001
00003
00004 #ifndef EventFilter_SMProxyServer_SMPSWebPageHelper_h
00005 #define EventFilter_SMProxyServer_SMPSWebPageHelper_h
00006
00007 #include "EventFilter/SMProxyServer/interface/EventQueueCollection.h"
00008 #include "EventFilter/SMProxyServer/interface/StateMachine.h"
00009 #include "EventFilter/StorageManager/interface/ConsumerWebPageHelper.h"
00010 #include "EventFilter/StorageManager/interface/WebPageHelper.h"
00011
00012
00013 namespace smproxy {
00014
00023 class SMPSWebPageHelper : public stor::WebPageHelper<SMPSWebPageHelper>
00024 {
00025 public:
00026
00027 SMPSWebPageHelper
00028 (
00029 xdaq::ApplicationDescriptor*,
00030 StateMachinePtr
00031 );
00032
00036 void defaultWebPage(xgi::Output*) const;
00037
00041 void dataRetrieverWebPage(xgi::Output*) const;
00042
00046 void dqmEventStatisticsWebPage(xgi::Output*) const;
00047
00051 void consumerStatisticsWebPage(xgi::Output*) const;
00052
00053
00054 private:
00055
00059 virtual void addDOMforHyperLinks(stor::XHTMLMaker&, stor::XHTMLMaker::Node* parent) const;
00060
00064 void addDOMforConnectionInfo
00065 (
00066 stor::XHTMLMaker&,
00067 stor::XHTMLMaker::Node* parent,
00068 const DataRetrieverMonitorCollection::SummaryStats&
00069 ) const;
00070
00074 void addDOMforThroughputPerEventType
00075 (
00076 stor::XHTMLMaker&,
00077 stor::XHTMLMaker::Node* parent,
00078 const DataRetrieverMonitorCollection::SummaryStats&
00079 ) const;
00080
00084 void addRowForEventType
00085 (
00086 stor::XHTMLMaker&,
00087 stor::XHTMLMaker::Node* table,
00088 DataRetrieverMonitorCollection::SummaryStats::EventTypeStats const&
00089 ) const;
00090
00094 void addSummaryRowForThroughput
00095 (
00096 stor::XHTMLMaker&,
00097 stor::XHTMLMaker::Node* table,
00098 DataRetrieverMonitorCollection::SummaryStats const&
00099 ) const;
00100
00104 void addDOMforEventServers
00105 (
00106 stor::XHTMLMaker&,
00107 stor::XHTMLMaker::Node* parent
00108 ) const;
00109
00113 void addRowForEventServer
00114 (
00115 stor::XHTMLMaker&,
00116 stor::XHTMLMaker::Node* table,
00117 DataRetrieverMonitorCollection::EventTypePerConnectionStats const&
00118 ) const;
00119
00123 void addSummaryRowForEventServer
00124 (
00125 stor::XHTMLMaker&,
00126 stor::XHTMLMaker::Node* table,
00127 DataRetrieverMonitorCollection::ConnectionStats::const_iterator
00128 ) const;
00129
00133 void addDOMforSMhost
00134 (
00135 stor::XHTMLMaker&,
00136 stor::XHTMLMaker::Node* tableRow,
00137 const std::string& sourceURL
00138 ) const;
00139
00143 void addDOMforDQMEventServers
00144 (
00145 stor::XHTMLMaker&,
00146 stor::XHTMLMaker::Node* parent
00147 ) const;
00148
00149
00150 SMPSWebPageHelper(SMPSWebPageHelper const&);
00151 SMPSWebPageHelper& operator=(SMPSWebPageHelper const&);
00152
00153 StateMachinePtr stateMachine_;
00154
00155 typedef stor::ConsumerWebPageHelper<SMPSWebPageHelper,
00156 EventQueueCollection,
00157 StatisticsReporter> ConsumerWebPageHelper_t;
00158 ConsumerWebPageHelper_t consumerWebPageHelper_;
00159
00160 };
00161
00162 }
00163
00164 #endif // EventFilter_SMProxyServer_SMPSWebPageHelper_h
00165
00166