Author: rgreig
Date: Fri Jan  5 09:00:41 2007
New Revision: 493087

URL: http://svn.apache.org/viewvc?view=rev&rev=493087
Log:
Qpid-246-2 patch applied. Adds serializability to exceptions missed by the 
first patch.

Modified:
    
incubator/qpid/trunk/qpid/dotnet/Qpid.Client/Client/AMQConnectionException.cs
    
incubator/qpid/trunk/qpid/dotnet/Qpid.Client/Client/Message/QpidBytesMessage.cs
    
incubator/qpid/trunk/qpid/dotnet/Qpid.Client/Client/Message/UnexpectedBodyReceivedException.cs
    
incubator/qpid/trunk/qpid/dotnet/Qpid.Client/Client/State/IllegalStateTransitionException.cs
    incubator/qpid/trunk/qpid/dotnet/Qpid.Client/qms/UrlSyntaxException.cs
    incubator/qpid/trunk/qpid/dotnet/Qpid.Codec/ProtocolDecoderException.cs
    incubator/qpid/trunk/qpid/dotnet/Qpid.Codec/ProtocolEncoderException.cs
    incubator/qpid/trunk/qpid/dotnet/Qpid.Common/AMQChannelClosedException.cs
    incubator/qpid/trunk/qpid/dotnet/Qpid.Common/AMQConnectionClosedException.cs
    incubator/qpid/trunk/qpid/dotnet/Qpid.Common/AMQDisconnectedException.cs
    incubator/qpid/trunk/qpid/dotnet/Qpid.Common/AMQUndeliveredException.cs
    
incubator/qpid/trunk/qpid/dotnet/Qpid.Common/Framing/AMQFrameDecodingException.cs
    
incubator/qpid/trunk/qpid/dotnet/Qpid.Common/Framing/AMQProtocolHeaderException.cs
    incubator/qpid/trunk/qpid/dotnet/Qpid.Common/build.xml
    
incubator/qpid/trunk/qpid/dotnet/Qpid.Messaging/ChannelLimitReachedException.cs
    
incubator/qpid/trunk/qpid/dotnet/Qpid.Messaging/MessageNotReadableException.cs
    
incubator/qpid/trunk/qpid/dotnet/Qpid.Messaging/MessageNotWritableException.cs
    
incubator/qpid/trunk/qpid/dotnet/Qpid.Messaging/ResourceAllocationException.cs

Modified: 
incubator/qpid/trunk/qpid/dotnet/Qpid.Client/Client/AMQConnectionException.cs
URL: 
http://svn.apache.org/viewvc/incubator/qpid/trunk/qpid/dotnet/Qpid.Client/Client/AMQConnectionException.cs?view=diff&rev=493087&r1=493086&r2=493087
==============================================================================
--- 
incubator/qpid/trunk/qpid/dotnet/Qpid.Client/Client/AMQConnectionException.cs 
(original)
+++ 
incubator/qpid/trunk/qpid/dotnet/Qpid.Client/Client/AMQConnectionException.cs 
Fri Jan  5 09:00:41 2007
@@ -19,13 +19,20 @@
  *
  */
 using System;
+using System.Runtime.Serialization;
 
 namespace Qpid.Client
 {
+    [Serializable]
     public class AMQConnectionException : AMQException
     {
         public AMQConnectionException(String message, Exception e) : 
base(message, e)
         {
         }
+
+        protected AMQConnectionException(SerializationInfo info, 
StreamingContext ctxt)
+           : base(info, ctxt)
+        {
+        }
     }
-}
\ No newline at end of file
+}

Modified: 
incubator/qpid/trunk/qpid/dotnet/Qpid.Client/Client/Message/QpidBytesMessage.cs
URL: 
http://svn.apache.org/viewvc/incubator/qpid/trunk/qpid/dotnet/Qpid.Client/Client/Message/QpidBytesMessage.cs?view=diff&rev=493087&r1=493086&r2=493087
==============================================================================
--- 
incubator/qpid/trunk/qpid/dotnet/Qpid.Client/Client/Message/QpidBytesMessage.cs 
(original)
+++ 
incubator/qpid/trunk/qpid/dotnet/Qpid.Client/Client/Message/QpidBytesMessage.cs 
Fri Jan  5 09:00:41 2007
@@ -20,6 +20,7 @@
  */
 using System;
 using System.IO;
