diff options
Diffstat (limited to 'cpp/bindings/qpid/dotnet/src/Address.h')
-rw-r--r-- | cpp/bindings/qpid/dotnet/src/Address.h | 21 |
1 files changed, 20 insertions, 1 deletions
diff --git a/cpp/bindings/qpid/dotnet/src/Address.h b/cpp/bindings/qpid/dotnet/src/Address.h index 9f940d67ea..1f2c3fe161 100644 --- a/cpp/bindings/qpid/dotnet/src/Address.h +++ b/cpp/bindings/qpid/dotnet/src/Address.h @@ -65,12 +65,31 @@ namespace Messaging { System::String ^, System::Object ^> ^ options,
System::String ^ type);
+ // copy constructor
+ Address(const Address ^ address);
+
// Create from received address
+ // The new Address object consumes the unmanaged pointer
Address(::qpid::messaging::Address * addrp);
~Address();
!Address();
-// Address(const Address % rhs);
+
+ // assignment operator
+ Address % operator=(const Address % rhs)
+ {
+ if (this == %rhs)
+ {
+ // Self assignment, do nothing
+ }
+ else
+ {
+ delete addressp;
+ addressp = new ::qpid::messaging::Address(
+ *(const_cast<Address %>(rhs).NativeAddress) );
+ }
+ return *this;
+ }
property ::qpid::messaging::Address * NativeAddress
{
|