NCBI C++ ToolKit
ns_server_misc.hpp
Go to the documentation of this file.

Go to the SVN repository for this file.

1 #ifndef NETSCHEDULE_SERVER_MISC__HPP
2 #define NETSCHEDULE_SERVER_MISC__HPP
3 
4 /* $Id: ns_server_misc.hpp 84210 2018-10-25 15:29:28Z satskyse $
5  * ===========================================================================
6  *
7  * PUBLIC DOMAIN NOTICE
8  * National Center for Biotechnology Information
9  *
10  * This software/database is a "United States Government Work" under the
11  * terms of the United States Copyright Act. It was written as part of
12  * the author's official duties as a United States Government employee and
13  * thus cannot be copyrighted. This software/database is freely available
14  * to the public for use. The National Library of Medicine and the U.S.
15  * Government have not placed any restriction on its use or reproduction.
16  *
17  * Although all reasonable efforts have been taken to ensure the accuracy
18  * and reliability of the software and data, the NLM and the U.S.
19  * Government do not and cannot warrant the performance or results that
20  * may be obtained by using this software or data. The NLM and the U.S.
21  * Government disclaim all warranties, express or implied, including
22  * warranties of performance, merchantability or fitness for any particular
23  * purpose.
24  *
25  * Please cite the author in any work or product based on this material.
26  *
27  * ===========================================================================
28  *
29  * Authors: Anatoliy Kuznetsov, Victor Joukov
30  *
31  * File Description: factories, hosts etc for the NS server
32  *
33  */
34 
35 #include <string>
36 #include <connect/server.hpp>
37 #include <corelib/ncbiobj.hpp>
38 #include <util/thread_pool_old.hpp>
39 
40 #include "background_host.hpp"
41 #include "ns_util.hpp"
42 
43 
45 
46 class CNetScheduleServer;
47 
48 
49 //////////////////////////////////////////////////////////////////////////
50 /// CNetScheduleConnectionFactory::
52 {
53 public:
55  m_Server(server)
56  {}
57 
59 
60 private:
62 };
63 
64 
65 //////////////////////////////////////////////////////////////////////////
66 /// Host for background threads
68 {
69 public:
71  : m_Server(server)
72  {}
73 
74  virtual void ReportError(ESeverity severity,
75  const std::string& what);
76  virtual bool ShouldRun();
77  virtual bool IsLog() const;
78 
79 private:
81 };
82 
83 
85 
86 #endif
87 
Host for background threads.
virtual void ReportError(ESeverity severity, const std::string &what)
CNetScheduleBackgroundHost implementation.
CNetScheduleServer * m_Server
CNetScheduleBackgroundHost(CNetScheduleServer *server)
virtual bool IsLog() const
CNetScheduleConnectionFactory::
CNetScheduleServer * m_Server
IServer_ConnectionHandler * Create(void)
CNetScheduleConnectionFactory implemetation.
CNetScheduleConnectionFactory(CNetScheduleServer *server)
NetScheduler threaded server.
Definition: ns_server.hpp:57
IServer_ConnectionFactory::
Definition: server.hpp:388
IServer_ConnectionHandler::
Definition: server.hpp:226
string
Definition: cgiapp.hpp:687
#define END_NCBI_SCOPE
End previously defined NCBI scope.
Definition: ncbistl.hpp:103
#define BEGIN_NCBI_SCOPE
Define ncbi namespace.
Definition: ncbistl.hpp:100
Portable reference counted smart and weak pointers using CWeakRef, CRef, CObject and CObjectEx.
Framework to create multithreaded network servers with thread-per-request scheduling.
Modified on Tue May 28 05:49:25 2024 by modify_doxy.py rev. 669887