Apache Qpid - AMQP Messaging for Java JMS, C++, Python, Ruby, and .NET Apache Qpid Documentation
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"
27 #include "qpid/client/Message.h"
28 #include "qpid/client/Completion.h"
31 #include <string>
32 
33 namespace qpid {
34 namespace client {
35 
36 class Connection;
37 class SessionImpl;
38 
39 using qpid::framing::Content;
43 using qpid::framing::SequenceNumberSet;
44 using qpid::SessionId;
45 using qpid::framing::Xid;
46 
49 
57  public:
58 
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
#define QPID_CLIENT_CLASS_EXTERN
CreditUnit
Unit of message credit: messages or bytes.
Base class for handles to an AMQP session.
Represents a connection to an AMQP broker.
Definition: Connection.h:63
4-byte sequence number that 'wraps around'.
Session_0_10 sync(const SessionBase_0_10 &other)
Conversion to Session_0_10 from another session type.
Definition: Session_0_10.h:553
unsigned int uint32_t
Definition: IntegerTypes.h:27
unsigned short uint16_t
Definition: IntegerTypes.h:25
This file was automatically generated from the AMQP specification.
Definition: Address.h:27
#define QPID_CLIENT_EXTERN
A set of name-value pairs.
Definition: FieldTable.h:53
Identifier for a session.
Definition: SessionId.h:42
boost::shared_ptr< SessionImpl > impl

Qpid C++ API Reference
Generated on Fri Mar 6 2015 for Qpid C++ Client API by doxygen 1.8.9.1