Code:
/ Net / Net / 3.5.50727.3053 / DEVDIV / depot / DevDiv / releases / Orcas / SP / wpf / src / Core / CSharp / MS / Internal / FontCache / ElementFactory.cs / 1 / ElementFactory.cs
//---------------------------------------------------------------------------- // // Copyright (c) Microsoft Corporation. All rights reserved. // //--------------------------------------------------------------------------- using System; using System.Diagnostics; using System.IO; using System.Net; using System.Security; using MS.Internal.PresentationCore; // Since we disable PreSharp warnings in this file, we first need to disable warnings about unknown message numbers and unknown pragmas. #pragma warning disable 1634, 1691 // Disable PreSharp warning about empty catch bodies. // We have many situations in this file where the service needs to robust against external data, // and empty catch bodies allow for uniform error handling code paths. #pragma warning disable 6502 namespace MS.Internal.FontCache { ////// Critical - The class is used by the server to construct font cache elements. /// It is unaware of what method will be used to communicate the data to the server. /// [SecurityCritical(SecurityCriticalScope.Everything)] [FriendAccessAllowed] internal static class ElementFactory { ////// Creates an element from a miss report key. Checks for errors in element construction /// that could arise if either key or font file is corrupt. Returns the element if successful /// or null to indicate an error. /// internal static IFontCacheElement CreateElementFromKey(int type, CheckedPointer key) { try { switch (type) { case 2: return new FamilyCollection(key); case 3: return new FontFaceLayoutInfo(key); case 1: return new GlyphBitmapElement(key); case 4: return new GlyphPathElement(key); default: return null; } } catch (ArgumentOutOfRangeException) { // The cache element key is malformed. } catch (UriFormatException) { // Font file Uri is malformed. } catch (IOException) { // Font file doesn't exist or cannot be read due to an I/O error. } catch (UnauthorizedAccessException) { // Font file cannot be accessed by the service account. } catch (WebException) { //This error can happen if the miss report specifies a web address for the font file. //(This is not a subclass of I/O exception). } return null; } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. //---------------------------------------------------------------------------- // // Copyright (c) Microsoft Corporation. All rights reserved. // //--------------------------------------------------------------------------- using System; using System.Diagnostics; using System.IO; using System.Net; using System.Security; using MS.Internal.PresentationCore; // Since we disable PreSharp warnings in this file, we first need to disable warnings about unknown message numbers and unknown pragmas. #pragma warning disable 1634, 1691 // Disable PreSharp warning about empty catch bodies. // We have many situations in this file where the service needs to robust against external data, // and empty catch bodies allow for uniform error handling code paths. #pragma warning disable 6502 namespace MS.Internal.FontCache { ////// Critical - The class is used by the server to construct font cache elements. /// It is unaware of what method will be used to communicate the data to the server. /// [SecurityCritical(SecurityCriticalScope.Everything)] [FriendAccessAllowed] internal static class ElementFactory { ////// Creates an element from a miss report key. Checks for errors in element construction /// that could arise if either key or font file is corrupt. Returns the element if successful /// or null to indicate an error. /// internal static IFontCacheElement CreateElementFromKey(int type, CheckedPointer key) { try { switch (type) { case 2: return new FamilyCollection(key); case 3: return new FontFaceLayoutInfo(key); case 1: return new GlyphBitmapElement(key); case 4: return new GlyphPathElement(key); default: return null; } } catch (ArgumentOutOfRangeException) { // The cache element key is malformed. } catch (UriFormatException) { // Font file Uri is malformed. } catch (IOException) { // Font file doesn't exist or cannot be read due to an I/O error. } catch (UnauthorizedAccessException) { // Font file cannot be accessed by the service account. } catch (WebException) { //This error can happen if the miss report specifies a web address for the font file. //(This is not a subclass of I/O exception). } return null; } } } // 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
- ProcessStartInfo.cs
- ListBox.cs
- DecimalAverageAggregationOperator.cs
- BitConverter.cs
- PackageRelationship.cs
- WindowsNonControl.cs
- SessionStateUtil.cs
- DiscreteKeyFrames.cs
- PageEventArgs.cs
- HttpListenerException.cs
- ReadOnlyDataSource.cs
- SharingService.cs
- PrimaryKeyTypeConverter.cs
- SrgsItemList.cs
- MenuStrip.cs
- TraceLog.cs
- EventLogHandle.cs
- ObjectTypeMapping.cs
- VisualTarget.cs
- MarkupCompilePass1.cs
- SimpleApplicationHost.cs
- TreeViewHitTestInfo.cs
- WebPartExportVerb.cs
- PrintEvent.cs
- ErrorRuntimeConfig.cs
- ContentHostHelper.cs
- TreeNodeStyleCollectionEditor.cs
- IDictionary.cs
- PromptBuilder.cs
- InternalCache.cs
- GroupBox.cs
- NotSupportedException.cs
- XamlVector3DCollectionSerializer.cs
- CssTextWriter.cs
- FontUnit.cs
- HtmlProps.cs
- XmlCDATASection.cs
- ContentPlaceHolder.cs
- CutCopyPasteHelper.cs
- FixedSOMContainer.cs
- FixUp.cs
- InternalMappingException.cs
- SqlUtils.cs
- DeferredReference.cs
- UnsafeNativeMethods.cs
- DbProviderFactoriesConfigurationHandler.cs
- PathData.cs
- TypeConverterAttribute.cs
- RuleInfoComparer.cs
- ConnectionInterfaceCollection.cs
- XNameConverter.cs
- HtmlInputButton.cs
- SharedPerformanceCounter.cs
- RuntimeUtils.cs
- _SslState.cs
- DataBoundLiteralControl.cs
- DispatchChannelSink.cs
- RenderingBiasValidation.cs
- ControlBindingsConverter.cs
- SqlProviderUtilities.cs
- LoginDesigner.cs
- HMACMD5.cs
- ListViewItem.cs
- FieldDescriptor.cs
- WorkBatch.cs
- RemoteWebConfigurationHostStream.cs
- SqlUnionizer.cs
- DecodeHelper.cs
- Hashtable.cs
- OracleColumn.cs
- WorkflowMarkupElementEventArgs.cs
- ReplacementText.cs
- LabelEditEvent.cs
- TableLayoutCellPaintEventArgs.cs
- DataColumn.cs
- PowerEase.cs
- FixedSOMGroup.cs
- UTF32Encoding.cs
- ClientTarget.cs
- BaseProcessor.cs
- CannotUnloadAppDomainException.cs
- MessageEncodingBindingElement.cs
- ExtensibleClassFactory.cs
- VectorAnimationUsingKeyFrames.cs
- GlyphInfoList.cs
- VisualBasicSettingsHandler.cs
- ServiceProviders.cs
- SchemaImporterExtensionElement.cs
- MessagePartProtectionMode.cs
- WebConfigurationManager.cs
- Icon.cs
- Token.cs
- PointLightBase.cs
- BitConverter.cs
- RegisteredHiddenField.cs
- MD5.cs
- ObjectDataProvider.cs
- ConfigXmlElement.cs
- SQLSingle.cs
- DbConnectionStringCommon.cs