You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@qpid.apache.org by ac...@apache.org on 2015/06/22 20:08:25 UTC
[7/8] qpid-proton git commit: PROTON-865: Renaming to follow
boost/std library C++ naming conventions.
http://git-wip-us.apache.org/repos/asf/qpid-proton/blob/69783099/proton-c/bindings/cpp/include/proton/Decoder.hpp
----------------------------------------------------------------------
diff --git a/proton-c/bindings/cpp/include/proton/Decoder.hpp b/proton-c/bindings/cpp/include/proton/Decoder.hpp
deleted file mode 100644
index 11cd5fb..0000000
--- a/proton-c/bindings/cpp/include/proton/Decoder.hpp
+++ /dev/null
@@ -1,223 +0,0 @@
-#ifndef DECODER_H
-#define DECODER_H
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-#include "proton/Data.hpp"
-#include "proton/Error.hpp"
-#include "proton/type_traits.hpp"
-#include "proton/types.hpp"
-#include <iosfwd>
-
-namespace proton {
-
-class Value;
-
-/** Raised by Decoder operations on error */
-struct DecodeError : public Error { PN_CPP_EXTERN explicit DecodeError(const std::string&) throw(); };
-
-/**@file
- * Stream-like decoder from AMQP bytes to C++ values.
- * @ingroup cpp
- */
-
-/**
-@ingroup cpp
-
-Stream-like decoder from AMQP bytes to a stream of C++ values.
-
-types.h defines C++ types corresponding to AMQP types.
-
-Decoder operator>> will extract AMQP types into corresponding C++ types, and do
-simple conversions, e.g. from AMQP integer types to corresponding or larger C++
-integer types.
-
-You can require an exact AMQP type using the `as<type>(value)` helper. E.g.
-
- Int i;
- decoder >> as<INT>(i): // Will throw if decoder does not contain an INT
-
-You can also use the `as` helper to extract an AMQP list, array or map into C++ containers.
-
- std::vector<Int> v;
- decoder >> as<LIST>(v); // Extract a list of INT.
-
-AMQP maps can be inserted/extracted to any container with pair<X,Y> as
-value_type, which includes std::map and std::unordered_map but also for
-example std::vector<std::pair<X,Y> >. This allows you to perserve order when
-extracting AMQP maps.
-
-You can also extract container values element-by-element, see the Start class.
-*/
-class Decoder : public virtual Data {
- public:
-
- PN_CPP_EXTERN Decoder();
- PN_CPP_EXTERN ~Decoder();
-
- /** Copy AMQP data from a byte buffer into the Decoder. */
- PN_CPP_EXTERN Decoder(const char* buffer, size_t size);
-
- /** Copy AMQP data from a std::string into the Decoder. */
- PN_CPP_EXTERN Decoder(const std::string&);
-
- /** Decode AMQP data from a byte buffer onto the end of the value stream. */
- PN_CPP_EXTERN void decode(const char* buffer, size_t size);
-
- /** Decode AMQP data from bytes in std::string onto the end of the value stream. */
- PN_CPP_EXTERN void decode(const std::string&);
-
- /** Return true if there are more values to read at the current level. */
- PN_CPP_EXTERN bool more() const;
-
- /** Type of the next value that will be read by operator>>
- *@throw Error if empty().
- */
- PN_CPP_EXTERN TypeId type() const;
-
- /** @name Extract simple types
- * Overloads to extract simple types.
- * @throw Error if the Decoder is empty or the current value has an incompatible type.
- * @{
- */
- PN_CPP_EXTERN friend Decoder& operator>>(Decoder&, Null);
- PN_CPP_EXTERN friend Decoder& operator>>(Decoder&, Bool&);
- PN_CPP_EXTERN friend Decoder& operator>>(Decoder&, Ubyte&);
- PN_CPP_EXTERN friend Decoder& operator>>(Decoder&, Byte&);
- PN_CPP_EXTERN friend Decoder& operator>>(Decoder&, Ushort&);
- PN_CPP_EXTERN friend Decoder& operator>>(Decoder&, Short&);
- PN_CPP_EXTERN friend Decoder& operator>>(Decoder&, Uint&);
- PN_CPP_EXTERN friend Decoder& operator>>(Decoder&, Int&);
- PN_CPP_EXTERN friend Decoder& operator>>(Decoder&, Char&);
- PN_CPP_EXTERN friend Decoder& operator>>(Decoder&, Ulong&);
- PN_CPP_EXTERN friend Decoder& operator>>(Decoder&, Long&);
- PN_CPP_EXTERN friend Decoder& operator>>(Decoder&, Timestamp&);
- PN_CPP_EXTERN friend Decoder& operator>>(Decoder&, Float&);
- PN_CPP_EXTERN friend Decoder& operator>>(Decoder&, Double&);
- PN_CPP_EXTERN friend Decoder& operator>>(Decoder&, Decimal32&);
- PN_CPP_EXTERN friend Decoder& operator>>(Decoder&, Decimal64&);
- PN_CPP_EXTERN friend Decoder& operator>>(Decoder&, Decimal128&);
- PN_CPP_EXTERN friend Decoder& operator>>(Decoder&, Uuid&);
- PN_CPP_EXTERN friend Decoder& operator>>(Decoder&, std::string&);
- PN_CPP_EXTERN friend Decoder& operator>>(Decoder&, Value&);
- ///@}
-
- /** Extract and return a value of type T. */
- template <class T> T get() { T value; *this >> value; return value; }
-
- /** Extract and return a value of type T, as AMQP type. */
- template <class T, TypeId A> T getAs() { T value; *this >> as<A>(value); return value; }
-
- /** Call Decoder::start() in constructor, Decoder::finish in destructor() */
- struct Scope : public Start {
- Decoder& decoder;
- Scope(Decoder& d) : decoder(d) { d >> *this; }
- ~Scope() { decoder >> finish(); }
- };
-
- template <TypeId A, class T> friend Decoder& operator>>(Decoder& d, Ref<T, A> ref) {
- d.checkType(A);
- d >> ref.value;
- return d;
- }
-
- /** start extracting a container value, one of array, list, map, described.
- * The basic pattern is:
- *
- * Start s;
- * decoder >> s;
- * // check s.type() to see if this is an ARRAY, LIST, MAP or DESCRIBED type.
- * if (s.described) extract the descriptor...
- * for (size_t i = 0; i < s.size(); ++i) Extract each element...
- * decoder >> finish();
- *
- * The first value of an ARRAY is a descriptor if Start::descriptor is true,
- * followed by Start::size elemets of type Start::element.
- *
- * A LIST has Start::size elements which may be of mixed type.
- *
- * A MAP has Start::size elements which alternate key, value, key, value...
- * and may be of mixed type.
- *
- * A DESCRIBED contains a descriptor and a single element, so it always has
- * Start::described=true and Start::size=1.
- *
- * Note Scope automatically calls finish() in its destructor.
- *
- *@throw decoder::error if the curent value is not a container type.
- */
- PN_CPP_EXTERN friend Decoder& operator>>(Decoder&, Start&);
-
- /** Finish extracting a container value. */
- PN_CPP_EXTERN friend Decoder& operator>>(Decoder&, Finish);
-
- /** Skip a value */
- PN_CPP_EXTERN friend Decoder& operator>>(Decoder&, Skip);
-
- private:
- template <class T> Decoder& extract(T& value);
- PN_CPP_EXTERN void checkType(TypeId);
-
- friend class Value;
- friend class Encoder;
-};
-
-// operator >> for integer types that are not covered by the standard overrides.
-template <class T>
-typename std::enable_if<IsUnknownInteger<T>::value, Decoder&>::type operator>>(Decoder& d, T& i) {
- typename IntegerType<sizeof(T), std::is_signed<T>::value>::type v;
- d >> v; // Extract as a known integer type
- i = v;
- return d;
-}
-
-template <class T> Decoder& operator>>(Decoder& d, Ref<T, ARRAY> ref) {
- Decoder::Scope s(d);
- if (s.isDescribed) d >> skip();
- ref.value.clear();
- ref.value.resize(s.size);
- for (typename T::iterator i = ref.value.begin(); i != ref.value.end(); ++i) {
- d >> *i;
- }
- return d;
-}
-
-template <class T> Decoder& operator>>(Decoder& d, Ref<T, LIST> ref) {
- Decoder::Scope s(d);
- ref.value.clear();
- ref.value.resize(s.size);
- for (typename T::iterator i = ref.value.begin(); i != ref.value.end(); ++i)
- d >> *i;
- return d;
-}
-
-template <class T> Decoder& operator>>(Decoder& d, Ref<T, MAP> ref) {
- Decoder::Scope m(d);
- ref.value.clear();
- for (size_t i = 0; i < m.size/2; ++i) {
- typename T::key_type k;
- typename T::mapped_type v;
- d >> k >> v;
- ref.value[k] = v;
- }
- return d;
-}
-
-}
-#endif // DECODER_H
http://git-wip-us.apache.org/repos/asf/qpid-proton/blob/69783099/proton-c/bindings/cpp/include/proton/Delivery.hpp
----------------------------------------------------------------------
diff --git a/proton-c/bindings/cpp/include/proton/Delivery.hpp b/proton-c/bindings/cpp/include/proton/Delivery.hpp
deleted file mode 100644
index 110b1ce..0000000
--- a/proton-c/bindings/cpp/include/proton/Delivery.hpp
+++ /dev/null
@@ -1,60 +0,0 @@
-#ifndef PROTON_CPP_DELIVERY_H
-#define PROTON_CPP_DELIVERY_H
-
-/*
- *
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- *
- */
-#include "proton/export.hpp"
-#include "proton/ProtonHandle.hpp"
-
-#include "proton/delivery.h"
-#include "proton/disposition.h"
-
-namespace proton {
-namespace reactor {
-
-class Delivery : public ProtonHandle<pn_delivery_t>
-{
- public:
-
- enum state {
- NONE = 0,
- RECEIVED = PN_RECEIVED,
- ACCEPTED = PN_ACCEPTED,
- REJECTED = PN_REJECTED,
- RELEASED = PN_RELEASED,
- MODIFIED = PN_MODIFIED
- }; // AMQP spec 3.4 Delivery State
-
- PN_CPP_EXTERN Delivery(pn_delivery_t *d);
- PN_CPP_EXTERN Delivery();
- PN_CPP_EXTERN ~Delivery();
- PN_CPP_EXTERN Delivery(const Delivery&);
- PN_CPP_EXTERN Delivery& operator=(const Delivery&);
- PN_CPP_EXTERN bool settled();
- PN_CPP_EXTERN void settle();
- PN_CPP_EXTERN pn_delivery_t *getPnDelivery();
- private:
- friend class ProtonImplRef<Delivery>;
-};
-
-}}
-
-#endif /*!PROTON_CPP_DELIVERY_H*/
http://git-wip-us.apache.org/repos/asf/qpid-proton/blob/69783099/proton-c/bindings/cpp/include/proton/Duration.hpp
----------------------------------------------------------------------
diff --git a/proton-c/bindings/cpp/include/proton/Duration.hpp b/proton-c/bindings/cpp/include/proton/Duration.hpp
deleted file mode 100644
index 596b4d0..0000000
--- a/proton-c/bindings/cpp/include/proton/Duration.hpp
+++ /dev/null
@@ -1,55 +0,0 @@
-#ifndef PROTON_CPP_DURATION_H
-#define PROTON_CPP_DURATION_H
-
-/*
- *
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- *
- */
-
-#include "proton/export.hpp"
-#include "proton/types.hpp"
-
-namespace proton {
-
-/** @ingroup cpp
- * A duration is a time in milliseconds.
- */
-class Duration : public Comparable<Duration>
-{
- public:
- std::uint64_t milliseconds;
- explicit Duration(std::uint64_t ms) : milliseconds(ms) {}
-
- bool operator<(Duration d) { return milliseconds < d.milliseconds; }
- bool operator==(Duration d) { return milliseconds == d.milliseconds; }
-
- PN_CPP_EXTERN static const Duration FOREVER;
- PN_CPP_EXTERN static const Duration IMMEDIATE;
- PN_CPP_EXTERN static const Duration SECOND;
- PN_CPP_EXTERN static const Duration MINUTE;
-};
-
-inline Duration operator*(Duration d, std::uint64_t n) { return Duration(d.milliseconds*n); }
-inline Duration operator*(std::uint64_t n, Duration d) { return d * n; }
-
-inline Timestamp operator+(Timestamp ts, Duration d) { return Timestamp(ts.milliseconds+d.milliseconds); }
-inline Timestamp operator+(Duration d, Timestamp ts) { return ts + d; }
-}
-
-#endif /*!PROTON_CPP_DURATION_H*/
http://git-wip-us.apache.org/repos/asf/qpid-proton/blob/69783099/proton-c/bindings/cpp/include/proton/Encoder.hpp
----------------------------------------------------------------------
diff --git a/proton-c/bindings/cpp/include/proton/Encoder.hpp b/proton-c/bindings/cpp/include/proton/Encoder.hpp
deleted file mode 100644
index 8b2f77c..0000000
--- a/proton-c/bindings/cpp/include/proton/Encoder.hpp
+++ /dev/null
@@ -1,185 +0,0 @@
-#ifndef ENCODER_H
-#define ENCODER_H
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-#include "proton/Data.hpp"
-#include "proton/Error.hpp"
-#include "proton/types.hpp"
-#include "proton/type_traits.hpp"
-#include <iosfwd>
-
-#include <iostream> // FIXME aconway 2015-06-18:
-
-struct pn_data_t;
-
-namespace proton {
-
-class Value;
-
-/**@file
- * Stream-like encoder from C++ values to AMQP bytes.
- * @ingroup cpp
-*/
-
-/** Raised by Encoder operations on error */
-struct EncodeError : public Error { PN_CPP_EXTERN explicit EncodeError(const std::string&) throw(); };
-
-/**
-@ingroup cpp
-
-types.h defines C++ typedefs and types for AMQP each type. These types
-insert as the corresponding AMQP type. Normal C++ conversion rules apply if you
-insert any other type.
-
-C++ containers can be inserted as AMQP containers with the as() helper functions. E.g.
-
- std::vector<Symbol> v; encoder << as<List>(v);
-
-AMQP maps can be inserted/extracted to any container with pair<X,Y> as
-value_type, which includes std::map and std::unordered_map but also for
-example std::vector<std::pair<X,Y> >. This allows you to perserve order when
-extracting AMQP maps.
-
-You can also insert containers element-by-element, see the Start class.
-*/
-class Encoder : public virtual Data {
- public:
- PN_CPP_EXTERN Encoder();
- PN_CPP_EXTERN ~Encoder();
-
- /**
- * Encode the current values into buffer and update size to reflect the number of bytes encoded.
- *
- * Clears the encoder.
- *
- *@return if buffer==0 or size is too small then return false and size to the required size.
- *Otherwise return true and set size to the number of bytes encoded.
- */
- PN_CPP_EXTERN bool encode(char* buffer, size_t& size);
-
- /** Encode the current values into a std::string, resize the string if necessary.
- *
- * Clears the encoder.
- */
- PN_CPP_EXTERN void encode(std::string&);
-
- /** Encode the current values into a std::string. Clears the encoder. */
- PN_CPP_EXTERN std::string encode();
-
- /** @name Insert simple types.
- *@{
- */
- friend PN_CPP_EXTERN Encoder& operator<<(Encoder&, Null);
- friend PN_CPP_EXTERN Encoder& operator<<(Encoder&, Bool);
- friend PN_CPP_EXTERN Encoder& operator<<(Encoder&, Ubyte);
- friend PN_CPP_EXTERN Encoder& operator<<(Encoder&, Byte);
- friend PN_CPP_EXTERN Encoder& operator<<(Encoder&, Ushort);
- friend PN_CPP_EXTERN Encoder& operator<<(Encoder&, Short);
- friend PN_CPP_EXTERN Encoder& operator<<(Encoder&, Uint);
- friend PN_CPP_EXTERN Encoder& operator<<(Encoder&, Int);
- friend PN_CPP_EXTERN Encoder& operator<<(Encoder&, Char);
- friend PN_CPP_EXTERN Encoder& operator<<(Encoder&, Ulong);
- friend PN_CPP_EXTERN Encoder& operator<<(Encoder&, Long);
- friend PN_CPP_EXTERN Encoder& operator<<(Encoder&, Timestamp);
- friend PN_CPP_EXTERN Encoder& operator<<(Encoder&, Float);
- friend PN_CPP_EXTERN Encoder& operator<<(Encoder&, Double);
- friend PN_CPP_EXTERN Encoder& operator<<(Encoder&, Decimal32);
- friend PN_CPP_EXTERN Encoder& operator<<(Encoder&, Decimal64);
- friend PN_CPP_EXTERN Encoder& operator<<(Encoder&, Decimal128);
- friend PN_CPP_EXTERN Encoder& operator<<(Encoder&, Uuid);
- friend PN_CPP_EXTERN Encoder& operator<<(Encoder&, String);
- friend PN_CPP_EXTERN Encoder& operator<<(Encoder&, Symbol);
- friend PN_CPP_EXTERN Encoder& operator<<(Encoder&, Binary);
- friend PN_CPP_EXTERN Encoder& operator<<(Encoder&, const Value&);
- ///@}
-
- /** Start a container type. See the Start class. */
- friend PN_CPP_EXTERN Encoder& operator<<(Encoder&, const Start&);
-
- /** Finish a container type. */
- friend PN_CPP_EXTERN Encoder& operator<<(Encoder& e, Finish);
-
-
- /**@name Insert values returned by the as<TypeId> helper.
- *@{
- */
- template <class T, TypeId A> friend PN_CPP_EXTERN Encoder& operator<<(Encoder&, CRef<T, A>);
- template <class T> friend Encoder& operator<<(Encoder&, CRef<T, ARRAY>);
- template <class T> friend Encoder& operator<<(Encoder&, CRef<T, LIST>);
- template <class T> friend Encoder& operator<<(Encoder&, CRef<T, MAP>);
- // TODO aconway 2015-06-16: DESCRIBED.
- ///@}
-
- /** Copy data from a raw pn_data_t */
- friend PN_CPP_EXTERN Encoder& operator<<(Encoder&, pn_data_t*);
-
- private:
- PN_CPP_EXTERN Encoder(pn_data_t* pd);
-
- friend class Value;
-};
-
-// Need to disambiguate char* conversion to bool and std::string as String.
-inline Encoder& operator<<(Encoder& e, char* s) { return e << String(s); }
-inline Encoder& operator<<(Encoder& e, const char* s) { return e << String(s); }
-inline Encoder& operator<<(Encoder& e, const std::string& s) { return e << String(s); }
-
-// operator << for integer types that are not covered by the standard overrides.
-template <class T>
-typename std::enable_if<IsUnknownInteger<T>::value, Encoder&>::type operator<<(Encoder& e, T i) {
- typename IntegerType<sizeof(T), std::is_signed<T>::value>::type v = i;
- return e << v; // Insert as a known integer type
-}
-
-// TODO aconway 2015-06-16: described array insertion.
-
-template <class T> Encoder& operator<<(Encoder& e, CRef<T, ARRAY> a) {
- e << Start::array(TypeIdOf<typename T::value_type>::value);
- for (typename T::const_iterator i = a.value.begin(); i != a.value.end(); ++i)
- e << *i;
- e << finish();
- return e;
-}
-
-template <class T> Encoder& operator<<(Encoder& e, CRef<T, LIST> l) {
- e << Start::list();
- for (typename T::const_iterator i = l.value.begin(); i != l.value.end(); ++i)
- e << *i;
- e << finish();
- return e;
-}
-
-template <class T> Encoder& operator<<(Encoder& e, CRef<T, MAP> m){
- e << Start::map();
- for (typename T::const_iterator i = m.value.begin(); i != m.value.end(); ++i) {
- e << i->first;
- e << i->second;
- }
- e << finish();
- return e;
-}
-//@internal Convert a Ref to a CRef.
-template <class T, TypeId A> Encoder& operator<<(Encoder& e, Ref<T, A> ref) {
- return e << CRef<T,A>(ref);
-}
-
-
-}
-#endif // ENCODER_H
http://git-wip-us.apache.org/repos/asf/qpid-proton/blob/69783099/proton-c/bindings/cpp/include/proton/Endpoint.hpp
----------------------------------------------------------------------
diff --git a/proton-c/bindings/cpp/include/proton/Endpoint.hpp b/proton-c/bindings/cpp/include/proton/Endpoint.hpp
deleted file mode 100644
index 645ca0f..0000000
--- a/proton-c/bindings/cpp/include/proton/Endpoint.hpp
+++ /dev/null
@@ -1,58 +0,0 @@
-#ifndef PROTON_CPP_ENDPOINT_H
-#define PROTON_CPP_ENDPOINT_H
-
-/*
- *
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- *
- */
-#include "proton/export.hpp"
-#include "proton/connection.h"
-
-namespace proton {
-namespace reactor {
-
-class Handler;
-class Connection;
-class Transport;
-
-class Endpoint
-{
- public:
- enum {
- LOCAL_UNINIT = PN_LOCAL_UNINIT,
- REMOTE_UNINIT = PN_REMOTE_UNINIT,
- LOCAL_ACTIVE = PN_LOCAL_ACTIVE,
- REMOTE_ACTIVE = PN_REMOTE_ACTIVE,
- LOCAL_CLOSED = PN_LOCAL_CLOSED,
- REMOTE_CLOSED = PN_REMOTE_CLOSED
- };
- typedef int State;
-
- // TODO: getCondition, getRemoteCondition, updateCondition, get/setHandler
- virtual PN_CPP_EXTERN Connection &getConnection() = 0;
- Transport PN_CPP_EXTERN &getTransport();
- protected:
- PN_CPP_EXTERN Endpoint();
- PN_CPP_EXTERN ~Endpoint();
-};
-
-
-}}
-
-#endif /*!PROTON_CPP_ENDPOINT_H*/
http://git-wip-us.apache.org/repos/asf/qpid-proton/blob/69783099/proton-c/bindings/cpp/include/proton/Error.hpp
----------------------------------------------------------------------
diff --git a/proton-c/bindings/cpp/include/proton/Error.hpp b/proton-c/bindings/cpp/include/proton/Error.hpp
deleted file mode 100644
index 578c3d6..0000000
--- a/proton-c/bindings/cpp/include/proton/Error.hpp
+++ /dev/null
@@ -1,44 +0,0 @@
-#ifndef PROTON_CPP_EXCEPTIONS_H
-#define PROTON_CPP_EXCEPTIONS_H
-
-/*
- *
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- *
- */
-#include <stdexcept>
-#include <string>
-#include "proton/export.hpp"
-
-namespace proton {
-
-/** @ingroup cpp
- * Functions in the proton namespace throw a subclass of proton::Error on error.
- */
-struct Error : public std::runtime_error { PN_CPP_EXTERN explicit Error(const std::string&) throw(); };
-
-/** Raised if a message is rejected */
-struct MessageReject : public Error { PN_CPP_EXTERN explicit MessageReject(const std::string&) throw(); };
-
-/** Raised if a message is released */
-struct MessageRelease : public Error { PN_CPP_EXTERN explicit MessageRelease(const std::string&) throw(); };
-
-
-}
-
-#endif /*!PROTON_CPP_EXCEPTIONS_H*/
http://git-wip-us.apache.org/repos/asf/qpid-proton/blob/69783099/proton-c/bindings/cpp/include/proton/Event.hpp
----------------------------------------------------------------------
diff --git a/proton-c/bindings/cpp/include/proton/Event.hpp b/proton-c/bindings/cpp/include/proton/Event.hpp
deleted file mode 100644
index 3fbb6a7..0000000
--- a/proton-c/bindings/cpp/include/proton/Event.hpp
+++ /dev/null
@@ -1,59 +0,0 @@
-#ifndef PROTON_CPP_EVENT_H
-#define PROTON_CPP_EVENT_H
-
-/*
- *
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- *
- */
-#include "proton/export.hpp"
-#include "proton/Link.hpp"
-#include "proton/Connection.hpp"
-#include "proton/Message.hpp"
-#include <vector>
-
-
-namespace proton {
-namespace reactor {
-
-class Handler;
-class Container;
-class Connection;
-
-class Event
-{
- public:
- virtual PN_CPP_EXTERN void dispatch(Handler &h) = 0;
- virtual PN_CPP_EXTERN Container &getContainer();
- virtual PN_CPP_EXTERN Connection &getConnection();
- virtual PN_CPP_EXTERN Sender getSender();
- virtual PN_CPP_EXTERN Receiver getReceiver();
- virtual PN_CPP_EXTERN Link getLink();
- virtual PN_CPP_EXTERN Message getMessage();
- virtual PN_CPP_EXTERN void setMessage(Message &);
- virtual PN_CPP_EXTERN ~Event();
- protected:
- PN_CPP_EXTERN Event();
- private:
- Event(const Event&);
- Event& operator=(const Event&);
-};
-
-}}
-
-#endif /*!PROTON_CPP_EVENT_H*/
http://git-wip-us.apache.org/repos/asf/qpid-proton/blob/69783099/proton-c/bindings/cpp/include/proton/Handle.hpp
----------------------------------------------------------------------
diff --git a/proton-c/bindings/cpp/include/proton/Handle.hpp b/proton-c/bindings/cpp/include/proton/Handle.hpp
deleted file mode 100644
index 916fd80..0000000
--- a/proton-c/bindings/cpp/include/proton/Handle.hpp
+++ /dev/null
@@ -1,79 +0,0 @@
-#ifndef PROTON_CPP_HANDLE_H
-#define PROTON_CPP_HANDLE_H
-
-/*
- *
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- *
- */
-
-#include "proton/export.hpp"
-
-namespace proton {
-namespace reactor {
-
-template <class> class PrivateImplRef;
-template <class> class ProtonImplRef;
-
-// FIXME aconway 2015-06-09: don't need handle, get rid of it.
-
-/**
- * A handle is like a pointer: refers to an underlying implementation object.
- * Copying the handle does not copy the object.
- *
- * Handles can be null, like a 0 pointer. Use isValid(), isNull() or the
- * conversion to bool to test for a null handle.
- */
-template <class T> class Handle {
- public:
-
- /**@return true if handle is valid, i.e. not null. */
- bool isValid() const { return impl; }
-
- /**@return true if handle is null. It is an error to call any function on a null handle. */
- bool isNull() const { return !impl; }
-
- /** Conversion to bool supports idiom if (handle) { handle->... } */
- operator bool() const { return impl; }
-
- /** Operator ! supports idiom if (!handle) { do_if_handle_is_null(); } */
- bool operator !() const { return !impl; }
-
- /** Operator == equal if they point to same non-null object*/
- bool operator ==(const Handle<T>& other) const { return impl == other.impl; }
- bool operator !=(const Handle<T>& other) const { return impl != other.impl; }
-
- void swap(Handle<T>& h) { T* t = h.impl; h.impl = impl; impl = t; }
-
- private:
- // Not implemented, subclasses must implement.
- Handle(const Handle&);
- Handle& operator=(const Handle&);
-
- protected:
- typedef T Impl;
- Handle() : impl() {}
-
- mutable Impl* impl;
-
- friend class PrivateImplRef<T>;
-};
-
-}}
-
-#endif /*!PROTON_CPP_HANDLE_H*/
http://git-wip-us.apache.org/repos/asf/qpid-proton/blob/69783099/proton-c/bindings/cpp/include/proton/Handler.hpp
----------------------------------------------------------------------
diff --git a/proton-c/bindings/cpp/include/proton/Handler.hpp b/proton-c/bindings/cpp/include/proton/Handler.hpp
deleted file mode 100644
index f7bb23b..0000000
--- a/proton-c/bindings/cpp/include/proton/Handler.hpp
+++ /dev/null
@@ -1,49 +0,0 @@
-#ifndef PROTON_CPP_HANDLER_H
-#define PROTON_CPP_HANDLER_H
-
-/*
- *
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- *
- */
-#include "proton/export.hpp"
-#include "proton/Event.hpp"
-#include "proton/event.h"
-#include <vector>
-
-namespace proton {
-namespace reactor {
-
-class Handler
-{
- public:
- PN_CPP_EXTERN Handler();
- PN_CPP_EXTERN virtual ~Handler();
-
- PN_CPP_EXTERN virtual void onUnhandled(Event &e);
-
- PN_CPP_EXTERN virtual void addChildHandler(Handler &e);
- PN_CPP_EXTERN std::vector<Handler *>::iterator childHandlersBegin();
- PN_CPP_EXTERN std::vector<Handler *>::iterator childHandlersEnd();
- protected:
- std::vector<Handler *>childHandlers;
-};
-
-}}
-
-#endif /*!PROTON_CPP_HANDLER_H*/
http://git-wip-us.apache.org/repos/asf/qpid-proton/blob/69783099/proton-c/bindings/cpp/include/proton/Link.hpp
----------------------------------------------------------------------
diff --git a/proton-c/bindings/cpp/include/proton/Link.hpp b/proton-c/bindings/cpp/include/proton/Link.hpp
deleted file mode 100644
index ac0e471..0000000
--- a/proton-c/bindings/cpp/include/proton/Link.hpp
+++ /dev/null
@@ -1,69 +0,0 @@
-#ifndef PROTON_CPP_LINK_H
-#define PROTON_CPP_LINK_H
-
-/*
- *
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- *
- */
-#include "proton/export.hpp"
-#include "proton/ProtonHandle.hpp"
-#include "proton/Endpoint.hpp"
-#include "proton/Terminus.hpp"
-#include "proton/types.h"
-#include <string>
-
-struct pn_connection_t;
-
-namespace proton {
-namespace reactor {
-
-class Link : public Endpoint, public ProtonHandle<pn_link_t>
-{
- public:
- PN_CPP_EXTERN Link(pn_link_t *);
- PN_CPP_EXTERN Link();
- PN_CPP_EXTERN ~Link();
- PN_CPP_EXTERN Link(const Link&);
- PN_CPP_EXTERN Link& operator=(const Link&);
- PN_CPP_EXTERN void open();
- PN_CPP_EXTERN void close();
- PN_CPP_EXTERN bool isSender();
- PN_CPP_EXTERN bool isReceiver();
- PN_CPP_EXTERN int getCredit();
- PN_CPP_EXTERN Terminus getSource();
- PN_CPP_EXTERN Terminus getTarget();
- PN_CPP_EXTERN Terminus getRemoteSource();
- PN_CPP_EXTERN Terminus getRemoteTarget();
- PN_CPP_EXTERN std::string getName();
- PN_CPP_EXTERN pn_link_t *getPnLink() const;
- virtual PN_CPP_EXTERN Connection &getConnection();
- PN_CPP_EXTERN Link getNext(Endpoint::State mask);
- protected:
- PN_CPP_EXTERN virtual void verifyType(pn_link_t *l);
- private:
- friend class ProtonImplRef<Link>;
- bool senderLink;
-};
-
-}}
-
-#include "proton/Sender.hpp"
-#include "proton/Receiver.hpp"
-
-#endif /*!PROTON_CPP_LINK_H*/
http://git-wip-us.apache.org/repos/asf/qpid-proton/blob/69783099/proton-c/bindings/cpp/include/proton/Message.hpp
----------------------------------------------------------------------
diff --git a/proton-c/bindings/cpp/include/proton/Message.hpp b/proton-c/bindings/cpp/include/proton/Message.hpp
deleted file mode 100644
index c98dc31..0000000
--- a/proton-c/bindings/cpp/include/proton/Message.hpp
+++ /dev/null
@@ -1,112 +0,0 @@
-#ifndef PROTON_CPP_MESSAGE_H
-#define PROTON_CPP_MESSAGE_H
-
-/*
- *
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- *
- */
-#include "proton/export.hpp"
-#include "proton/ProtonHandle.hpp"
-#include "proton/Value.hpp"
-#include "proton/Message.hpp"
-#include <string>
-
-struct pn_message_t;
-struct pn_data_t;
-
-namespace proton {
-
-// FIXME aconway 2015-06-17: documentation of properties.
-class Message : public reactor::ProtonHandle<pn_message_t>
-{
- public:
- PN_CPP_EXTERN Message();
- PN_CPP_EXTERN Message(pn_message_t *);
- PN_CPP_EXTERN Message(const Message&);
- PN_CPP_EXTERN Message& operator=(const Message&);
- PN_CPP_EXTERN ~Message();
-
- PN_CPP_EXTERN pn_message_t *pnMessage() const;
-
- PN_CPP_EXTERN void id(const Value& id);
- PN_CPP_EXTERN Value id() const;
-
- PN_CPP_EXTERN void user(const std::string &user);
- PN_CPP_EXTERN std::string user() const;
-
- PN_CPP_EXTERN void address(const std::string &addr);
- PN_CPP_EXTERN std::string address() const;
-
- PN_CPP_EXTERN void subject(const std::string &s);
- PN_CPP_EXTERN std::string subject() const;
-
- PN_CPP_EXTERN void replyTo(const std::string &s);
- PN_CPP_EXTERN std::string replyTo() const;
-
- PN_CPP_EXTERN void correlationId(const Value&);
- PN_CPP_EXTERN Value correlationId() const;
-
- PN_CPP_EXTERN void contentType(const std::string &s);
- PN_CPP_EXTERN std::string contentType() const;
-
- PN_CPP_EXTERN void contentEncoding(const std::string &s);
- PN_CPP_EXTERN std::string contentEncoding() const;
-
- PN_CPP_EXTERN void expiry(Timestamp t);
- PN_CPP_EXTERN Timestamp expiry() const;
-
- PN_CPP_EXTERN void creationTime(Timestamp t);
- PN_CPP_EXTERN Timestamp creationTime() const;
-
- PN_CPP_EXTERN void groupId(const std::string &s);
- PN_CPP_EXTERN std::string groupId() const;
-
- PN_CPP_EXTERN void replyToGroupId(const std::string &s);
- PN_CPP_EXTERN std::string replyToGroupId() const;
-
- /** Set the body to an AMQP value. */
- PN_CPP_EXTERN void body(const Value&);
-
- /** Template to convert any type to a Value and set as the body */
- template <class T> void body(const T& v) { body(Value(v)); }
-
- /** Set the body to a sequence of sections containing AMQP values. */
- PN_CPP_EXTERN void body(const Values&);
-
- PN_CPP_EXTERN const Values& body() const;
-
- PN_CPP_EXTERN Values& body(); ///< Allows in-place modification of body sections.
-
- // FIXME aconway 2015-06-17: consistent and flexible treatment of buffers.
- // Allow convenient std::string encoding/decoding (with re-use of existing
- // string capacity) but also need to allow encoding/decoding of non-string
- // buffers. Introduce a buffer type with begin/end pointers?
-
- PN_CPP_EXTERN void encode(std::string &data);
- PN_CPP_EXTERN std::string encode();
- PN_CPP_EXTERN void decode(const std::string &data);
-
- private:
- mutable Values body_;
- friend class reactor::ProtonImplRef<Message>;
-};
-
-}
-
-#endif /*!PROTON_CPP_MESSAGE_H*/
http://git-wip-us.apache.org/repos/asf/qpid-proton/blob/69783099/proton-c/bindings/cpp/include/proton/MessagingAdapter.hpp
----------------------------------------------------------------------
diff --git a/proton-c/bindings/cpp/include/proton/MessagingAdapter.hpp b/proton-c/bindings/cpp/include/proton/MessagingAdapter.hpp
deleted file mode 100644
index 243e049..0000000
--- a/proton-c/bindings/cpp/include/proton/MessagingAdapter.hpp
+++ /dev/null
@@ -1,77 +0,0 @@
-#ifndef PROTON_CPP_MESSAGING_ADAPTER_H
-#define PROTON_CPP_MESSAGING_ADAPTER_H
-
-/*
- *
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- *
- */
-
-#include "proton/ProtonHandler.hpp"
-#include "proton/MessagingHandler.hpp"
-
-#include "proton/MessagingEvent.hpp"
-#include "proton/event.h"
-#include "proton/reactor.h"
-
-namespace proton {
-namespace reactor {
-
-// Combine's Python's: EndpointStateHandler, IncomingMessageHandler, OutgoingMessageHandler
-
-class MessagingAdapter : public MessagingHandler
-{
- public:
- PN_CPP_EXTERN MessagingAdapter(MessagingHandler &delegate);
- PN_CPP_EXTERN virtual ~MessagingAdapter();
- PN_CPP_EXTERN virtual void onReactorInit(Event &e);
- PN_CPP_EXTERN virtual void onLinkFlow(Event &e);
- PN_CPP_EXTERN virtual void onDelivery(Event &e);
- PN_CPP_EXTERN virtual void onUnhandled(Event &e);
- PN_CPP_EXTERN virtual void onConnectionClosed(Event &e);
- PN_CPP_EXTERN virtual void onConnectionClosing(Event &e);
- PN_CPP_EXTERN virtual void onConnectionError(Event &e);
- PN_CPP_EXTERN virtual void onConnectionLocalOpen(Event &e);
- PN_CPP_EXTERN virtual void onConnectionRemoteOpen(Event &e);
- PN_CPP_EXTERN virtual void onConnectionRemoteClose(Event &e);
- PN_CPP_EXTERN virtual void onConnectionOpened(Event &e);
- PN_CPP_EXTERN virtual void onConnectionOpening(Event &e);
- PN_CPP_EXTERN virtual void onSessionClosed(Event &e);
- PN_CPP_EXTERN virtual void onSessionClosing(Event &e);
- PN_CPP_EXTERN virtual void onSessionError(Event &e);
- PN_CPP_EXTERN virtual void onSessionLocalOpen(Event &e);
- PN_CPP_EXTERN virtual void onSessionRemoteOpen(Event &e);
- PN_CPP_EXTERN virtual void onSessionRemoteClose(Event &e);
- PN_CPP_EXTERN virtual void onSessionOpened(Event &e);
- PN_CPP_EXTERN virtual void onSessionOpening(Event &e);
- PN_CPP_EXTERN virtual void onLinkClosed(Event &e);
- PN_CPP_EXTERN virtual void onLinkClosing(Event &e);
- PN_CPP_EXTERN virtual void onLinkError(Event &e);
- PN_CPP_EXTERN virtual void onLinkLocalOpen(Event &e);
- PN_CPP_EXTERN virtual void onLinkRemoteOpen(Event &e);
- PN_CPP_EXTERN virtual void onLinkRemoteClose(Event &e);
- PN_CPP_EXTERN virtual void onLinkOpened(Event &e);
- PN_CPP_EXTERN virtual void onLinkOpening(Event &e);
- PN_CPP_EXTERN virtual void onTransportTailClosed(Event &e);
- private:
- MessagingHandler &delegate; // The handler for generated MessagingEvent's
-};
-
-}}
-
-#endif /*!PROTON_CPP_MESSAGING_ADAPTER_H*/
http://git-wip-us.apache.org/repos/asf/qpid-proton/blob/69783099/proton-c/bindings/cpp/include/proton/MessagingEvent.hpp
----------------------------------------------------------------------
diff --git a/proton-c/bindings/cpp/include/proton/MessagingEvent.hpp b/proton-c/bindings/cpp/include/proton/MessagingEvent.hpp
deleted file mode 100644
index e80f44b..0000000
--- a/proton-c/bindings/cpp/include/proton/MessagingEvent.hpp
+++ /dev/null
@@ -1,99 +0,0 @@
-#ifndef PROTON_CPP_MESSAGINGEVENT_H
-#define PROTON_CPP_MESSAGINGEVENT_H
-
-/*
- *
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- *
- */
-#include "proton/ProtonEvent.hpp"
-#include "proton/Link.hpp"
-
-namespace proton {
-namespace reactor {
-
-class Handler;
-class Container;
-class Connection;
-
-typedef enum {
- PN_MESSAGING_PROTON = 0, // Wrapped pn_event_t
- // Covenience events for C++ MessagingHandlers
- PN_MESSAGING_ABORT,
- PN_MESSAGING_ACCEPTED,
- PN_MESSAGING_COMMIT,
- PN_MESSAGING_CONNECTION_CLOSED,
- PN_MESSAGING_CONNECTION_CLOSING,
- PN_MESSAGING_CONNECTION_ERROR,
- PN_MESSAGING_CONNECTION_OPENED,
- PN_MESSAGING_CONNECTION_OPENING,
- PN_MESSAGING_DISCONNECTED,
- PN_MESSAGING_FETCH,
- PN_MESSAGING_ID_LOADED,
- PN_MESSAGING_LINK_CLOSED,
- PN_MESSAGING_LINK_CLOSING,
- PN_MESSAGING_LINK_OPENED,
- PN_MESSAGING_LINK_OPENING,
- PN_MESSAGING_LINK_ERROR,
- PN_MESSAGING_MESSAGE,
- PN_MESSAGING_QUIT,
- PN_MESSAGING_RECORD_INSERTED,
- PN_MESSAGING_RECORDS_LOADED,
- PN_MESSAGING_REJECTED,
- PN_MESSAGING_RELEASED,
- PN_MESSAGING_REQUEST,
- PN_MESSAGING_RESPONSE,
- PN_MESSAGING_SENDABLE,
- PN_MESSAGING_SESSION_CLOSED,
- PN_MESSAGING_SESSION_CLOSING,
- PN_MESSAGING_SESSION_OPENED,
- PN_MESSAGING_SESSION_OPENING,
- PN_MESSAGING_SESSION_ERROR,
- PN_MESSAGING_SETTLED,
- PN_MESSAGING_START,
- PN_MESSAGING_TIMER,
- PN_MESSAGING_TRANSACTION_ABORTED,
- PN_MESSAGING_TRANSACTION_COMMITTED,
- PN_MESSAGING_TRANSACTION_DECLARED,
- PN_MESSAGING_TRANSPORT_CLOSED
-} MessagingEventType_t;
-
-class MessagingEvent : public ProtonEvent
-{
- public:
- MessagingEvent(pn_event_t *ce, pn_event_type_t t, Container &c);
- MessagingEvent(MessagingEventType_t t, ProtonEvent &parent);
- ~MessagingEvent();
- virtual PN_CPP_EXTERN void dispatch(Handler &h);
- virtual PN_CPP_EXTERN Connection &getConnection();
- virtual PN_CPP_EXTERN Sender getSender();
- virtual PN_CPP_EXTERN Receiver getReceiver();
- virtual PN_CPP_EXTERN Link getLink();
- virtual PN_CPP_EXTERN Message getMessage();
- virtual PN_CPP_EXTERN void setMessage(Message &);
- private:
- MessagingEventType_t messagingType;
- ProtonEvent *parentEvent;
- Message *message;
- MessagingEvent operator=(const MessagingEvent&);
- MessagingEvent(const MessagingEvent&);
-};
-
-}}
-
-#endif /*!PROTON_CPP_MESSAGINGEVENT_H*/
http://git-wip-us.apache.org/repos/asf/qpid-proton/blob/69783099/proton-c/bindings/cpp/include/proton/MessagingHandler.hpp
----------------------------------------------------------------------
diff --git a/proton-c/bindings/cpp/include/proton/MessagingHandler.hpp b/proton-c/bindings/cpp/include/proton/MessagingHandler.hpp
deleted file mode 100644
index ddc8165..0000000
--- a/proton-c/bindings/cpp/include/proton/MessagingHandler.hpp
+++ /dev/null
@@ -1,98 +0,0 @@
-#ifndef PROTON_CPP_MESSAGING_HANDLER_H
-#define PROTON_CPP_MESSAGING_HANDLER_H
-
-/*
- *
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- *
- */
-
-#include "proton/ProtonHandler.hpp"
-#include "proton/Acking.hpp"
-#include "proton/event.h"
-
-namespace proton {
-namespace reactor {
-
-class Event;
-class MessagingAdapter;
-
-class MessagingHandler : public ProtonHandler , public Acking
-{
- public:
- PN_CPP_EXTERN MessagingHandler(int prefetch=10, bool autoAccept=true, bool autoSettle=true,
- bool peerCloseIsError=false);
- PN_CPP_EXTERN virtual ~MessagingHandler();
-
- PN_CPP_EXTERN virtual void onAbort(Event &e);
- PN_CPP_EXTERN virtual void onAccepted(Event &e);
- PN_CPP_EXTERN virtual void onCommit(Event &e);
- PN_CPP_EXTERN virtual void onConnectionClosed(Event &e);
- PN_CPP_EXTERN virtual void onConnectionClosing(Event &e);
- PN_CPP_EXTERN virtual void onConnectionError(Event &e);
- PN_CPP_EXTERN virtual void onConnectionOpening(Event &e);
- PN_CPP_EXTERN virtual void onConnectionOpened(Event &e);
- PN_CPP_EXTERN virtual void onDisconnected(Event &e);
- PN_CPP_EXTERN virtual void onFetch(Event &e);
- PN_CPP_EXTERN virtual void onIdLoaded(Event &e);
- PN_CPP_EXTERN virtual void onLinkClosed(Event &e);
- PN_CPP_EXTERN virtual void onLinkClosing(Event &e);
- PN_CPP_EXTERN virtual void onLinkError(Event &e);
- PN_CPP_EXTERN virtual void onLinkOpened(Event &e);
- PN_CPP_EXTERN virtual void onLinkOpening(Event &e);
- PN_CPP_EXTERN virtual void onMessage(Event &e);
- PN_CPP_EXTERN virtual void onQuit(Event &e);
- PN_CPP_EXTERN virtual void onRecordInserted(Event &e);
- PN_CPP_EXTERN virtual void onRecordsLoaded(Event &e);
- PN_CPP_EXTERN virtual void onRejected(Event &e);
- PN_CPP_EXTERN virtual void onReleased(Event &e);
- PN_CPP_EXTERN virtual void onRequest(Event &e);
- PN_CPP_EXTERN virtual void onResponse(Event &e);
- PN_CPP_EXTERN virtual void onSendable(Event &e);
- PN_CPP_EXTERN virtual void onSessionClosed(Event &e);
- PN_CPP_EXTERN virtual void onSessionClosing(Event &e);
- PN_CPP_EXTERN virtual void onSessionError(Event &e);
- PN_CPP_EXTERN virtual void onSessionOpened(Event &e);
- PN_CPP_EXTERN virtual void onSessionOpening(Event &e);
- PN_CPP_EXTERN virtual void onSettled(Event &e);
- PN_CPP_EXTERN virtual void onStart(Event &e);
- PN_CPP_EXTERN virtual void onTimer(Event &e);
- PN_CPP_EXTERN virtual void onTransactionAborted(Event &e);
- PN_CPP_EXTERN virtual void onTransactionCommitted(Event &e);
- PN_CPP_EXTERN virtual void onTransactionDeclared(Event &e);
- PN_CPP_EXTERN virtual void onTransportClosed(Event &e);
-
- protected:
- int prefetch;
- bool autoAccept;
- bool autoSettle;
- bool peerCloseIsError;
- MessagingAdapter *messagingAdapter;
- Handler *flowController;
- PN_CPP_EXTERN MessagingHandler(
- bool rawHandler, int prefetch=10, bool autoAccept=true,
- bool autoSettle=true, bool peerCloseIsError=false);
- private:
- friend class ContainerImpl;
- friend class MessagingAdapter;
- PN_CPP_EXTERN void createHelpers();
-};
-
-}}
-
-#endif /*!PROTON_CPP_MESSAGING_HANDLER_H*/
http://git-wip-us.apache.org/repos/asf/qpid-proton/blob/69783099/proton-c/bindings/cpp/include/proton/ProtonEvent.hpp
----------------------------------------------------------------------
diff --git a/proton-c/bindings/cpp/include/proton/ProtonEvent.hpp b/proton-c/bindings/cpp/include/proton/ProtonEvent.hpp
deleted file mode 100644
index 0d1d534..0000000
--- a/proton-c/bindings/cpp/include/proton/ProtonEvent.hpp
+++ /dev/null
@@ -1,56 +0,0 @@
-#ifndef PROTON_CPP_PROTONEVENT_H
-#define PROTON_CPP_PROTONEVENT_H
-
-/*
- *
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- *
- */
-#include "proton/Event.hpp"
-#include "proton/Link.hpp"
-
-namespace proton {
-namespace reactor {
-
-class Handler;
-class Container;
-class Connection;
-class Container;
-
-class ProtonEvent : public Event
-{
- public:
- virtual PN_CPP_EXTERN void dispatch(Handler &h);
- virtual PN_CPP_EXTERN Container &getContainer();
- virtual PN_CPP_EXTERN Connection &getConnection();
- virtual PN_CPP_EXTERN Sender getSender();
- virtual PN_CPP_EXTERN Receiver getReceiver();
- virtual PN_CPP_EXTERN Link getLink();
- PN_CPP_EXTERN int getType();
- PN_CPP_EXTERN pn_event_t* getPnEvent();
- protected:
- PN_CPP_EXTERN ProtonEvent(pn_event_t *ce, pn_event_type_t t, Container &c);
- private:
- pn_event_t *pnEvent;
- int type;
- Container &container;
-};
-
-}}
-
-#endif /*!PROTON_CPP_PROTONEVENT_H*/
http://git-wip-us.apache.org/repos/asf/qpid-proton/blob/69783099/proton-c/bindings/cpp/include/proton/ProtonHandle.hpp
----------------------------------------------------------------------
diff --git a/proton-c/bindings/cpp/include/proton/ProtonHandle.hpp b/proton-c/bindings/cpp/include/proton/ProtonHandle.hpp
deleted file mode 100644
index da12c09..0000000
--- a/proton-c/bindings/cpp/include/proton/ProtonHandle.hpp
+++ /dev/null
@@ -1,68 +0,0 @@
-#ifndef PROTON_CPP_PROTONHANDLE_H
-#define PROTON_CPP_PROTONHANDLE_H
-
-/*
- *
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- *
- */
-
-#include "proton/export.hpp"
-
-namespace proton {
-namespace reactor {
-
-template <class> class ProtonImplRef;
-
-/**
- * See Handle.h. Similar but for lightly wrapped Proton pn_object_t targets.
- */
-template <class T> class ProtonHandle {
- public:
-
- /**@return true if handle is valid, i.e. not null. */
- bool isValid() const { return impl; }
-
- /**@return true if handle is null. It is an error to call any function on a null handle. */
- bool isNull() const { return !impl; }
-
- /** Conversion to bool supports idiom if (handle) { handle->... } */
- operator bool() const { return impl; }
-
- /** Operator ! supports idiom if (!handle) { do_if_handle_is_null(); } */
- bool operator !() const { return !impl; }
-
- void swap(ProtonHandle<T>& h) { T* t = h.impl; h.impl = impl; impl = t; }
-
- private:
- // Not implemented, subclasses must implement.
- ProtonHandle(const ProtonHandle&);
- ProtonHandle& operator=(const ProtonHandle&);
-
- protected:
- typedef T Impl;
- ProtonHandle() :impl() {}
-
- mutable Impl* impl;
-
- friend class ProtonImplRef<T>;
-};
-
-}}
-
-#endif /*!PROTON_CPP_PROTONHANDLE_H*/
http://git-wip-us.apache.org/repos/asf/qpid-proton/blob/69783099/proton-c/bindings/cpp/include/proton/ProtonHandler.hpp
----------------------------------------------------------------------
diff --git a/proton-c/bindings/cpp/include/proton/ProtonHandler.hpp b/proton-c/bindings/cpp/include/proton/ProtonHandler.hpp
deleted file mode 100644
index 3768f78..0000000
--- a/proton-c/bindings/cpp/include/proton/ProtonHandler.hpp
+++ /dev/null
@@ -1,82 +0,0 @@
-#ifndef PROTON_CPP_PROTONHANDLER_H
-#define PROTON_CPP_PROTONHANDLER_H
-
-/*
- *
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- *
- */
-#include "proton/Handler.hpp"
-
-namespace proton {
-namespace reactor {
-
-class Event;
-class ProtonEvent;
-
-class ProtonHandler : public Handler
-{
- public:
- PN_CPP_EXTERN ProtonHandler();
- PN_CPP_EXTERN virtual void onReactorInit(Event &e);
- PN_CPP_EXTERN virtual void onReactorQuiesced(Event &e);
- PN_CPP_EXTERN virtual void onReactorFinal(Event &e);
- PN_CPP_EXTERN virtual void onTimerTask(Event &e);
- PN_CPP_EXTERN virtual void onConnectionInit(Event &e);
- PN_CPP_EXTERN virtual void onConnectionBound(Event &e);
- PN_CPP_EXTERN virtual void onConnectionUnbound(Event &e);
- PN_CPP_EXTERN virtual void onConnectionLocalOpen(Event &e);
- PN_CPP_EXTERN virtual void onConnectionLocalClose(Event &e);
- PN_CPP_EXTERN virtual void onConnectionRemoteOpen(Event &e);
- PN_CPP_EXTERN virtual void onConnectionRemoteClose(Event &e);
- PN_CPP_EXTERN virtual void onConnectionFinal(Event &e);
- PN_CPP_EXTERN virtual void onSessionInit(Event &e);
- PN_CPP_EXTERN virtual void onSessionLocalOpen(Event &e);
- PN_CPP_EXTERN virtual void onSessionLocalClose(Event &e);
- PN_CPP_EXTERN virtual void onSessionRemoteOpen(Event &e);
- PN_CPP_EXTERN virtual void onSessionRemoteClose(Event &e);
- PN_CPP_EXTERN virtual void onSessionFinal(Event &e);
- PN_CPP_EXTERN virtual void onLinkInit(Event &e);
- PN_CPP_EXTERN virtual void onLinkLocalOpen(Event &e);
- PN_CPP_EXTERN virtual void onLinkLocalClose(Event &e);
- PN_CPP_EXTERN virtual void onLinkLocalDetach(Event &e);
- PN_CPP_EXTERN virtual void onLinkRemoteOpen(Event &e);
- PN_CPP_EXTERN virtual void onLinkRemoteClose(Event &e);
- PN_CPP_EXTERN virtual void onLinkRemoteDetach(Event &e);
- PN_CPP_EXTERN virtual void onLinkFlow(Event &e);
- PN_CPP_EXTERN virtual void onLinkFinal(Event &e);
- PN_CPP_EXTERN virtual void onDelivery(Event &e);
- PN_CPP_EXTERN virtual void onTransport(Event &e);
- PN_CPP_EXTERN virtual void onTransportError(Event &e);
- PN_CPP_EXTERN virtual void onTransportHeadClosed(Event &e);
- PN_CPP_EXTERN virtual void onTransportTailClosed(Event &e);
- PN_CPP_EXTERN virtual void onTransportClosed(Event &e);
- PN_CPP_EXTERN virtual void onSelectableInit(Event &e);
- PN_CPP_EXTERN virtual void onSelectableUpdated(Event &e);
- PN_CPP_EXTERN virtual void onSelectableReadable(Event &e);
- PN_CPP_EXTERN virtual void onSelectableWritable(Event &e);
- PN_CPP_EXTERN virtual void onSelectableExpired(Event &e);
- PN_CPP_EXTERN virtual void onSelectableError(Event &e);
- PN_CPP_EXTERN virtual void onSelectableFinal(Event &e);
-
- PN_CPP_EXTERN virtual void onUnhandled(Event &e);
-};
-
-}}
-
-#endif /*!PROTON_CPP_PROTONHANDLER_H*/
http://git-wip-us.apache.org/repos/asf/qpid-proton/blob/69783099/proton-c/bindings/cpp/include/proton/Receiver.hpp
----------------------------------------------------------------------
diff --git a/proton-c/bindings/cpp/include/proton/Receiver.hpp b/proton-c/bindings/cpp/include/proton/Receiver.hpp
deleted file mode 100644
index 4f2333e..0000000
--- a/proton-c/bindings/cpp/include/proton/Receiver.hpp
+++ /dev/null
@@ -1,47 +0,0 @@
-#ifndef PROTON_CPP_RECEIVER_H
-#define PROTON_CPP_RECEIVER_H
-
-/*
- *
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- *
- */
-#include "proton/export.hpp"
-#include "proton/Endpoint.hpp"
-#include "proton/Link.hpp"
-#include "proton/types.h"
-#include <string>
-
-struct pn_connection_t;
-
-namespace proton {
-namespace reactor {
-
-class Receiver : public Link
-{
- public:
- PN_CPP_EXTERN Receiver(pn_link_t *lnk);
- PN_CPP_EXTERN Receiver();
- PN_CPP_EXTERN Receiver(const Link& c);
- protected:
- PN_CPP_EXTERN virtual void verifyType(pn_link_t *l);
-};
-
-}}
-
-#endif /*!PROTON_CPP_RECEIVER_H*/
http://git-wip-us.apache.org/repos/asf/qpid-proton/blob/69783099/proton-c/bindings/cpp/include/proton/Sender.hpp
----------------------------------------------------------------------
diff --git a/proton-c/bindings/cpp/include/proton/Sender.hpp b/proton-c/bindings/cpp/include/proton/Sender.hpp
deleted file mode 100644
index 33e02b7..0000000
--- a/proton-c/bindings/cpp/include/proton/Sender.hpp
+++ /dev/null
@@ -1,52 +0,0 @@
-#ifndef PROTON_CPP_SENDER_H
-#define PROTON_CPP_SENDER_H
-
-/*
- *
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- *
- */
-#include "proton/export.hpp"
-#include "proton/Delivery.hpp"
-#include "proton/Link.hpp"
-#include "proton/Message.hpp"
-
-#include "proton/types.h"
-#include <string>
-
-struct pn_connection_t;
-
-namespace proton {
-namespace reactor {
-
-
-class Sender : public Link
-{
- public:
- PN_CPP_EXTERN Sender(pn_link_t *lnk=0);
- PN_CPP_EXTERN Sender(const Link& c);
- PN_CPP_EXTERN Delivery send(Message &m);
-
- protected:
- PN_CPP_EXTERN virtual void verifyType(pn_link_t *l);
-};
-
-
-}}
-
-#endif /*!PROTON_CPP_SENDER_H*/
http://git-wip-us.apache.org/repos/asf/qpid-proton/blob/69783099/proton-c/bindings/cpp/include/proton/Session.hpp
----------------------------------------------------------------------
diff --git a/proton-c/bindings/cpp/include/proton/Session.hpp b/proton-c/bindings/cpp/include/proton/Session.hpp
deleted file mode 100644
index eaae4ce..0000000
--- a/proton-c/bindings/cpp/include/proton/Session.hpp
+++ /dev/null
@@ -1,61 +0,0 @@
-#ifndef PROTON_CPP_SESSION_H
-#define PROTON_CPP_SESSION_H
-
-/*
- *
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- *
- */
-#include "proton/export.hpp"
-#include "proton/Endpoint.hpp"
-#include "proton/Link.hpp"
-
-#include "proton/types.h"
-#include "proton/link.h"
-#include <string>
-
-struct pn_connection_t;
-
-namespace proton {
-namespace reactor {
-
-class Container;
-class Handler;
-class Transport;
-
- class Session : public Endpoint, public ProtonHandle<pn_session_t>
-{
- public:
- PN_CPP_EXTERN Session(pn_session_t *s);
- PN_CPP_EXTERN Session();
- PN_CPP_EXTERN ~Session();
- PN_CPP_EXTERN void open();
- PN_CPP_EXTERN Session(const Session&);
- PN_CPP_EXTERN Session& operator=(const Session&);
- PN_CPP_EXTERN void close();
- PN_CPP_EXTERN pn_session_t *getPnSession();
- PN_CPP_EXTERN virtual Connection &getConnection();
- PN_CPP_EXTERN Receiver createReceiver(std::string name);
- PN_CPP_EXTERN Sender createSender(std::string name);
- private:
- friend class ProtonImplRef<Session>;
-};
-
-}}
-
-#endif /*!PROTON_CPP_SESSION_H*/
http://git-wip-us.apache.org/repos/asf/qpid-proton/blob/69783099/proton-c/bindings/cpp/include/proton/Terminus.hpp
----------------------------------------------------------------------
diff --git a/proton-c/bindings/cpp/include/proton/Terminus.hpp b/proton-c/bindings/cpp/include/proton/Terminus.hpp
deleted file mode 100644
index 91d4f6f..0000000
--- a/proton-c/bindings/cpp/include/proton/Terminus.hpp
+++ /dev/null
@@ -1,81 +0,0 @@
-#ifndef PROTON_CPP_TERMINUS_H
-#define PROTON_CPP_TERMINUS_H
-
-/*
- *
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- *
- */
-#include "proton/export.hpp"
-#include "proton/Link.hpp"
-
-#include "proton/link.h"
-#include <string>
-
-namespace proton {
-namespace reactor {
-
-class Link;
-
-class Terminus : public ProtonHandle<pn_terminus_t>
-{
- enum Type {
- TYPE_UNSPECIFIED = PN_UNSPECIFIED,
- SOURCE = PN_SOURCE,
- TARGET = PN_TARGET,
- COORDINATOR = PN_COORDINATOR
- };
- enum ExpiryPolicy {
- NONDURABLE = PN_NONDURABLE,
- CONFIGURATION = PN_CONFIGURATION,
- DELIVERIES = PN_DELIVERIES
- };
- enum DistributionMode {
- MODE_UNSPECIFIED = PN_DIST_MODE_UNSPECIFIED,
- COPY = PN_DIST_MODE_COPY,
- MOVE = PN_DIST_MODE_MOVE
- };
-
- public:
- PN_CPP_EXTERN Terminus();
- PN_CPP_EXTERN ~Terminus();
- PN_CPP_EXTERN Terminus(const Terminus&);
- PN_CPP_EXTERN Terminus& operator=(const Terminus&);
- PN_CPP_EXTERN pn_terminus_t *getPnTerminus();
- PN_CPP_EXTERN Type getType();
- PN_CPP_EXTERN void setType(Type);
- PN_CPP_EXTERN ExpiryPolicy getExpiryPolicy();
- PN_CPP_EXTERN void setExpiryPolicy(ExpiryPolicy);
- PN_CPP_EXTERN DistributionMode getDistributionMode();
- PN_CPP_EXTERN void setDistributionMode(DistributionMode);
- PN_CPP_EXTERN std::string getAddress();
- PN_CPP_EXTERN void setAddress(std::string &);
- PN_CPP_EXTERN bool isDynamic();
- PN_CPP_EXTERN void setDynamic(bool);
-
- private:
- Link *link;
- PN_CPP_EXTERN Terminus(pn_terminus_t *, Link *);
- friend class Link;
- friend class ProtonImplRef<Terminus>;
-};
-
-
-}}
-
-#endif /*!PROTON_CPP_TERMINUS_H*/
http://git-wip-us.apache.org/repos/asf/qpid-proton/blob/69783099/proton-c/bindings/cpp/include/proton/Transport.hpp
----------------------------------------------------------------------
diff --git a/proton-c/bindings/cpp/include/proton/Transport.hpp b/proton-c/bindings/cpp/include/proton/Transport.hpp
deleted file mode 100644
index 1a8d39c..0000000
--- a/proton-c/bindings/cpp/include/proton/Transport.hpp
+++ /dev/null
@@ -1,48 +0,0 @@
-#ifndef PROTON_CPP_TRANSPORT_H
-#define PROTON_CPP_TRANSPORT_H
-
-/*
- *
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- *
- */
-#include "proton/export.hpp"
-#include "proton/transport.h"
-#include <string>
-
-struct pn_connection_t;
-
-namespace proton {
-namespace reactor {
-
-class Connection;
-
-class Transport
-{
- public:
- PN_CPP_EXTERN Transport();
- PN_CPP_EXTERN ~Transport();
- PN_CPP_EXTERN void bind(Connection &c);
- Connection *connection;
- pn_transport_t *pnTransport;
-};
-
-
-}}
-
-#endif /*!PROTON_CPP_TRANSPORT_H*/
http://git-wip-us.apache.org/repos/asf/qpid-proton/blob/69783099/proton-c/bindings/cpp/include/proton/Value.hpp
----------------------------------------------------------------------
diff --git a/proton-c/bindings/cpp/include/proton/Value.hpp b/proton-c/bindings/cpp/include/proton/Value.hpp
deleted file mode 100644
index 43a5878..0000000
--- a/proton-c/bindings/cpp/include/proton/Value.hpp
+++ /dev/null
@@ -1,104 +0,0 @@
-#ifndef VALUE_H
-#define VALUE_H
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-#include "proton/Values.hpp"
-
-struct pn_data_t;
-
-/**@file
- * Holder for an AMQP value.
- * @ingroup cpp
- */
-namespace proton {
-
-/** Holds a single AMQP value. */
-class Value {
- public:
- PN_CPP_EXTERN Value();
- PN_CPP_EXTERN Value(const Value&);
-
- /** Converting constructor from any settable value */
- template <class T> explicit Value(const T& v);
-
- PN_CPP_EXTERN ~Value();
-
- PN_CPP_EXTERN Value& operator=(const Value&);
-
- /** Copy the first value from a raw pn_data_t. */
- PN_CPP_EXTERN Value& operator=(pn_data_t*);
-
- PN_CPP_EXTERN TypeId type() const;
-
- /** Set the value. */
- template<class T> void set(const T& value);
- /** Get the value. */
- template<class T> void get(T& value) const;
- /** Get the value */
- template<class T> T get() const;
-
- /** Assignment sets the value */
- template<class T> Value& operator=(const T& value);
-
- /** Conversion operator gets the value */
- template<class T> operator T() const;
-
- /** insert a value into an Encoder. */
- PN_CPP_EXTERN friend Encoder& operator<<(Encoder&, const Value&);
-
- /** Extract a value from a decoder. */
- PN_CPP_EXTERN friend Decoder& operator>>(Decoder&, Value&);
-
- /** Human readable format */
- PN_CPP_EXTERN friend std::ostream& operator<<(std::ostream&, const Value&);
-
- PN_CPP_EXTERN bool operator==(const Value&) const;
- PN_CPP_EXTERN bool operator !=(const Value& v) const{ return !(*this == v); }
-
- /** operator < makes Value valid for use as a std::map key. */
- PN_CPP_EXTERN bool operator<(const Value&) const;
- bool operator>(const Value& v) const { return v < *this; }
- bool operator<=(const Value& v) const { return !(*this > v); }
- bool operator>=(const Value& v) const { return !(*this < v); }
-
- private:
- mutable Values values;
-};
-
-template<class T> void Value::set(const T& value) {
- values.clear();
- values << value;
-}
-
-template<class T> void Value::get(T& value) const {
- Values& v = const_cast<Values&>(values);
- v.rewind() >> value;
-}
-
-template<class T> T Value::get() const { T value; get(value); return value; }
-
-template<class T> Value& Value::operator=(const T& value) { set(value); return *this; }
-
-template<class T> Value::operator T() const { return get<T>(); }
-
-template<class T> Value::Value(const T& value) { set(value); }
-}
-
-#endif // VALUE_H
http://git-wip-us.apache.org/repos/asf/qpid-proton/blob/69783099/proton-c/bindings/cpp/include/proton/Values.hpp
----------------------------------------------------------------------
diff --git a/proton-c/bindings/cpp/include/proton/Values.hpp b/proton-c/bindings/cpp/include/proton/Values.hpp
deleted file mode 100644
index 275f905..0000000
--- a/proton-c/bindings/cpp/include/proton/Values.hpp
+++ /dev/null
@@ -1,60 +0,0 @@
-#ifndef VALUES_H
-#define VALUES_H
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-#include <proton/Encoder.hpp>
-#include <proton/Decoder.hpp>
-
-/**@file
- * Holder for a sequence of AMQP values.
- * @ingroup cpp
- */
-
-namespace proton {
-
-
-/** Holds a sequence of AMQP values, allows inserting and extracting.
- *
- * After inserting values, call rewind() to extract them.
- */
-class Values : public Encoder, public Decoder {
- public:
- PN_CPP_EXTERN Values();
- PN_CPP_EXTERN Values(const Values&);
-
- /** Does not take ownership, just a view on the data */
- PN_CPP_EXTERN Values(pn_data_t*);
-
- PN_CPP_EXTERN ~Values();
-
- /** Copy data from another Values */
- PN_CPP_EXTERN Values& operator=(const Values&);
-
- PN_CPP_EXTERN Values& rewind();
-
- friend class Value;
- friend class Message;
-};
-
-PN_CPP_EXTERN std::ostream& operator<<(std::ostream&, const Values&);
-
-}
-
-#endif // VALUES_H
http://git-wip-us.apache.org/repos/asf/qpid-proton/blob/69783099/proton-c/bindings/cpp/include/proton/WaitCondition.hpp
----------------------------------------------------------------------
diff --git a/proton-c/bindings/cpp/include/proton/WaitCondition.hpp b/proton-c/bindings/cpp/include/proton/WaitCondition.hpp
deleted file mode 100644
index c175841..0000000
--- a/proton-c/bindings/cpp/include/proton/WaitCondition.hpp
+++ /dev/null
@@ -1,45 +0,0 @@
-#ifndef PROTON_CPP_WAITCONDITION_H
-#define PROTON_CPP_WAITCONDITION_H
-
-/*
- *
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- *
- */
-#include "proton/export.hpp"
-
-namespace proton {
-namespace reactor {
-
-// Interface class to indicates that an expected contion has been
-// achieved, i.e. for BlockingConnection.wait()
-
-class WaitCondition
-{
- public:
- PN_CPP_EXTERN virtual ~WaitCondition();
-
- // Overide this member function to indicate whether an expected
- // condition is achieved and requires no further waiting.
- virtual bool achieved() = 0;
-};
-
-
-}}
-
-#endif /*!PROTON_CPP_WAITCONDITION_H*/
http://git-wip-us.apache.org/repos/asf/qpid-proton/blob/69783099/proton-c/bindings/cpp/include/proton/acceptor.hpp
----------------------------------------------------------------------
diff --git a/proton-c/bindings/cpp/include/proton/acceptor.hpp b/proton-c/bindings/cpp/include/proton/acceptor.hpp
new file mode 100644
index 0000000..0df9589
--- /dev/null
+++ b/proton-c/bindings/cpp/include/proton/acceptor.hpp
@@ -0,0 +1,49 @@
+#ifndef PROTON_CPP_ACCEPTOR_H
+#define PROTON_CPP_ACCEPTOR_H
+
+/*
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ *
+ */
+
+#include "proton/reactor.h"
+#include "proton/export.hpp"
+#include "proton/proton_handle.hpp"
+
+struct pn_connection_t;
+
+namespace proton {
+
+class acceptor : public proton_handle<pn_acceptor_t>
+{
+ public:
+ PN_CPP_EXTERN acceptor();
+ PN_CPP_EXTERN acceptor(pn_acceptor_t *);
+ PN_CPP_EXTERN acceptor(const acceptor&);
+ PN_CPP_EXTERN acceptor& operator=(const acceptor&);
+ PN_CPP_EXTERN ~acceptor();
+
+ PN_CPP_EXTERN void close();
+ private:
+ friend class proton_impl_ref<acceptor>;
+};
+
+}
+
+#endif /*!PROTON_CPP_ACCEPTOR_H*/
http://git-wip-us.apache.org/repos/asf/qpid-proton/blob/69783099/proton-c/bindings/cpp/include/proton/acking.hpp
----------------------------------------------------------------------
diff --git a/proton-c/bindings/cpp/include/proton/acking.hpp b/proton-c/bindings/cpp/include/proton/acking.hpp
new file mode 100644
index 0000000..edc2d81
--- /dev/null
+++ b/proton-c/bindings/cpp/include/proton/acking.hpp
@@ -0,0 +1,43 @@
+#ifndef PROTON_CPP_ACKING_H
+#define PROTON_CPP_ACKING_H
+
+/*
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ *
+ */
+
+#include "proton/export.hpp"
+#include "proton/delivery.hpp"
+
+namespace proton {
+
+
+class acking
+{
+ public:
+ PN_CPP_EXTERN virtual void accept(delivery &d);
+ PN_CPP_EXTERN virtual void reject(delivery &d);
+ PN_CPP_EXTERN virtual void release(delivery &d, bool delivered=true);
+ PN_CPP_EXTERN virtual void settle(delivery &d, delivery::state s = delivery::REJECTED);
+};
+
+
+}
+
+#endif /*!PROTON_CPP_ACKING_H*/
http://git-wip-us.apache.org/repos/asf/qpid-proton/blob/69783099/proton-c/bindings/cpp/include/proton/blocking_connection.hpp
----------------------------------------------------------------------
diff --git a/proton-c/bindings/cpp/include/proton/blocking_connection.hpp b/proton-c/bindings/cpp/include/proton/blocking_connection.hpp
new file mode 100644
index 0000000..27d7cdd
--- /dev/null
+++ b/proton-c/bindings/cpp/include/proton/blocking_connection.hpp
@@ -0,0 +1,65 @@
+#ifndef PROTON_CPP_BLOCKINGCONNECTION_H
+#define PROTON_CPP_BLOCKINGCONNECTION_H
+
+/*
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ *
+ */
+#include "proton/export.hpp"
+#include "proton/handle.hpp"
+#include "proton/endpoint.hpp"
+#include "proton/container.hpp"
+#include "proton/duration.hpp"
+#include "proton/messaging_handler.hpp"
+#include "proton/types.h"
+#include <string>
+
+struct pn_connection_t;
+
+namespace proton {
+
+class container;
+class blocking_connection_impl;
+class ssl_domain;
+class blocking_sender;
+class wait_condition;
+
+class blocking_connection : public handle<blocking_connection_impl>
+{
+ public:
+ PN_CPP_EXTERN blocking_connection();
+ PN_CPP_EXTERN blocking_connection(const blocking_connection& c);
+ PN_CPP_EXTERN blocking_connection& operator=(const blocking_connection& c);
+ PN_CPP_EXTERN ~blocking_connection();
+
+ PN_CPP_EXTERN blocking_connection(std::string &url, duration = duration::FOREVER,
+ ssl_domain *ssld=0, container *c=0);
+ PN_CPP_EXTERN void close();
+
+ PN_CPP_EXTERN blocking_sender create_sender(std::string &address, handler *h=0);
+ PN_CPP_EXTERN void wait(wait_condition &condition);
+ PN_CPP_EXTERN void wait(wait_condition &condition, std::string &msg, duration timeout=duration::FOREVER);
+ PN_CPP_EXTERN duration timeout();
+ private:
+ friend class private_impl_ref<blocking_connection>;
+};
+
+}
+
+#endif /*!PROTON_CPP_BLOCKINGCONNECTION_H*/
http://git-wip-us.apache.org/repos/asf/qpid-proton/blob/69783099/proton-c/bindings/cpp/include/proton/blocking_link.hpp
----------------------------------------------------------------------
diff --git a/proton-c/bindings/cpp/include/proton/blocking_link.hpp b/proton-c/bindings/cpp/include/proton/blocking_link.hpp
new file mode 100644
index 0000000..c1872a4
--- /dev/null
+++ b/proton-c/bindings/cpp/include/proton/blocking_link.hpp
@@ -0,0 +1,57 @@
+#ifndef PROTON_CPP_BLOCKINGLINK_H
+#define PROTON_CPP_BLOCKINGLINK_H
+
+/*
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ *
+ */
+#include "proton/export.hpp"
+#include "proton/handle.hpp"
+#include "proton/endpoint.hpp"
+#include "proton/container.hpp"
+#include "proton/duration.hpp"
+#include "proton/messaging_handler.hpp"
+#include "proton/blocking_connection.hpp"
+#include "proton/types.h"
+#include <string>
+
+namespace proton {
+
+class blocking_connection;
+
+class blocking_link
+{
+ public:
+ PN_CPP_EXTERN void close();
+ PN_CPP_EXTERN ~blocking_link();
+ protected:
+ PN_CPP_EXTERN blocking_link(blocking_connection *c, pn_link_t *l);
+ PN_CPP_EXTERN void wait_for_closed(duration timeout=duration::SECOND);
+ private:
+ blocking_connection connection_;
+ link link_;
+ PN_CPP_EXTERN void check_closed();
+ friend class blocking_connection;
+ friend class blocking_sender;
+ friend class blocking_receiver;
+};
+
+}
+
+#endif /*!PROTON_CPP_BLOCKINGLINK_H*/
http://git-wip-us.apache.org/repos/asf/qpid-proton/blob/69783099/proton-c/bindings/cpp/include/proton/blocking_sender.hpp
----------------------------------------------------------------------
diff --git a/proton-c/bindings/cpp/include/proton/blocking_sender.hpp b/proton-c/bindings/cpp/include/proton/blocking_sender.hpp
new file mode 100644
index 0000000..0df5a9c
--- /dev/null
+++ b/proton-c/bindings/cpp/include/proton/blocking_sender.hpp
@@ -0,0 +1,52 @@
+#ifndef PROTON_CPP_BLOCKINGSENDER_H
+#define PROTON_CPP_BLOCKINGSENDER_H
+
+/*
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ *
+ */
+#include "proton/export.hpp"
+#include "proton/handle.hpp"
+#include "proton/endpoint.hpp"
+#include "proton/container.hpp"
+#include "proton/duration.hpp"
+#include "proton/messaging_handler.hpp"
+#include "proton/blocking_link.hpp"
+#include "proton/types.h"
+#include "proton/delivery.h"
+#include <string>
+
+namespace proton {
+
+class blocking_connection;
+class blocking_link;
+
+class blocking_sender : public blocking_link
+{
+ public:
+ PN_CPP_EXTERN delivery send(message &msg);
+ PN_CPP_EXTERN delivery send(message &msg, duration timeout);
+ private:
+ PN_CPP_EXTERN blocking_sender(blocking_connection &c, sender &l);
+ friend class blocking_connection;
+};
+
+}
+
+#endif /*!PROTON_CPP_BLOCKINGSENDER_H*/
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@qpid.apache.org
For additional commands, e-mail: commits-help@qpid.apache.org