Coverage Report

Created: 2025-11-16 06:32

next uncovered line (L), next uncovered region (R), next uncovered branch (B)
/src/resiprocate/resip/stack/TcpConnectState.hxx
Line
Count
Source
1
#ifndef RESIP_TcpConnectState_hxx
2
#define RESIP_TcpConnectState_hxx
3
4
#include <iosfwd>
5
#include "resip/stack/TransactionMessage.hxx"
6
#include "rutil/Data.hxx"
7
#include "rutil/HeapInstanceCounter.hxx"
8
9
namespace resip
10
{
11
12
/** This message is used to indicate to the transaction state that a TCP 
13
    based transport is trying to TCP Connect or has completed a TCP connect. 
14
*/
15
class TcpConnectState : public TransactionMessage
16
{
17
public:
18
    RESIP_HeapCount(TcpConnectState);
19
    enum State
20
    {
21
        ConnectStarted = 0,
22
        Connected = 1
23
    };
24
25
    TcpConnectState(const Data& transactionId, State state);
26
27
    virtual const Data& getTransactionId() const;
28
    virtual bool isClientTransaction() const;
29
30
0
    State getState() const { return mState; }
31
32
    virtual EncodeStream& encodeBrief(EncodeStream& str) const;
33
    virtual EncodeStream& encode(EncodeStream& strm) const;
34
35
private:
36
    Data mTransactionId;
37
    State mState;
38
};
39
40
}
41
42
#endif
43
44
/* ====================================================================
45
 * The Vovida Software License, Version 1.0
46
 *
47
 * Redistribution and use in source and binary forms, with or without
48
 * modification, are permitted provided that the following conditions
49
 * are met:
50
 *
51
 * 1. Redistributions of source code must retain the above copyright
52
 *    notice, this list of conditions and the following disclaimer.
53
 *
54
 * 2. Redistributions in binary form must reproduce the above copyright
55
 *    notice, this list of conditions and the following disclaimer in
56
 *    the documentation and/or other materials provided with the
57
 *    distribution.
58
 *
59
 * 3. The names "VOCAL", "Vovida Open Communication Application Library",
60
 *    and "Vovida Open Communication Application Library (VOCAL)" must
61
 *    not be used to endorse or promote products derived from this
62
 *    software without prior written permission. For written
63
 *    permission, please contact vocal@vovida.org.
64
 *
65
 * 4. Products derived from this software may not be called "VOCAL", nor
66
 *    may "VOCAL" appear in their name, without prior written
67
 *    permission of Vovida Networks, Inc.
68
 *
69
 * THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESSED OR IMPLIED
70
 * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
71
 * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, TITLE AND
72
 * NON-INFRINGEMENT ARE DISCLAIMED.  IN NO EVENT SHALL VOVIDA
73
 * NETWORKS, INC. OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT DAMAGES
74
 * IN EXCESS OF $1,000, NOR FOR ANY INDIRECT, INCIDENTAL, SPECIAL,
75
 * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
76
 * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
77
 * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
78
 * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
79
 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE
80
 * USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
81
 * DAMAGE.
82
 *
83
 * ====================================================================
84
 *
85
 * This software consists of voluntary contributions made by Vovida
86
 * Networks, Inc. and many individuals on behalf of Vovida Networks,
87
 * Inc.  For more information on Vovida Networks, Inc., please see
88
 * <http://www.vovida.org/>.
89
 *
90
 * vi: set shiftwidth=3 expandtab:
91
 */