Code:
/ Dotnetfx_Win7_3.5.1 / Dotnetfx_Win7_3.5.1 / 3.5.1 / DEVDIV / depot / DevDiv / releases / Orcas / NetFXw7 / ndp / fx / src / DataWeb / Client / System / Data / Services / Client / WebUtil.cs / 1 / WebUtil.cs
//---------------------------------------------------------------------- //// Copyright (c) Microsoft Corporation. All rights reserved. // //// static utility functions // //--------------------------------------------------------------------- namespace System.Data.Services.Client { using System.Collections.Generic; using System.Diagnostics; using System.IO; #if !ASTORIA_LIGHT // Data.Services http stack using System.Net; #else using System.Data.Services.Http; #endif ///web utility functions internal static partial class WebUtil { ///copy from one stream to another /// input stream /// output stream /// reusable buffer ///count of copied bytes internal static long CopyStream(Stream input, Stream output, ref byte[] refBuffer) { Debug.Assert(null != input, "null input stream"); Debug.Assert(null != output, "null output stream"); long total = 0; byte[] buffer = refBuffer; if (null == buffer) { refBuffer = buffer = new byte[1000]; } int count = 0; while (input.CanRead && (0 < (count = input.Read(buffer, 0, buffer.Length)))) { output.Write(buffer, 0, count); total += count; } return total; } ///get response object from possible WebException /// exception to probe /// http web respose object from exception internal static void GetHttpWebResponse(InvalidOperationException exception, ref HttpWebResponse response) { if (null == response) { WebException webexception = (exception as WebException); if (null != webexception) { response = (HttpWebResponse)webexception.Response; } } } ///is this a success status code /// status code ///true if status is between 200-299 internal static bool SuccessStatusCode(HttpStatusCode status) { return (200 <= (int)status && (int)status < 300); } ////// turn the response object headers into a dictionary /// /// response ///dictionary internal static DictionaryWrapResponseHeaders(HttpWebResponse response) { Dictionary headers = new Dictionary (); if (null != response) { foreach (string name in response.Headers.AllKeys) { headers.Add(name, response.Headers[name]); } } return headers; } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. //---------------------------------------------------------------------- // // Copyright (c) Microsoft Corporation. All rights reserved. // //// static utility functions // //--------------------------------------------------------------------- namespace System.Data.Services.Client { using System.Collections.Generic; using System.Diagnostics; using System.IO; #if !ASTORIA_LIGHT // Data.Services http stack using System.Net; #else using System.Data.Services.Http; #endif ///web utility functions internal static partial class WebUtil { ///copy from one stream to another /// input stream /// output stream /// reusable buffer ///count of copied bytes internal static long CopyStream(Stream input, Stream output, ref byte[] refBuffer) { Debug.Assert(null != input, "null input stream"); Debug.Assert(null != output, "null output stream"); long total = 0; byte[] buffer = refBuffer; if (null == buffer) { refBuffer = buffer = new byte[1000]; } int count = 0; while (input.CanRead && (0 < (count = input.Read(buffer, 0, buffer.Length)))) { output.Write(buffer, 0, count); total += count; } return total; } ///get response object from possible WebException /// exception to probe /// http web respose object from exception internal static void GetHttpWebResponse(InvalidOperationException exception, ref HttpWebResponse response) { if (null == response) { WebException webexception = (exception as WebException); if (null != webexception) { response = (HttpWebResponse)webexception.Response; } } } ///is this a success status code /// status code ///true if status is between 200-299 internal static bool SuccessStatusCode(HttpStatusCode status) { return (200 <= (int)status && (int)status < 300); } ////// turn the response object headers into a dictionary /// /// response ///dictionary internal static DictionaryWrapResponseHeaders(HttpWebResponse response) { Dictionary headers = new Dictionary (); if (null != response) { foreach (string name in response.Headers.AllKeys) { headers.Add(name, response.Headers[name]); } } return headers; } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- DataGridPagerStyle.cs
- FrameworkElement.cs
- ConfigurationValue.cs
- EncoderExceptionFallback.cs
- NotifyCollectionChangedEventArgs.cs
- DataStorage.cs
- HttpListener.cs
- WindowsStartMenu.cs
- EntityParameter.cs
- JsonDataContract.cs
- StyleCollection.cs
- RowVisual.cs
- MarkupCompiler.cs
- XmlWriterSettings.cs
- SafeViewOfFileHandle.cs
- Set.cs
- RectAnimationClockResource.cs
- MouseGesture.cs
- FontCacheUtil.cs
- CategoriesDocumentFormatter.cs
- SoapAttributeOverrides.cs
- PatternMatcher.cs
- Rijndael.cs
- Point3DCollectionValueSerializer.cs
- LocatorBase.cs
- DesignerListAdapter.cs
- DocumentGridPage.cs
- MultilineStringConverter.cs
- SqlMethodTransformer.cs
- DataErrorValidationRule.cs
- xmlformatgeneratorstatics.cs
- ListViewInsertionMark.cs
- ReadWriteSpinLock.cs
- RowParagraph.cs
- OutputCache.cs
- Shape.cs
- SystemWebCachingSectionGroup.cs
- SimpleRecyclingCache.cs
- CatalogZoneBase.cs
- FormatConvertedBitmap.cs
- _ConnectionGroup.cs
- ProvidePropertyAttribute.cs
- LocalizationComments.cs
- ProbeMatches11.cs
- HtmlInputText.cs
- TextElement.cs
- PeerPresenceInfo.cs
- SqlClientFactory.cs
- OpenFileDialog.cs
- CodeMethodReturnStatement.cs
- NegotiateStream.cs
- ServiceModelExtensionCollectionElement.cs
- HtmlElementEventArgs.cs
- EventPropertyMap.cs
- IncrementalCompileAnalyzer.cs
- RowsCopiedEventArgs.cs
- WorkflowDesignerMessageFilter.cs
- LabelTarget.cs
- NumberFormatInfo.cs
- CorrelationToken.cs
- InfoCardKeyedHashAlgorithm.cs
- SqlLiftWhereClauses.cs
- BaseParaClient.cs
- CachedPathData.cs
- DataTableReaderListener.cs
- SimpleWebHandlerParser.cs
- Instrumentation.cs
- XmlLinkedNode.cs
- InvalidWMPVersionException.cs
- InheritablePropertyChangeInfo.cs
- IOThreadTimer.cs
- PropertyNames.cs
- PasswordTextNavigator.cs
- Object.cs
- ViewStateAttachedPropertyFeature.cs
- SEHException.cs
- HMACSHA512.cs
- PointLight.cs
- DispatcherHooks.cs
- NativeMethods.cs
- OutputCacheSection.cs
- ItemDragEvent.cs
- IgnoreFlushAndCloseStream.cs
- TdsParameterSetter.cs
- SortDescription.cs
- VisualBasicImportReference.cs
- CultureInfoConverter.cs
- Select.cs
- OperationParameterInfo.cs
- StringConcat.cs
- SessionStateSection.cs
- DataFieldCollectionEditor.cs
- SoapMessage.cs
- FrameworkElementFactory.cs
- ComponentRenameEvent.cs
- FileUtil.cs
- PersonalizationStateQuery.cs
- HttpResponse.cs
- xdrvalidator.cs
- DataSetMappper.cs