+using System.Runtime.Serialization;
 using System.Text;
 using Qpid.Framing;
 using Qpid.Messaging;
@@ -27,9 +28,15 @@
 
 namespace Qpid.Client.Message
 {
+    [Serializable]
     class MessageEOFException : QpidException
     {
         public MessageEOFException(string message) : base(message)
+        {
+        }
+
+        protected MessageEOFException(SerializationInfo info, StreamingContext 
ctxt)
+           : base(info, ctxt)
         {
         }
     }

Modified: 
incubator/qpid/trunk/qpid/dotnet/Qpid.Client/Client/Message/UnexpectedBodyReceivedException.cs
URL: 
http://svn.apache.org/viewvc/incubator/qpid/trunk/qpid/dotnet/Qpid.Client/Client/Message/UnexpectedBodyReceivedException.cs?view=diff&rev=493087&r1=493086&r2=493087
==============================================================================
--- 
incubator/qpid/trunk/qpid/dotnet/Qpid.Client/Client/Message/UnexpectedBodyReceivedException.cs
 (original)
+++ 
incubator/qpid/trunk/qpid/dotnet/Qpid.Client/Client/Message/UnexpectedBodyReceivedException.cs
 Fri Jan  5 09:00:41 2007
@@ -19,6 +19,7 @@
  *
  */
 using System;
+using System.Runtime.Serialization;
 using log4net;
 
 namespace Qpid.Client.Message
@@ -27,6 +28,7 @@
     /// Raised when a message body is received unexpectedly by the client. 
This typically occurs when the
     /// length of bodies received does not match with the declared length in 
the content header.
     /// </summary>
+    [Serializable]
     public class UnexpectedBodyReceivedException : AMQException
     {
         public UnexpectedBodyReceivedException(ILog logger, string msg, 
Exception t)
@@ -43,6 +45,12 @@
             : base(logger, errorCode, msg)
         {                        
         }
+
+        protected UnexpectedBodyReceivedException(SerializationInfo info, 
StreamingContext ctxt)
+           : base(info, ctxt)
+        {
+        }
     }
 }
+
 

Modified: 
incubator/qpid/trunk/qpid/dotnet/Qpid.Client/Client/State/IllegalStateTransitionException.cs
URL: 
http://svn.apache.org/viewvc/incubator/qpid/trunk/qpid/dotnet/Qpid.Client/Client/State/IllegalStateTransitionException.cs?view=diff&rev=493087&r1=493086&r2=493087
==============================================================================
--- 
incubator/qpid/trunk/qpid/dotnet/Qpid.Client/Client/State/IllegalStateTransitionException.cs
 (original)
+++ 
incubator/qpid/trunk/qpid/dotnet/Qpid.Client/Client/State/IllegalStateTransitionException.cs
 Fri Jan  5 09:00:41 2007
@@ -19,9 +19,11 @@
  *
  */
 using System;
+using System.Runtime.Serialization;
 
 namespace Qpid.Client.State
 {
+    [Serializable]
     public class IllegalStateTransitionException : AMQException
     {
         private AMQState _originalState;
@@ -36,6 +38,13 @@
             _frame = frame;
         }
 
+        protected IllegalStateTransitionException(SerializationInfo info, 
StreamingContext ctxt)
+           : base(info, ctxt)
+        {
+           _originalState = (AMQState)info.GetValue("OriginalState", 
typeof(AMQState));
+           _frame = (Type)info.GetValue("FrameType", typeof(Type));
+        }
+
         public AMQState OriginalState            
         {
             get
@@ -51,6 +60,14 @@
                 return _frame;
             }
         }
+
+        public override void GetObjectData(SerializationInfo info, 
StreamingContext context)
+        {
+           base.GetObjectData(info, context);
+           info.AddValue("OriginalState", OriginalState);
+           info.AddValue("FrameType", FrameType);
+        }
     }
 }
+
 

Modified: incubator/qpid/trunk/qpid/dotnet/Qpid.Client/qms/UrlSyntaxException.cs
URL: 
http://svn.apache.org/viewvc/incubator/qpid/trunk/qpid/dotnet/Qpid.Client/qms/UrlSyntaxException.cs?view=diff&rev=493087&r1=493086&r2=493087
==============================================================================
--- incubator/qpid/trunk/qpid/dotnet/Qpid.Client/qms/UrlSyntaxException.cs 
(original)
+++ incubator/qpid/trunk/qpid/dotnet/Qpid.Client/qms/UrlSyntaxException.cs Fri 
Jan  5 09:00:41 2007
@@ -19,10 +19,12 @@
  *
  */
 using System;
