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 Dictionary WrapResponseHeaders(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 Dictionary WrapResponseHeaders(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
- CompModSwitches.cs
- RoutedEventConverter.cs
- IProvider.cs
- SecurityElement.cs
- _SingleItemRequestCache.cs
- WorkflowRuntimeServiceElementCollection.cs
- DuplexChannelFactory.cs
- X509Utils.cs
- Stack.cs
- PublishLicense.cs
- SimpleTypeResolver.cs
- BamlLocalizabilityResolver.cs
- BaseTemplateBuildProvider.cs
- SatelliteContractVersionAttribute.cs
- SearchForVirtualItemEventArgs.cs
- CodeDefaultValueExpression.cs
- EncoderFallback.cs
- TTSEvent.cs
- StringAnimationBase.cs
- QuaternionRotation3D.cs
- XmlMemberMapping.cs
- TypeInfo.cs
- EntityKey.cs
- _NTAuthentication.cs
- BaseValidator.cs
- Transform.cs
- RTLAwareMessageBox.cs
- InstanceStoreQueryResult.cs
- designeractionlistschangedeventargs.cs
- Base64Decoder.cs
- HostingEnvironmentWrapper.cs
- WebRequestModuleElementCollection.cs
- SkipQueryOptionExpression.cs
- AccessViolationException.cs
- WorkflowRequestContext.cs
- RadioButtonList.cs
- LinkButton.cs
- EntityDataReader.cs
- RootProjectionNode.cs
- SqlWebEventProvider.cs
- VersionPair.cs
- MsmqSecureHashAlgorithm.cs
- MemoryStream.cs
- SchemaObjectWriter.cs
- LineUtil.cs
- CapabilitiesUse.cs
- KeysConverter.cs
- DesignColumn.cs
- ContextProperty.cs
- IisTraceListener.cs
- ArrayElementGridEntry.cs
- TransformPatternIdentifiers.cs
- EditorZoneAutoFormat.cs
- ModifierKeysValueSerializer.cs
- TextEditorTyping.cs
- Literal.cs
- TableLayoutPanelCodeDomSerializer.cs
- X509Chain.cs
- CustomTypeDescriptor.cs
- TemplateNameScope.cs
- TrustManager.cs
- TypeValidationEventArgs.cs
- MailHeaderInfo.cs
- MeasurementDCInfo.cs
- MimeParameterWriter.cs
- safelinkcollection.cs
- InProcStateClientManager.cs
- ActiveXHost.cs
- querybuilder.cs
- XmlSchemaObjectCollection.cs
- TimeoutException.cs
- SamlSubject.cs
- RawUIStateInputReport.cs
- ScriptRegistrationManager.cs
- SQLRoleProvider.cs
- AnonymousIdentificationModule.cs
- _CookieModule.cs
- ParserStreamGeometryContext.cs
- HttpModulesSection.cs
- PresentationAppDomainManager.cs
- FixedDocumentPaginator.cs
- HandleRef.cs
- ElementNotAvailableException.cs
- DiagnosticTrace.cs
- ProfilePropertySettings.cs
- Model3DCollection.cs
- ClientRequest.cs
- FilteredAttributeCollection.cs
- TextElementEnumerator.cs
- BindUriHelper.cs
- HtmlForm.cs
- HttpCapabilitiesBase.cs
- BitStream.cs
- XmlNodeReader.cs
- TimeSpanOrInfiniteConverter.cs
- Stack.cs
- PreviousTrackingServiceAttribute.cs
- FunctionNode.cs
- HealthMonitoringSection.cs
- ScrollChangedEventArgs.cs