Code:
/ Dotnetfx_Win7_3.5.1 / Dotnetfx_Win7_3.5.1 / 3.5.1 / DEVDIV / depot / DevDiv / releases / whidbey / NetFXspW7 / ndp / fx / src / CompMod / System / ComponentModel / LicenseProviderAttribute.cs / 1 / LicenseProviderAttribute.cs
//------------------------------------------------------------------------------
//
// Copyright (c) Microsoft Corporation. All rights reserved.
//
//-----------------------------------------------------------------------------
namespace System.ComponentModel {
using System;
using System.Security.Permissions;
///
/// Specifies the
/// to use with a class.
///
[AttributeUsage(AttributeTargets.Class, AllowMultiple = false, Inherited = false)]
public sealed class LicenseProviderAttribute : Attribute {
///
///
/// Specifies the default value, which is no provider. This field is read-only.
///
///
public static readonly LicenseProviderAttribute Default = new LicenseProviderAttribute();
private Type licenseProviderType = null;
private string licenseProviderName = null;
///
/// Initializes a new instance of the class without a license
/// provider.
///
public LicenseProviderAttribute() : this((string)null) {
}
///
///
/// Initializes a new instance of the class with
/// the specified type.
///
///
public LicenseProviderAttribute(string typeName) {
licenseProviderName = typeName;
}
///
///
/// Initializes a new instance of the class with
/// the specified type of license provider.
///
///
public LicenseProviderAttribute(Type type) {
licenseProviderType = type;
}
///
/// Gets the license provider to use with the associated class.
///
public Type LicenseProvider {
// SECREVIEW: Remove this attribute once bug#411910 is fixed.
[System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Security", "CA2113:SecureLateBindingMethods")]
get {
if (licenseProviderType == null && licenseProviderName != null) {
licenseProviderType = Type.GetType(licenseProviderName);
}
return licenseProviderType;
}
}
///
///
///
/// This defines a unique ID for this attribute type. It is used
/// by filtering algorithms to identify two attributes that are
/// the same type. For most attributes, this just returns the
/// Type instance for the attribute. LicenseProviderAttribute overrides this to include the type name and the
/// provider type name.
///
///
public override object TypeId {
get {
string typeName = licenseProviderName;
if (typeName == null && licenseProviderType != null) {
typeName = licenseProviderType.FullName;
}
return GetType().FullName + typeName;
}
}
///
///
///
public override bool Equals(object value) {
if (value is LicenseProviderAttribute && value != null) {
Type type = ((LicenseProviderAttribute)value).LicenseProvider;
if (type == LicenseProvider) {
return true;
}
else {
if (type != null && type.Equals(LicenseProvider)) {
return true;
}
}
}
return false;
}
///
///
/// Returns the hashcode for this object.
///
///
public override int GetHashCode() {
return base.GetHashCode();
}
}
}
// File provided for Reference Use Only by Microsoft Corporation (c) 2007.
//------------------------------------------------------------------------------
//
// Copyright (c) Microsoft Corporation. All rights reserved.
//
//-----------------------------------------------------------------------------
namespace System.ComponentModel {
using System;
using System.Security.Permissions;
///
/// Specifies the
/// to use with a class.
///
[AttributeUsage(AttributeTargets.Class, AllowMultiple = false, Inherited = false)]
public sealed class LicenseProviderAttribute : Attribute {
///
///
/// Specifies the default value, which is no provider. This field is read-only.
///
///
public static readonly LicenseProviderAttribute Default = new LicenseProviderAttribute();
private Type licenseProviderType = null;
private string licenseProviderName = null;
///
/// Initializes a new instance of the class without a license
/// provider.
///
public LicenseProviderAttribute() : this((string)null) {
}
///
///
/// Initializes a new instance of the class with
/// the specified type.
///
///
public LicenseProviderAttribute(string typeName) {
licenseProviderName = typeName;
}
///
///
/// Initializes a new instance of the class with
/// the specified type of license provider.
///
///
public LicenseProviderAttribute(Type type) {
licenseProviderType = type;
}
///
/// Gets the license provider to use with the associated class.
///
public Type LicenseProvider {
// SECREVIEW: Remove this attribute once bug#411910 is fixed.
[System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Security", "CA2113:SecureLateBindingMethods")]
get {
if (licenseProviderType == null && licenseProviderName != null) {
licenseProviderType = Type.GetType(licenseProviderName);
}
return licenseProviderType;
}
}
///
///
///
/// This defines a unique ID for this attribute type. It is used
/// by filtering algorithms to identify two attributes that are
/// the same type. For most attributes, this just returns the
/// Type instance for the attribute. LicenseProviderAttribute overrides this to include the type name and the
/// provider type name.
///
///
public override object TypeId {
get {
string typeName = licenseProviderName;
if (typeName == null && licenseProviderType != null) {
typeName = licenseProviderType.FullName;
}
return GetType().FullName + typeName;
}
}
///
///
///
public override bool Equals(object value) {
if (value is LicenseProviderAttribute && value != null) {
Type type = ((LicenseProviderAttribute)value).LicenseProvider;
if (type == LicenseProvider) {
return true;
}
else {
if (type != null && type.Equals(LicenseProvider)) {
return true;
}
}
}
return false;
}
///
///
/// Returns the hashcode for this object.
///
///
public override int GetHashCode() {
return base.GetHashCode();
}
}
}
// 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
- OrderByQueryOptionExpression.cs
- ModelPerspective.cs
- BitmapData.cs
- PrintController.cs
- mediaclock.cs
- Vector3DCollection.cs
- XmlJsonReader.cs
- TableHeaderCell.cs
- User.cs
- TextEditorDragDrop.cs
- SoapEnumAttribute.cs
- WaitHandleCannotBeOpenedException.cs
- HostExecutionContextManager.cs
- SerializationHelper.cs
- RelatedImageListAttribute.cs
- CqlWriter.cs
- ClientSettingsSection.cs
- NestedContainer.cs
- StrokeCollectionDefaultValueFactory.cs
- EntitySetRetriever.cs
- EntityParameter.cs
- BitmapImage.cs
- Encoder.cs
- ElementHostAutomationPeer.cs
- DesignerToolboxInfo.cs
- Int32.cs
- Stream.cs
- Context.cs
- CheckBoxAutomationPeer.cs
- ReceiveActivityDesignerTheme.cs
- SmiRecordBuffer.cs
- PagedDataSource.cs
- PropertyPathWorker.cs
- DATA_BLOB.cs
- bidPrivateBase.cs
- Command.cs
- HttpException.cs
- DiscoveryEndpointValidator.cs
- COMException.cs
- DataGridViewTopLeftHeaderCell.cs
- OutOfMemoryException.cs
- XmlILModule.cs
- FolderLevelBuildProviderAppliesToAttribute.cs
- MobileResource.cs
- ObfuscateAssemblyAttribute.cs
- Activity.cs
- SignatureResourcePool.cs
- DeploymentExceptionMapper.cs
- TextRangeEditLists.cs
- WMIGenerator.cs
- ChangePassword.cs
- EndOfStreamException.cs
- CodeAccessPermission.cs
- VerticalAlignConverter.cs
- BitmapEffectvisualstate.cs
- WpfWebRequestHelper.cs
- TextInfo.cs
- StylusCollection.cs
- LZCodec.cs
- SerialPinChanges.cs
- TabControl.cs
- ClassHandlersStore.cs
- RouteValueExpressionBuilder.cs
- PreservationFileReader.cs
- BigInt.cs
- LiteralLink.cs
- ArraySubsetEnumerator.cs
- ActiveXHelper.cs
- TextParaClient.cs
- DeviceContexts.cs
- SafeArrayRankMismatchException.cs
- LookupNode.cs
- IDispatchConstantAttribute.cs
- CalculatedColumn.cs
- Hex.cs
- AdornedElementPlaceholder.cs
- WorkflowApplicationIdleEventArgs.cs
- QilGeneratorEnv.cs
- WindowsToolbar.cs
- StreamGeometry.cs
- CryptoProvider.cs
- SoapFormatter.cs
- TreeViewEvent.cs
- PointCollection.cs
- MailMessageEventArgs.cs
- _ConnectStream.cs
- MobileUserControlDesigner.cs
- HttpCookieCollection.cs
- ParallelDesigner.cs
- XDeferredAxisSource.cs
- Control.cs
- DocumentPageViewAutomationPeer.cs
- ADRole.cs
- UserPreferenceChangedEventArgs.cs
- UserControl.cs
- ClientUtils.cs
- EmptyControlCollection.cs
- VarRemapper.cs
- Math.cs
- EventMappingSettingsCollection.cs