+using System.Runtime.Serialization;
 using System.Text;
 
 namespace Qpid.Client.qms
 {
+    [Serializable]
     public class UrlSyntaxException : UriFormatException
     {
         private string _url;
@@ -51,6 +53,22 @@
             _url = url;
             _index = index;
             _length = length;
+        }
+
+        protected UrlSyntaxException(SerializationInfo info, StreamingContext 
ctxt)
+           : base(info, ctxt)
+        {
+            _url = info.GetString("Url");
+            _index = info.GetInt32("Index");
+            _length = info.GetInt32("Length");
+        }
+
+        public override void GetObjectData(SerializationInfo info, 
StreamingContext context)
+        {
+            base.GetObjectData(info, context);
+            info.AddValue("Url", _url);
+            info.AddValue("Index", _index);
+            info.AddValue("Length", _length);
         }
 
         private static String getPositionString(int index, int length)

Modified: 
incubator/qpid/trunk/qpid/dotnet/Qpid.Codec/ProtocolDecoderException.cs
URL: 
http://svn.apache.org/viewvc/incubator/qpid/trunk/qpid/dotnet/Qpid.Codec/ProtocolDecoderException.cs?view=diff&rev=493087&r1=493086&r2=493087
==============================================================================
--- incubator/qpid/trunk/qpid/dotnet/Qpid.Codec/ProtocolDecoderException.cs 
(original)
+++ incubator/qpid/trunk/qpid/dotnet/Qpid.Codec/ProtocolDecoderException.cs Fri 
Jan  5 09:00:41 2007
@@ -19,9 +19,11 @@
  *
  */
 using System;
+using System.Runtime.Serialization;
 
 namespace Qpid.Codec
 {
+    [Serializable]
     public class ProtocolDecoderException : ProtocolCodecException
     {
         private string _hexdump;
@@ -37,7 +39,13 @@
         public ProtocolDecoderException(Exception cause) : base(cause)
         {            
         }
-        
+
+        protected ProtocolDecoderException(SerializationInfo info, 
StreamingContext ctxt)
+           : base(info, ctxt)
+        {
+           _hexdump = info.GetString("HexDump");
+        }
+
         public string HexDump
         {
             get
@@ -49,6 +57,13 @@
                 _hexdump = value;
             }
         }
+
+       public override void GetObjectData(SerializationInfo info, 
StreamingContext context)
+       {
+          base.GetObjectData(info, context);
+          info.AddValue("HexDump", _hexdump);
+       }
     }
 }
+
 

Modified: 
incubator/qpid/trunk/qpid/dotnet/Qpid.Codec/ProtocolEncoderException.cs
URL: 
http://svn.apache.org/viewvc/incubator/qpid/trunk/qpid/dotnet/Qpid.Codec/ProtocolEncoderException.cs?view=diff&rev=493087&r1=493086&r2=493087
==============================================================================
--- incubator/qpid/trunk/qpid/dotnet/Qpid.Codec/ProtocolEncoderException.cs 
(original)
+++ incubator/qpid/trunk/qpid/dotnet/Qpid.Codec/ProtocolEncoderException.cs Fri 
Jan  5 09:00:41 2007
@@ -19,9 +19,11 @@
  *
  */
 using System;
+using System.Runtime.Serialization;
 
 namespace Qpid.Codec
 {
+    [Serializable]
     public class ProtocolEncoderException : ProtocolCodecException
     {
         public ProtocolEncoderException() : base()
@@ -35,6 +37,12 @@
         public ProtocolEncoderException(Exception cause) : base(cause)
         {            
         }
+
+        protected ProtocolEncoderException(SerializationInfo info, 
StreamingContext ctxt)
+           : base(info, ctxt)
+        {
+        }
     }
 }
+
 

