Code:
/ Dotnetfx_Vista_SP2 / Dotnetfx_Vista_SP2 / 8.0.50727.4016 / DEVDIV / depot / DevDiv / releases / Orcas / QFE / 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
- OracleParameterBinding.cs
- DbProviderSpecificTypePropertyAttribute.cs
- ColumnBinding.cs
- TypeToken.cs
- PermissionRequestEvidence.cs
- GeneralTransform3DTo2DTo3D.cs
- XXXOnTypeBuilderInstantiation.cs
- AsymmetricKeyExchangeFormatter.cs
- updatecommandorderer.cs
- PartitionedStream.cs
- PersistenceException.cs
- DictionaryGlobals.cs
- RawTextInputReport.cs
- TreeViewAutomationPeer.cs
- ObjectDataProvider.cs
- RedistVersionInfo.cs
- ToolStripSystemRenderer.cs
- OleDbMetaDataFactory.cs
- ListItemCollection.cs
- metadatamappinghashervisitor.cs
- DragCompletedEventArgs.cs
- CompareValidator.cs
- OdbcHandle.cs
- AdCreatedEventArgs.cs
- Certificate.cs
- CqlParser.cs
- SqlDuplicator.cs
- SqlNodeTypeOperators.cs
- CodeLinePragma.cs
- CategoryAttribute.cs
- BindingNavigator.cs
- TraceLevelHelper.cs
- ComponentCollection.cs
- ConstantSlot.cs
- RewritingPass.cs
- PolicyValidationException.cs
- Exception.cs
- PrintEvent.cs
- GuidConverter.cs
- Rotation3DAnimationBase.cs
- FontResourceCache.cs
- DataDocumentXPathNavigator.cs
- MatrixUtil.cs
- UriSection.cs
- FontStyles.cs
- TypeListConverter.cs
- DataGrid.cs
- TracedNativeMethods.cs
- RegexCaptureCollection.cs
- Point3DKeyFrameCollection.cs
- NamespaceDecl.cs
- CriticalFinalizerObject.cs
- State.cs
- OleStrCAMarshaler.cs
- FilterEventArgs.cs
- AspCompat.cs
- TimeSpan.cs
- ExpressionReplacer.cs
- TryExpression.cs
- PropertyGridView.cs
- MD5.cs
- SqlInternalConnectionSmi.cs
- Column.cs
- StateFinalizationActivity.cs
- SourceFileInfo.cs
- LocalServiceSecuritySettings.cs
- ListViewGroupConverter.cs
- IIS7UserPrincipal.cs
- Attributes.cs
- StorageComplexTypeMapping.cs
- GenerateTemporaryTargetAssembly.cs
- SchemaContext.cs
- SafeNativeHandle.cs
- BehaviorEditorPart.cs
- XmlQueryRuntime.cs
- PropertyCollection.cs
- MarshalDirectiveException.cs
- Activity.cs
- webbrowsersite.cs
- TransformValueSerializer.cs
- CatalogZoneAutoFormat.cs
- BaseTemplateCodeDomTreeGenerator.cs
- NextPreviousPagerField.cs
- ButtonBaseAutomationPeer.cs
- ContainerSelectorGlyph.cs
- AspNetSynchronizationContext.cs
- PointIndependentAnimationStorage.cs
- ContextInformation.cs
- XmlRootAttribute.cs
- SimpleRecyclingCache.cs
- TraversalRequest.cs
- RotateTransform3D.cs
- SingleKeyFrameCollection.cs
- ConstraintStruct.cs
- cookie.cs
- SoapMessage.cs
- SqlError.cs
- Region.cs
- DataGridViewEditingControlShowingEventArgs.cs
- FormParameter.cs