Apache Qpid - AMQP Messaging for Java JMS, C++, Python, Ruby, and .NET
Apache Qpid Documentation
Main Page
Modules
Namespaces
Classes
Files
File List
File Members
qpid
client
SessionBase_0_10.h
Go to the documentation of this file.
1
#ifndef QPID_CLIENT_SESSIONBASE_H
2
#define QPID_CLIENT_SESSIONBASE_H
3
4
/*
5
*
6
* Licensed to the Apache Software Foundation (ASF) under one
7
* or more contributor license agreements. See the NOTICE file
8
* distributed with this work for additional information
9
* regarding copyright ownership. The ASF licenses this file
10
* to you under the Apache License, Version 2.0 (the
11
* "License"); you may not use this file except in compliance
12
* with the License. You may obtain a copy of the License at
13
*
14
* http://www.apache.org/licenses/LICENSE-2.0
15
*
16
* Unless required by applicable law or agreed to in writing,
17
* software distributed under the License is distributed on an
18
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
19
* KIND, either express or implied. See the License for the
20
* specific language governing permissions and limitations
21
* under the License.
22
*
23
*/
24
25
#include "
qpid/SessionId.h
"
26
#include "
qpid/framing/amqp_structs.h
"
27
#include "
qpid/client/Message.h
"
28
#include "
qpid/client/Completion.h
"
29
#include "
qpid/client/TypedResult.h
"
30
#include "
qpid/client/ClientImportExport.h
"
31
#include <string>
32
33
namespace
qpid {
34
namespace
client
{
35
36
class
Connection;
37
class
SessionImpl;
38
39
using
qpid::framing::Content;
40
using
qpid::framing::FieldTable
;
41
using
qpid::framing::SequenceNumber
;
42
using
qpid::framing::SequenceSet
;
43
using
qpid::framing::SequenceNumberSet;
44
using
qpid::SessionId
;
45
using
qpid::framing::Xid
;
46
48
enum
CreditUnit
{
MESSAGE_CREDIT
=0,
BYTE_CREDIT
=1,
UNLIMITED_CREDIT
=0xFFFFFFFF };
49
56
class
QPID_CLIENT_CLASS_EXTERN
SessionBase_0_10
{
57
public
:
58
60
QPID_CLIENT_EXTERN
SessionBase_0_10
();
61
QPID_CLIENT_EXTERN
~SessionBase_0_10();
62
64
QPID_CLIENT_EXTERN
SessionId
getId()
const
;
65
69
QPID_CLIENT_EXTERN
void
close();
70
80
QPID_CLIENT_EXTERN
void
sync
();
81
83
QPID_CLIENT_EXTERN
uint32_t
timeout(
uint32_t
seconds);
84
86
QPID_CLIENT_EXTERN
void
suspend();
87
89
QPID_CLIENT_EXTERN
void
resume(
Connection
);
90
92
QPID_CLIENT_EXTERN
uint16_t
getChannel()
const
;
93
94
QPID_CLIENT_EXTERN
void
flush();
95
QPID_CLIENT_EXTERN
void
markCompleted(
const
framing::SequenceSet
& ids,
bool
notifyPeer);
96
QPID_CLIENT_EXTERN
void
markCompleted(
const
framing::SequenceNumber
&
id
,
bool
cumulative,
bool
notifyPeer);
97
QPID_CLIENT_EXTERN
void
sendCompletion();
98
99
QPID_CLIENT_EXTERN
bool
isValid()
const
;
100
101
QPID_CLIENT_EXTERN
Connection
getConnection();
102
protected
:
103
boost::shared_ptr<SessionImpl>
impl
;
104
friend
class
SessionBase_0_10Access;
105
};
106
107
}}
// namespace qpid::client
108
109
#endif
Qpid C++ API Reference
Generated on Mon Jul 15 2013 for Qpid C++ Client API by
1.8.3.1