A platform for high-performance distributed tool and library development written in C++. It can be deployed in two different cluster modes: standalone or distributed. API for v0.5.0, released on June 13, 2018.
Main Page
Namespaces
Classes
Files
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
ServerWork.h
Go to the documentation of this file.
1
/*****************************************************************************
2
* *
3
* Copyright 2018 Rice University *
4
* *
5
* Licensed under the Apache License, Version 2.0 (the "License"); *
6
* you may not use this file except in compliance with the License. *
7
* You may obtain a copy of the License at *
8
* *
9
* http://www.apache.org/licenses/LICENSE-2.0 *
10
* *
11
* Unless required by applicable law or agreed to in writing, software *
12
* distributed under the License is distributed on an "AS IS" BASIS, *
13
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. *
14
* See the License for the specific language governing permissions and *
15
* limitations under the License. *
16
* *
17
*****************************************************************************/
18
/*
19
* File: ServerWork.h
20
* Author: Chris
21
*
22
* Created on September 25, 2015, 5:05 PM
23
*/
24
25
#ifndef SERVERWORK_H
26
#define SERVERWORK_H
27
28
29
#include "
PDBBuzzer.h
"
30
#include "
PDBCommWork.h
"
31
#include "
PDBServer.h
"
32
33
namespace
pdb {
34
35
#include <memory>
36
class
ServerWork
;
37
typedef
shared_ptr<ServerWork>
ServerWorkPtr
;
38
39
// does all of the work associated with one connection to the server
40
41
class
ServerWork
:
public
PDBCommWork
{
42
public
:
43
// specify the server we are working on
44
ServerWork
(
PDBServer
&
workOnMe
);
45
46
// do the actual work
47
void
execute
(
PDBBuzzerPtr
callerBuzzer)
override
;
48
49
// error handler
50
void
handleError
();
51
52
// clone this guy
53
PDBCommWorkPtr
clone
()
override
;
54
55
// get buzzer linked to this guy
56
PDBBuzzerPtr
getLinkedBuzzer
()
override
;
57
58
private
:
59
// calling handleError sets this to true
60
bool
wasEnError
;
61
62
// the server we are doing the work for
63
PDBServer
&
workOnMe
;
64
};
65
}
66
67
#endif
/* SERVERWORK_H */
pdb::ServerWork
Definition:
ServerWork.h:41
pdb::ServerWork::wasEnError
bool wasEnError
Definition:
ServerWork.h:60
pdb::ServerWork::clone
PDBCommWorkPtr clone() override
Definition:
ServerWork.cc:30
pdb::ServerWorkPtr
shared_ptr< ServerWork > ServerWorkPtr
Definition:
ServerWork.h:36
pdb::PDBCommWork
Definition:
PDBCommWork.h:47
pdb::ServerWork::handleError
void handleError()
Definition:
ServerWork.cc:35
PDBCommWork.h
PDBBuzzer.h
PDBBuzzerPtr
shared_ptr< PDBBuzzer > PDBBuzzerPtr
Definition:
PDBBuzzer.h:32
PDBServer.h
pdb::ServerWork::execute
void execute(PDBBuzzerPtr callerBuzzer) override
Definition:
ServerWork.cc:44
pdb::ServerWork::getLinkedBuzzer
PDBBuzzerPtr getLinkedBuzzer() override
Definition:
ServerWork.cc:40
pdb::ServerWork::ServerWork
ServerWork(PDBServer &workOnMe)
Definition:
ServerWork.cc:26
pdb::PDBCommWorkPtr
std::shared_ptr< PDBCommWork > PDBCommWorkPtr
Definition:
PDBCommWork.h:37
pdb::ServerWork::workOnMe
PDBServer & workOnMe
Definition:
ServerWork.h:63
pdb::PDBServer
Definition:
PDBServer.h:56
plinycompute
pdb
src
pdbServer
headers
ServerWork.h
Generated on Mon Jun 18 2018 18:10:36 by
1.8.6