| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354 |
- //------------------------------------------------------------
- // Copyright (c) Microsoft Corporation. All rights reserved.
- //------------------------------------------------------------
- namespace System.ServiceModel.Channels
- {
- using System;
- using System.Runtime;
- using System.ServiceModel; // for QuotaExceededException
- using System.ServiceModel.Diagnostics.Application;
- class BufferManagerOutputStream : BufferedOutputStream
- {
- string quotaExceededString;
- public BufferManagerOutputStream(string quotaExceededString)
- : base()
- {
- this.quotaExceededString = quotaExceededString;
- }
- public BufferManagerOutputStream(string quotaExceededString, int maxSize)
- : base(maxSize)
- {
- this.quotaExceededString = quotaExceededString;
- }
- public BufferManagerOutputStream(string quotaExceededString, int initialSize, int maxSize, BufferManager bufferManager)
- : base(initialSize, maxSize, BufferManager.GetInternalBufferManager(bufferManager))
- {
- this.quotaExceededString = quotaExceededString;
- }
- public void Init(int initialSize, int maxSizeQuota, BufferManager bufferManager)
- {
- Init(initialSize, maxSizeQuota, maxSizeQuota, bufferManager);
- }
- public void Init(int initialSize, int maxSizeQuota, int effectiveMaxSize, BufferManager bufferManager)
- {
- base.Reinitialize(initialSize, maxSizeQuota, effectiveMaxSize, BufferManager.GetInternalBufferManager(bufferManager));
- }
- protected override Exception CreateQuotaExceededException(int maxSizeQuota)
- {
- string excMsg = SR.GetString(this.quotaExceededString, maxSizeQuota);
- if (TD.MaxSentMessageSizeExceededIsEnabled())
- {
- TD.MaxSentMessageSizeExceeded(excMsg);
- }
- return new QuotaExceededException(excMsg);
- }
- }
- }
|