Modified: 
incubator/qpid/trunk/qpid/dotnet/Qpid.Common/AMQChannelClosedException.cs
URL: 
http://svn.apache.org/viewvc/incubator/qpid/trunk/qpid/dotnet/Qpid.Common/AMQChannelClosedException.cs?view=diff&rev=493087&r1=493086&r2=493087
==============================================================================
--- incubator/qpid/trunk/qpid/dotnet/Qpid.Common/AMQChannelClosedException.cs 
(original)
+++ incubator/qpid/trunk/qpid/dotnet/Qpid.Common/AMQChannelClosedException.cs 
Fri Jan  5 09:00:41 2007
@@ -18,12 +18,22 @@
  * under the License.
  *
  */
+
+using System;
+using System.Runtime.Serialization;
+
 namespace Qpid
 {
+    [Serializable]
     public class AMQChannelClosedException : AMQException
     {
         public AMQChannelClosedException(int errorCode, string message)
             : base(errorCode, message)
+        {
+        }
+
+        protected AMQChannelClosedException(SerializationInfo info, 
StreamingContext ctxt)
+           : base(info, ctxt)
         {
         }
     }

Modified: 
incubator/qpid/trunk/qpid/dotnet/Qpid.Common/AMQConnectionClosedException.cs
URL: 
http://svn.apache.org/viewvc/incubator/qpid/trunk/qpid/dotnet/Qpid.Common/AMQConnectionClosedException.cs?view=diff&rev=493087&r1=493086&r2=493087
==============================================================================
--- 
incubator/qpid/trunk/qpid/dotnet/Qpid.Common/AMQConnectionClosedException.cs 
(original)
+++ 
incubator/qpid/trunk/qpid/dotnet/Qpid.Common/AMQConnectionClosedException.cs 
Fri Jan  5 09:00:41 2007
@@ -18,12 +18,22 @@
  * under the License.
  *
  */
+
+using System;
+using System.Runtime.Serialization;
+
 namespace Qpid
 {
+    [Serializable]
     public class AMQConnectionClosedException : AMQException
     {
         public AMQConnectionClosedException(int errorCode, string message)
             : base(errorCode, message)
+        {
+        }
+
+        protected AMQConnectionClosedException(SerializationInfo info, 
StreamingContext ctxt)
+           : base(info, ctxt)
         {
         }
     }

Modified: 
incubator/qpid/trunk/qpid/dotnet/Qpid.Common/AMQDisconnectedException.cs
URL: 
http://svn.apache.org/viewvc/incubator/qpid/trunk/qpid/dotnet/Qpid.Common/AMQDisconnectedException.cs?view=diff&rev=493087&r1=493086&r2=493087
==============================================================================
--- incubator/qpid/trunk/qpid/dotnet/Qpid.Common/AMQDisconnectedException.cs 
(original)
+++ incubator/qpid/trunk/qpid/dotnet/Qpid.Common/AMQDisconnectedException.cs 
Fri Jan  5 09:00:41 2007
@@ -18,8 +18,13 @@
  * under the License.
  *
  */
+
+using System;
+using System.Runtime.Serialization;
+
 namespace Qpid
 {
+    [Serializable]
     public class AMQDisconnectedException : AMQException
     {
         public AMQDisconnectedException(int errorCode, string message)
@@ -30,6 +35,11 @@
         public AMQDisconnectedException(string message)
             : base(message)
         {            
+        }
+
+        protected AMQDisconnectedException(SerializationInfo info, 
StreamingContext ctxt)
+           : base(info, ctxt)
+        {
         }
     }
 }

Modified: 
incubator/qpid/trunk/qpid/dotnet/Qpid.Common/AMQUndeliveredException.cs
URL: 
http://svn.apache.org/viewvc/incubator/qpid/trunk/qpid/dotnet/Qpid.Common/AMQUndeliveredException.cs?view=diff&rev=493087&r1=493086&r2=493087
==============================================================================
--- incubator/qpid/trunk/qpid/dotnet/Qpid.Common/AMQUndeliveredException.cs 
(original)
+++ incubator/qpid/trunk/qpid/dotnet/Qpid.Common/AMQUndeliveredException.cs Fri 
Jan  5 09:00:41 2007
@@ -18,19 +18,37 @@
  * under the License.
  *
  */
+
+using System;
+using System.Runtime.Serialization;
+
 namespace Qpid
 {
     /// <summary>
     /// Thrown when a message has been bounced by the broker, indicating it 
could not be delivered.
     /// </summary>
+    [Serializable]
     public class AMQUndeliveredException : AMQException
     {
+        // TODO: Warning, no guarantee that the value stored here is 
serializable!
         private object _bounced;
         
         public AMQUndeliveredException(int errorCode, string message, object 
bounced)
             : base(errorCode, message)
         {
             _bounced = bounced;
+        }
+
+        protected AMQUndeliveredException(SerializationInfo info, 
StreamingContext ctxt)
+           : base(info, ctxt)
+        {
+           _bounced = info.GetValue("bounced", typeof(object));
+        }
+
+        public override void GetObjectData(SerializationInfo info, 
StreamingContext context)
+        {
+           base.GetObjectData(info, context);
+           info.AddValue("bounced", _bounced);
         }
 
         public object GetUndeliveredMessage()

Modified: 
incubator/qpid/trunk/qpid/dotnet/Qpid.Common/Framing/AMQFrameDecodingException.cs
URL: 
http://svn.apache.org/viewvc/incubator/qpid/trunk/qpid/dotnet/Qpid.Common/Framing/AMQFrameDecodingException.cs?view=diff&rev=493087&r1=493086&r2=493087
==============================================================================
--- 
incubator/qpid/trunk/qpid/dotnet/Qpid.Common/Framing/AMQFrameDecodingException.cs
 (original)
+++ 
incubator/qpid/trunk/qpid/dotnet/Qpid.Common/Framing/AMQFrameDecodingException.cs
 Fri Jan  5 09:00:41 2007
@@ -19,6 +19,7 @@
  *
  */
 using System;
+using System.Runtime.Serialization;
 using log4net;
 
 namespace Qpid.Framing
@@ -27,6 +28,7 @@
     /// Thrown when a frame cannot be decoded. This generally indicates a 
mismatch between the broker and the
     /// client.
     /// </summary>
+    [Serializable]
     public class AMQFrameDecodingException : AMQException
     {
         public AMQFrameDecodingException(string message)
@@ -47,6 +49,11 @@
         public AMQFrameDecodingException(ILog logger, string message, 
Exception innerException)
             : base(logger, message, innerException)
         {
-        }            
+        }
+
+        protected AMQFrameDecodingException(SerializationInfo info, 
StreamingContext ctxt)
+           : base(info, ctxt)
+        {
+        }
     }
 }

Modified: 
incubator/qpid/trunk/qpid/dotnet/Qpid.Common/Framing/AMQProtocolHeaderException.cs
URL: 
http://svn.apache.org/viewvc/incubator/qpid/trunk/qpid/dotnet/Qpid.Common/Framing/AMQProtocolHeaderException.cs?view=diff&rev=493087&r1=493086&r2=493087
==============================================================================
--- 
incubator/qpid/trunk/qpid/dotnet/Qpid.Common/Framing/AMQProtocolHeaderException.cs
 (original)
+++ 
incubator/qpid/trunk/qpid/dotnet/Qpid.Common/Framing/AMQProtocolHeaderException.cs
 Fri Jan  5 09:00:41 2007
@@ -18,11 +18,21 @@
  * under the License.
  *
  */
+
+using System;
+using System.Runtime.Serialization;
+
 namespace Qpid.Framing
 {
+    [Serializable]
     public class AMQProtocolHeaderException : AMQException
     {
         public AMQProtocolHeaderException(string message) : base(message)
+        {
+        }
+
+        protected AMQProtocolHeaderException(SerializationInfo info, 
StreamingContext ctxt)
+           : base(info, ctxt)
         {
         }
     }

Modified: incubator/qpid/trunk/qpid/dotnet/Qpid.Common/build.xml
URL: 
http://svn.apache.org/viewvc/incubator/qpid/trunk/qpid/dotnet/Qpid.Common/build.xml?view=diff&rev=493087&r1=493086&r2=493087
==============================================================================
--- incubator/qpid/trunk/qpid/dotnet/Qpid.Common/build.xml (original)
+++ incubator/qpid/trunk/qpid/dotnet/Qpid.Common/build.xml Fri Jan  5 09:00:41 
2007
@@ -1,15 +1,9 @@
+<!--
+ This sole purpose of this build script is to generate the framing layer for 
the .net client from the AMQ spec.
+ -->
 <project name="AMQ Dot Net Framing Layer" default="generate">
-    <property name="amq.home" value="../../.."/>
-    <path id="amq.home.path">
-      <pathelement location="${amq.home}"/>
-    </path>
-
-    <pathconvert targetos="unix" property="amq.home.fixed" 
refid="amq.home.path"/>
 
-<!--
-    <property name="amq.asl" 
value="${amq.home.fixed}/amqp.org/specs/amqp.xml"/>
--->
-    <property name="amq.asl" value="amqp.xml"/>
+    <property name="amq.home" value="../.."/>
 
     <property name="stylesheet" value="stylesheets/framing.xsl"/>
     <property name="registry_stylesheet" value="stylesheets/registry.xsl"/>
@@ -20,25 +14,42 @@
     <property name="resources" value="resources"/>
     <property name="base.lib" value="lib"/>
 
-    <path id="project.classpath">
-        <fileset dir="${base.lib}">
-            <include name="**/*.jar"/>
-        </fileset>
+    <path id="amq.home.path">
+      <pathelement location="${amq.home}"/>
     </path>
 
-    <target name="prepare">
-        <mkdir dir="classes"/>
-    </target>
+    <pathconvert targetos="unix" property="amq.home.fixed" 
refid="amq.home.path"/>
 
-    <target name="regenerate" depends="clean, generate" description="generates 
code">
+<!-- Some spec changes break the build, reverting to private copy in 
Qpid.Common temporarily till this is fixed. -->
+<!--    <property name="amq.asl" 
value="${amq.home.fixed}/specs/amqp.0-8.xml"/> -->
+    <property name="amq.asl" value="amqp.xml"/>
+
+    <target name="clean" description="Deletes the generated sources.">
+        <delete>
+            <fileset dir="${generated.src}" includes="**/*"/>
+        </delete>
     </target>
 
-    <target name="check-generate">
-        <uptodate property="generateNotRequired" 
targetfile="${generated.src}/results.out" srcfile="${amq.asl}"/>
+    <!-- 
+      Checks if the generation step needs to be performed. It will be skipped 
if the sources are up to date with the spec and provided that the
+      force flag has not been set. 
+     -->
+    <target name="check-generate" 
+            description="Checks if the generated sources are up-to-date. Use 
-Dforce=true or the 'forcegen' target to force generation.">
+
+        <condition property="generateNotRequired">
+           <and>
+               <uptodate targetfile="${generated.src}/results.out" 
srcfile="${amq.asl}"/>
+               <not><isset property="force"/></not>
+           </and>
+       </condition>
     </target>
 
-    <target name="generate" depends="check-generate" 
unless="${generateNotRequired}" description="generates code">
+    <!-- Applies a transformation to the AMQP spec to generate the framing 
layer. -->
+    <target name="generate" depends="check-generate" 
unless="generateNotRequired" description="generates code">
+
         <mkdir dir="${generated.src}"/>
+
         <java jar="${saxon.jar}" fork="true">
             <arg value="-o"/>
             <arg value="${generated.src}/results.out"/>
@@ -47,6 +58,7 @@
             <arg value="asl_base=${asl.base}"/>
             <arg value="registry_name=MainRegistry"/>
         </java>
+
         <java jar="${saxon.jar}" fork="true">
             <arg value="-o"/>
             <arg value="${generated.src}/registry.out"/>
@@ -55,10 +67,8 @@
         </java>
     </target>
 
-    <target name="clean" depends="prepare" description="deletes any products 
of the compile and generate tasks">
-        <delete>
-            <fileset dir="classes" includes="**/*"/>
-            <fileset dir="${generated.src}" includes="**/*"/>
-        </delete>
+    <!-- Does a clean and forces re-generation of the sources. -->
+    <target name="forcegen" depends="clean, generate" description="Forces 
clean re-generation of the code.">
     </target>
+
 </project>

Modified: 
incubator/qpid/trunk/qpid/dotnet/Qpid.Messaging/ChannelLimitReachedException.cs
URL: 
http://svn.apache.org/viewvc/incubator/qpid/trunk/qpid/dotnet/Qpid.Messaging/ChannelLimitReachedException.cs?view=diff&rev=493087&r1=493086&r2=493087
==============================================================================
--- 
incubator/qpid/trunk/qpid/dotnet/Qpid.Messaging/ChannelLimitReachedException.cs 
(original)
+++ 
incubator/qpid/trunk/qpid/dotnet/Qpid.Messaging/ChannelLimitReachedException.cs 
Fri Jan  5 09:00:41 2007
@@ -18,8 +18,13 @@
  * under the License.
  *
  */
+
+using System;
+using System.Runtime.Serialization;
+
 namespace Qpid.Messaging
 {
+    [Serializable]
     public class ChannelLimitReachedException : ResourceAllocationException
     {
         private long _limit;
@@ -32,12 +37,24 @@
             _limit = limit;
         }
 
+        protected ChannelLimitReachedException(SerializationInfo info, 
StreamingContext ctxt)
+           : base(info, ctxt)
+        {
+           _limit = info.GetInt64("Limit");
+        }
+
         public long Limit
         {
             get
             {
                 return _limit;
             }
+        }
+
+        public override void GetObjectData(SerializationInfo info, 
StreamingContext context)
+        {
+           base.GetObjectData(info, context);
+           info.AddValue("Limit", _limit);
         }
     }
 }

Modified: 
incubator/qpid/trunk/qpid/dotnet/Qpid.Messaging/MessageNotReadableException.cs
URL: 
http://svn.apache.org/viewvc/incubator/qpid/trunk/qpid/dotnet/Qpid.Messaging/MessageNotReadableException.cs?view=diff&rev=493087&r1=493086&r2=493087
==============================================================================
--- 
incubator/qpid/trunk/qpid/dotnet/Qpid.Messaging/MessageNotReadableException.cs 
(original)
+++ 
incubator/qpid/trunk/qpid/dotnet/Qpid.Messaging/MessageNotReadableException.cs 
Fri Jan  5 09:00:41 2007
@@ -18,11 +18,21 @@
  * under the License.
  *
  */
+
+using System;
+using System.Runtime.Serialization;
+
 namespace Qpid.Messaging
 {
+    [Serializable]
     public class MessageNotReadableException : QpidException
     {
         public MessageNotReadableException(string reason) : base(reason)
+        {
+        }
+
+        protected MessageNotReadableException(SerializationInfo info, 
StreamingContext ctxt)
+           : base(info, ctxt)
         {
         }
     }

Modified: 
incubator/qpid/trunk/qpid/dotnet/Qpid.Messaging/MessageNotWritableException.cs
URL: 
http://svn.apache.org/viewvc/incubator/qpid/trunk/qpid/dotnet/Qpid.Messaging/MessageNotWritableException.cs?view=diff&rev=493087&r1=493086&r2=493087
==============================================================================
--- 
incubator/qpid/trunk/qpid/dotnet/Qpid.Messaging/MessageNotWritableException.cs 
(original)
+++ 
incubator/qpid/trunk/qpid/dotnet/Qpid.Messaging/MessageNotWritableException.cs 
Fri Jan  5 09:00:41 2007
@@ -18,11 +18,20 @@
  * under the License.
  *
  */
+using System;
+using System.Runtime.Serialization;
+
 namespace Qpid.Messaging
 {
+    [Serializable]
     public class MessageNotWriteableException : QpidException
     {
         public MessageNotWriteableException(string reason) : base(reason)
+        {
+        }
+
+        protected MessageNotWriteableException(SerializationInfo info, 
StreamingContext ctxt)
+           : base(info, ctxt)
         {
         }
     }

Modified: 
incubator/qpid/trunk/qpid/dotnet/Qpid.Messaging/ResourceAllocationException.cs
URL: 
http://svn.apache.org/viewvc/incubator/qpid/trunk/qpid/dotnet/Qpid.Messaging/ResourceAllocationException.cs?view=diff&rev=493087&r1=493086&r2=493087
==============================================================================
--- 
incubator/qpid/trunk/qpid/dotnet/Qpid.Messaging/ResourceAllocationException.cs 
(original)
+++ 
incubator/qpid/trunk/qpid/dotnet/Qpid.Messaging/ResourceAllocationException.cs 
Fri Jan  5 09:00:41 2007
@@ -18,11 +18,21 @@
  * under the License.
  *
  */
+
+using System;
+using System.Runtime.Serialization;
+
 namespace Qpid.Messaging
 {
+    [Serializable]
     public class ResourceAllocationException : QpidException
     {
         public ResourceAllocationException(string reason) : base(reason)
+        {
+        }
+
+        protected ResourceAllocationException(SerializationInfo info, 
StreamingContext ctxt)
+           : base(info, ctxt)
         {
         }
     }


Reply via email to