reSIProcate
SIP stack, Dialog Usage Manager and related libraries
Loading...
Searching...
No Matches
Worker.hxx
Go to the documentation of this file.
1#ifndef WORKER_HXX
2#define WORKER_HXX 1
3
5#include "rutil/ResipAssert.h"
6
7namespace resip
8{
9
10class Worker
11{
12 public:
13 Worker(){};
14 virtual ~Worker(){};
15
16 // called once when the thread is started
17 virtual void onStart() {};
18
19 // return true to queue to stack when complete, false when no response is required
20 virtual bool process(resip::ApplicationMessage* msg)=0;
21 virtual Worker* clone() const=0;
22};
23}
24#endif
25
26/* ====================================================================
27 * The Vovida Software License, Version 1.0
28 *
29 * Copyright (c) 2000 Vovida Networks, Inc. All rights reserved.
30 *
31 * Redistribution and use in source and binary forms, with or without
32 * modification, are permitted provided that the following conditions
33 * are met:
34 *
35 * 1. Redistributions of source code must retain the above copyright
36 * notice, this list of conditions and the following disclaimer.
37 *
38 * 2. Redistributions in binary form must reproduce the above copyright
39 * notice, this list of conditions and the following disclaimer in
40 * the documentation and/or other materials provided with the
41 * distribution.
42 *
43 * 3. The names "VOCAL", "Vovida Open Communication Application Library",
44 * and "Vovida Open Communication Application Library (VOCAL)" must
45 * not be used to endorse or promote products derived from this
46 * software without prior written permission. For written
47 * permission, please contact vocal@vovida.org.
48 *
49 * 4. Products derived from this software may not be called "VOCAL", nor
50 * may "VOCAL" appear in their name, without prior written
51 * permission of Vovida Networks, Inc.
52 *
53 * THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESSED OR IMPLIED
54 * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
55 * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, TITLE AND
56 * NON-INFRINGEMENT ARE DISCLAIMED. IN NO EVENT SHALL VOVIDA
57 * NETWORKS, INC. OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT DAMAGES
58 * IN EXCESS OF $1,000, NOR FOR ANY INDIRECT, INCIDENTAL, SPECIAL,
59 * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
60 * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
61 * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
62 * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
63 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE
64 * USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
65 * DAMAGE.
66 *
67 * ====================================================================
68 *
69 * This software consists of voluntary contributions made by Vovida
70 * Networks, Inc. and many individuals on behalf of Vovida Networks,
71 * Inc. For more information on Vovida Networks, Inc., please see
72 * <http://www.vovida.org/>.
73 *
74 */
A base-class for messages used by applications.
virtual bool process(resip::ApplicationMessage *msg)=0
virtual Worker * clone() const =0
virtual void onStart()
Definition Worker.hxx:17
virtual ~Worker()
Definition Worker.hxx:14
dcm! – add UnusedChecking(_enum) below;