Code:
/ Net / Net / 3.5.50727.3053 / DEVDIV / depot / DevDiv / releases / whidbey / netfxsp / ndp / clr / src / BCL / System / Text / SurrogateEncoder.cs / 1 / SurrogateEncoder.cs
// ==++==
//
// Copyright (c) Microsoft Corporation. All rights reserved.
//
// ==--==
// WARNING:
//
// This is just an IObjectReference proxy for the former V1.1 Surrogate Encoder
// All this does is make an encoder of the correct type, it DOES NOT maintain state.
namespace System.Text
{
using System;
using System.Runtime.Serialization;
using System.Security.Permissions;
/*=================================SurrogateEncoder==================================
** This class is here only to deserialize the SurrogateEncoder class from Everett (V1.1) into
** Appropriate Whidbey (V2.0) objects.
==============================================================================*/
[Serializable()]
internal sealed class SurrogateEncoder : ISerializable, IObjectReference
{
// Might need this when GetRealObjecting
[NonSerialized]
private Encoding realEncoding = null;
// Constructor called by serialization.
internal SurrogateEncoder(SerializationInfo info, StreamingContext context)
{
// Any info?
if (info==null) throw new ArgumentNullException("info");
// All versions have a code page
this.realEncoding = (Encoding)info.GetValue("m_encoding", typeof(Encoding));
}
// Just get it from GetEncoding
public Object GetRealObject(StreamingContext context)
{
// Need to get our Encoding's Encoder
return this.realEncoding.GetEncoder();
}
// ISerializable implementation
[SecurityPermissionAttribute(SecurityAction.LinkDemand, Flags=SecurityPermissionFlag.SerializationFormatter)]
void ISerializable.GetObjectData(SerializationInfo info, StreamingContext context)
{
// We cannot ever call this.
BCLDebug.Assert(false, "Didn't expect to make it to SurrogateEncoder.GetObjectData");
throw new ArgumentException(Environment.GetResourceString("Arg_ExecutionEngineException"));
}
}
}
// File provided for Reference Use Only by Microsoft Corporation (c) 2007.
// ==++==
//
// Copyright (c) Microsoft Corporation. All rights reserved.
//
// ==--==
// WARNING:
//
// This is just an IObjectReference proxy for the former V1.1 Surrogate Encoder
// All this does is make an encoder of the correct type, it DOES NOT maintain state.
namespace System.Text
{
using System;
using System.Runtime.Serialization;
using System.Security.Permissions;
/*=================================SurrogateEncoder==================================
** This class is here only to deserialize the SurrogateEncoder class from Everett (V1.1) into
** Appropriate Whidbey (V2.0) objects.
==============================================================================*/
[Serializable()]
internal sealed class SurrogateEncoder : ISerializable, IObjectReference
{
// Might need this when GetRealObjecting
[NonSerialized]
private Encoding realEncoding = null;
// Constructor called by serialization.
internal SurrogateEncoder(SerializationInfo info, StreamingContext context)
{
// Any info?
if (info==null) throw new ArgumentNullException("info");
// All versions have a code page
this.realEncoding = (Encoding)info.GetValue("m_encoding", typeof(Encoding));
}
// Just get it from GetEncoding
public Object GetRealObject(StreamingContext context)
{
// Need to get our Encoding's Encoder
return this.realEncoding.GetEncoder();
}
// ISerializable implementation
[SecurityPermissionAttribute(SecurityAction.LinkDemand, Flags=SecurityPermissionFlag.SerializationFormatter)]
void ISerializable.GetObjectData(SerializationInfo info, StreamingContext context)
{
// We cannot ever call this.
BCLDebug.Assert(false, "Didn't expect to make it to SurrogateEncoder.GetObjectData");
throw new ArgumentException(Environment.GetResourceString("Arg_ExecutionEngineException"));
}
}
}
// 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
- TemplateControlCodeDomTreeGenerator.cs
- TimeSpanMinutesConverter.cs
- DocumentScope.cs
- GlobalizationAssembly.cs
- Funcletizer.cs
- SlipBehavior.cs
- WebPartChrome.cs
- ConsoleTraceListener.cs
- ApplicationSecurityInfo.cs
- InvokePattern.cs
- Events.cs
- Timer.cs
- EditorZoneDesigner.cs
- ManagementPath.cs
- SortedList.cs
- FontNamesConverter.cs
- IntranetCredentialPolicy.cs
- mediaeventshelper.cs
- sitestring.cs
- EncryptedReference.cs
- PenThread.cs
- SpecularMaterial.cs
- DataGridViewDataConnection.cs
- SizeKeyFrameCollection.cs
- ObjectFactoryCodeDomTreeGenerator.cs
- SmtpReplyReader.cs
- PersonalizablePropertyEntry.cs
- OperandQuery.cs
- DefaultExpressionVisitor.cs
- EntityCodeGenerator.cs
- Switch.cs
- MultipleViewProviderWrapper.cs
- RepeaterCommandEventArgs.cs
- LinqDataSourceInsertEventArgs.cs
- WinCategoryAttribute.cs
- TextEffectResolver.cs
- DeviceContext.cs
- HMACSHA1.cs
- AlternateView.cs
- SapiGrammar.cs
- EventData.cs
- SoapCommonClasses.cs
- ManifestResourceInfo.cs
- EmbeddedMailObjectsCollection.cs
- InputElement.cs
- safesecurityhelperavalon.cs
- DataGridViewRowCancelEventArgs.cs
- GeneralTransform.cs
- EndEvent.cs
- HtmlControlPersistable.cs
- DataTableClearEvent.cs
- SafeReversePInvokeHandle.cs
- ArrangedElement.cs
- Base64Stream.cs
- AbstractDataSvcMapFileLoader.cs
- XmlElementAttributes.cs
- DesignerSelectionListAdapter.cs
- SqlProviderManifest.cs
- InstanceDescriptor.cs
- SuspendDesigner.cs
- FloatAverageAggregationOperator.cs
- DataControlHelper.cs
- AsyncContentLoadedEventArgs.cs
- _emptywebproxy.cs
- TextStore.cs
- FormViewModeEventArgs.cs
- translator.cs
- Item.cs
- OdbcPermission.cs
- XPathArrayIterator.cs
- BoundPropertyEntry.cs
- ComponentFactoryHelpers.cs
- ICspAsymmetricAlgorithm.cs
- WinFormsSecurity.cs
- AppSettingsReader.cs
- RelationshipConverter.cs
- XmlReturnReader.cs
- MetadataItem.cs
- BigInt.cs
- EditorZoneAutoFormat.cs
- StateManagedCollection.cs
- DocumentViewerBaseAutomationPeer.cs
- SqlRecordBuffer.cs
- MatrixKeyFrameCollection.cs
- Baml2006KeyRecord.cs
- DefinitionBase.cs
- WebConfigurationHost.cs
- ValueQuery.cs
- StringBuilder.cs
- SiteMapDataSource.cs
- NullableIntAverageAggregationOperator.cs
- ConfigurationManagerInternal.cs
- NetworkAddressChange.cs
- TransformerInfoCollection.cs
- DockPanel.cs
- AppearanceEditorPart.cs
- SqlColumnizer.cs
- EntityViewGenerationAttribute.cs
- TagPrefixCollection.cs
- ArcSegment.cs