/* * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * * Licensed under the Apache License, Version 2.0 (the "License"). * You may not use this file except in compliance with the License. * A copy of the License is located at * * http://aws.amazon.com/apache2.0 * * or in the "license" file accompanying this file. This file 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. */ using System; using System.Collections.Generic; using System.Xml.Serialization; using System.Text; using System.IO; using Amazon.Runtime; using Amazon.Runtime.Internal; using System.Net; namespace Amazon.S3.Model { /// /// The exception that is thrown when the size of a stream does not match it's expected size. /// #if !NETSTANDARD [Serializable] #endif public class StreamSizeMismatchException : AmazonS3Exception { /// /// Gets and sets ExpectedSize property. /// public long ExpectedSize { get; set; } /// /// Gets and sets ActualSize property. /// public long ActualSize { get; set; } /// /// Construct an instance of StreamSizeMismatchException. /// /// public StreamSizeMismatchException(string message) : base(message) { } /// /// Construct an instance of StreamSizeMismatchException. /// /// /// public StreamSizeMismatchException(string message, Exception innerException) : base(message, innerException) { } /// /// Construct an instance of StreamSizeMismatchException. /// /// /// /// /// /// public StreamSizeMismatchException(string message, long expectedSize, long actualSize, string requestId, string amazonId2) : base(message) { this.ExpectedSize = expectedSize; this.ActualSize = actualSize; this.RequestId = requestId; this.AmazonId2 = amazonId2; } /// /// Construct an instance of StreamSizeMismatchException. /// /// /// /// /// /// /// public StreamSizeMismatchException(string message, long expectedSize, long actualSize, string requestId, string amazonId2, string amazonCfId) : base(message) { this.ExpectedSize = expectedSize; this.ActualSize = actualSize; this.RequestId = requestId; this.AmazonId2 = amazonId2; this.AmazonCloudFrontId = amazonCfId; } /// /// Construct an instance of StreamSizeMismatchException. /// /// /// /// /// /// /// public StreamSizeMismatchException(string message, Exception innerException, long expectedSize, long actualSize, string requestId, string amazonId2) : base(message, innerException) { this.ExpectedSize = expectedSize; this.ActualSize = actualSize; this.RequestId = requestId; this.AmazonId2 = amazonId2; } /// /// Construct an instance of StreamSizeMismatchException. /// /// public StreamSizeMismatchException(Exception innerException) : base(innerException.Message, innerException) { } /// /// Construct an instance of StreamSizeMismatchException. /// /// /// /// /// /// public StreamSizeMismatchException(string message, ErrorType errorType, string errorCode, string requestId, HttpStatusCode statusCode) : base(message, errorType, errorCode, requestId, statusCode) { } /// /// Construct an instance of StreamSizeMismatchException. /// /// /// /// /// /// /// public StreamSizeMismatchException(string message, Exception innerException, ErrorType errorType, string errorCode, string requestId, HttpStatusCode statusCode) : base(message, innerException, errorType, errorCode, requestId, statusCode) { } /// /// Construct an instance of StreamSizeMismatchException. /// /// /// /// /// /// /// /// public StreamSizeMismatchException(string message, Exception innerException, ErrorType errorType, string errorCode, string requestId, HttpStatusCode statusCode, string amazonId2) : base(message, innerException, errorType, errorCode, requestId, statusCode, amazonId2) { } #if !NETSTANDARD /// /// Constructs a new instance of the AmazonServiceException class with serialized data. /// /// The that holds the serialized object data about the exception being thrown. /// The that contains contextual information about the source or destination. /// The parameter is null. /// The class name is null or is zero (0). protected StreamSizeMismatchException(System.Runtime.Serialization.SerializationInfo info, System.Runtime.Serialization.StreamingContext context) : base(info, context) { if (info != null) { this.ExpectedSize = info.GetInt64("ExpectedSize"); this.ActualSize = info.GetInt64("ActualSize"); } } /// /// Sets the with information about the exception. /// /// The that holds the serialized object data about the exception being thrown. /// The that contains contextual information about the source or destination. /// The parameter is a null reference (Nothing in Visual Basic). #if BCL35 [System.Security.Permissions.SecurityPermission( System.Security.Permissions.SecurityAction.LinkDemand, Flags = System.Security.Permissions.SecurityPermissionFlag.SerializationFormatter)] #endif [System.Security.SecurityCritical] public override void GetObjectData(System.Runtime.Serialization.SerializationInfo info, System.Runtime.Serialization.StreamingContext context) { base.GetObjectData(info, context); if (info != null) { info.AddValue("ExpectedSize", this.ExpectedSize); info.AddValue("ActualSize", this.ActualSize); } } #endif } }