Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / wpf / src / Base / System / Windows / Markup / ServiceProviders.cs / 1305600 / ServiceProviders.cs
//----------------------------------------------------------------------------
//
// File: ServiceProviders.cs
//
// Description:
// Proivde a implementation for IServiceProvider and method to add services
//
// Copyright (C) 2003 by Microsoft Corporation. All rights reserved.
//
//---------------------------------------------------------------------------
using System;
using System.ComponentModel;
using System.Collections.Generic;
using System.Security.Permissions;
using MS.Internal.WindowsBase;
/////////////////////////////////////////////////////////////////////////////////////////
namespace System.Windows.Markup
{
///
/// Proivde a implementation for IServiceProvider and method to add services
///
/// Restrict public access until M8.2
//CASRemoval:[StrongNameIdentityPermission(SecurityAction.LinkDemand, PublicKey = Microsoft.Internal.BuildInfo.WCP_PUBLIC_KEY_STRING)]
[System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)]
[System.ComponentModel.Browsable(false)]
public class ServiceProviders : IServiceProvider
{
#region Implement IServiceProvider interface
///
/// Implement IServiceProvider.GetSevice
///
///
///
public Object GetService(Type serviceType)
{
if (_objDict.ContainsKey(serviceType))
{
return _objDict[serviceType];
}
return null;
}
#endregion
///
/// Add a new service
///
///
///
public void AddService(Type serviceType, Object service)
{
if (serviceType == null)
{
throw new ArgumentNullException("serviceType");
}
if (service == null)
{
throw new ArgumentNullException("service");
}
if (_objDict.ContainsKey(serviceType) == false)
{
_objDict.Add(serviceType, service);
}
else if (_objDict[serviceType] != service)
{
throw new ArgumentException(SR.Get(SRID.ServiceTypeAlreadyAdded), "serviceType");
}
}
private Dictionary _objDict = new Dictionary();
}
}
// File provided for Reference Use Only by Microsoft Corporation (c) 2007.
// Copyright (c) Microsoft Corporation. All rights reserved.
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- CodeCompiler.cs
- ToolStripItemImageRenderEventArgs.cs
- SetterBaseCollection.cs
- MissingFieldException.cs
- DateTimeUtil.cs
- UInt64Converter.cs
- PackWebResponse.cs
- EventBookmark.cs
- SoapAttributeOverrides.cs
- validationstate.cs
- Parser.cs
- Polygon.cs
- Context.cs
- X509Chain.cs
- FileVersionInfo.cs
- CardSpaceException.cs
- StaticFileHandler.cs
- DesignTimeType.cs
- FontStyleConverter.cs
- ComplexObject.cs
- WebPartTransformer.cs
- VectorCollectionValueSerializer.cs
- GeometryGroup.cs
- TextRange.cs
- ItemsPanelTemplate.cs
- OutKeywords.cs
- TableRowCollection.cs
- TextRunTypographyProperties.cs
- HostSecurityManager.cs
- RecordConverter.cs
- EventDescriptorCollection.cs
- DbProviderFactory.cs
- TypedServiceOperationListItem.cs
- AdornerHitTestResult.cs
- UIElement3DAutomationPeer.cs
- DBPropSet.cs
- HttpWebResponse.cs
- ImpersonationContext.cs
- ACL.cs
- CultureTableRecord.cs
- Track.cs
- ZoneButton.cs
- ApplicationSecurityManager.cs
- RoutedEvent.cs
- BaseTemplateBuildProvider.cs
- XpsSerializerWriter.cs
- PathFigureCollectionConverter.cs
- ToolStripDropDownClosingEventArgs.cs
- VerificationAttribute.cs
- DbgCompiler.cs
- RSAPKCS1SignatureDeformatter.cs
- StyleBamlRecordReader.cs
- FontStretch.cs
- MessageBox.cs
- HttpListener.cs
- BindingManagerDataErrorEventArgs.cs
- SchemaObjectWriter.cs
- SamlAuthorityBinding.cs
- WsrmMessageInfo.cs
- StreamSecurityUpgradeInitiatorBase.cs
- SystemIPGlobalProperties.cs
- EventProvider.cs
- Scanner.cs
- ExceptionUtility.cs
- XmlSchemaProviderAttribute.cs
- DispatcherProcessingDisabled.cs
- DrawingImage.cs
- MailWriter.cs
- ConditionalExpression.cs
- GeometryValueSerializer.cs
- StackSpiller.cs
- TextTreeObjectNode.cs
- ObjectListItemCollection.cs
- ScrollPatternIdentifiers.cs
- SelectionUIHandler.cs
- VirtualPathUtility.cs
- webclient.cs
- KeyedCollection.cs
- DataServiceRequestException.cs
- VsPropertyGrid.cs
- WindowsScrollBarBits.cs
- ModelMemberCollection.cs
- HttpHandlerAction.cs
- Int64KeyFrameCollection.cs
- SafeHandle.cs
- XmlSerializerFaultFormatter.cs
- ReadOnlyCollection.cs
- ActivityTypeCodeDomSerializer.cs
- XmlDataDocument.cs
- SrgsRulesCollection.cs
- CacheMemory.cs
- SqlDependencyListener.cs
- MessageBox.cs
- TextTreeNode.cs
- SoapAttributes.cs
- CodeObjectCreateExpression.cs
- PolicyManager.cs
- DrawingAttributes.cs
- NonParentingControl.cs
- WebPartZoneBase.cs