412 lines
11 KiB
C#
412 lines
11 KiB
C#
// ==++==
|
|
//
|
|
// Copyright (c) Microsoft Corporation. All rights reserved.
|
|
//
|
|
// ==--==
|
|
/*=============================================================================
|
|
**
|
|
** File: AssemblyAttributes
|
|
**
|
|
** <OWNER>[....]</OWNER>
|
|
**
|
|
**
|
|
** Purpose: For Assembly-related custom attributes.
|
|
**
|
|
**
|
|
=============================================================================*/
|
|
|
|
namespace System.Reflection {
|
|
|
|
using System;
|
|
using System.Configuration.Assemblies;
|
|
using System.Diagnostics.Contracts;
|
|
|
|
[AttributeUsage (AttributeTargets.Assembly, Inherited=false)]
|
|
[System.Runtime.InteropServices.ComVisible(true)]
|
|
public sealed class AssemblyCopyrightAttribute : Attribute
|
|
{
|
|
private String m_copyright;
|
|
|
|
public AssemblyCopyrightAttribute(String copyright)
|
|
{
|
|
m_copyright = copyright;
|
|
}
|
|
|
|
public String Copyright
|
|
{
|
|
get { return m_copyright; }
|
|
}
|
|
}
|
|
|
|
|
|
[AttributeUsage (AttributeTargets.Assembly, Inherited=false)]
|
|
[System.Runtime.InteropServices.ComVisible(true)]
|
|
public sealed class AssemblyTrademarkAttribute : Attribute
|
|
{
|
|
private String m_trademark;
|
|
|
|
public AssemblyTrademarkAttribute(String trademark)
|
|
{
|
|
m_trademark = trademark;
|
|
}
|
|
|
|
public String Trademark
|
|
{
|
|
get { return m_trademark; }
|
|
}
|
|
}
|
|
|
|
|
|
[AttributeUsage (AttributeTargets.Assembly, Inherited=false)]
|
|
[System.Runtime.InteropServices.ComVisible(true)]
|
|
public sealed class AssemblyProductAttribute : Attribute
|
|
{
|
|
private String m_product;
|
|
|
|
public AssemblyProductAttribute(String product)
|
|
{
|
|
m_product = product;
|
|
}
|
|
|
|
public String Product
|
|
{
|
|
get { return m_product; }
|
|
}
|
|
}
|
|
|
|
|
|
[AttributeUsage (AttributeTargets.Assembly, Inherited=false)]
|
|
[System.Runtime.InteropServices.ComVisible(true)]
|
|
public sealed class AssemblyCompanyAttribute : Attribute
|
|
{
|
|
private String m_company;
|
|
|
|
public AssemblyCompanyAttribute(String company)
|
|
{
|
|
m_company = company;
|
|
}
|
|
|
|
public String Company
|
|
{
|
|
get { return m_company; }
|
|
}
|
|
}
|
|
|
|
|
|
[AttributeUsage (AttributeTargets.Assembly, Inherited=false)]
|
|
[System.Runtime.InteropServices.ComVisible(true)]
|
|
public sealed class AssemblyDescriptionAttribute : Attribute
|
|
{
|
|
private String m_description;
|
|
|
|
public AssemblyDescriptionAttribute(String description)
|
|
{
|
|
m_description = description;
|
|
}
|
|
|
|
public String Description
|
|
{
|
|
get { return m_description; }
|
|
}
|
|
}
|
|
|
|
|
|
[AttributeUsage (AttributeTargets.Assembly, Inherited=false)]
|
|
[System.Runtime.InteropServices.ComVisible(true)]
|
|
public sealed class AssemblyTitleAttribute : Attribute
|
|
{
|
|
private String m_title;
|
|
|
|
public AssemblyTitleAttribute(String title)
|
|
{
|
|
m_title = title;
|
|
}
|
|
|
|
public String Title
|
|
{
|
|
get { return m_title; }
|
|
}
|
|
}
|
|
|
|
|
|
[AttributeUsage (AttributeTargets.Assembly, Inherited=false)]
|
|
[System.Runtime.InteropServices.ComVisible(true)]
|
|
public sealed class AssemblyConfigurationAttribute : Attribute
|
|
{
|
|
private String m_configuration;
|
|
|
|
public AssemblyConfigurationAttribute(String configuration)
|
|
{
|
|
m_configuration = configuration;
|
|
}
|
|
|
|
public String Configuration
|
|
{
|
|
get { return m_configuration; }
|
|
}
|
|
}
|
|
|
|
|
|
[AttributeUsage (AttributeTargets.Assembly, Inherited=false)]
|
|
[System.Runtime.InteropServices.ComVisible(true)]
|
|
public sealed class AssemblyDefaultAliasAttribute : Attribute
|
|
{
|
|
private String m_defaultAlias;
|
|
|
|
public AssemblyDefaultAliasAttribute(String defaultAlias)
|
|
{
|
|
m_defaultAlias = defaultAlias;
|
|
}
|
|
|
|
public String DefaultAlias
|
|
{
|
|
get { return m_defaultAlias; }
|
|
}
|
|
}
|
|
|
|
|
|
[AttributeUsage (AttributeTargets.Assembly, Inherited=false)]
|
|
[System.Runtime.InteropServices.ComVisible(true)]
|
|
public sealed class AssemblyInformationalVersionAttribute : Attribute
|
|
{
|
|
private String m_informationalVersion;
|
|
|
|
public AssemblyInformationalVersionAttribute(String informationalVersion)
|
|
{
|
|
m_informationalVersion = informationalVersion;
|
|
}
|
|
|
|
public String InformationalVersion
|
|
{
|
|
get { return m_informationalVersion; }
|
|
}
|
|
}
|
|
|
|
|
|
[AttributeUsage(AttributeTargets.Assembly, Inherited=false)]
|
|
[System.Runtime.InteropServices.ComVisible(true)]
|
|
public sealed class AssemblyFileVersionAttribute : Attribute
|
|
{
|
|
private String _version;
|
|
|
|
public AssemblyFileVersionAttribute(String version)
|
|
{
|
|
if (version == null)
|
|
throw new ArgumentNullException("version");
|
|
Contract.EndContractBlock();
|
|
_version = version;
|
|
}
|
|
|
|
public String Version {
|
|
get { return _version; }
|
|
}
|
|
}
|
|
|
|
|
|
[AttributeUsage (AttributeTargets.Assembly, Inherited=false)]
|
|
[System.Runtime.InteropServices.ComVisible(true)]
|
|
public unsafe sealed class AssemblyCultureAttribute : Attribute
|
|
{
|
|
private String m_culture;
|
|
|
|
public AssemblyCultureAttribute(String culture)
|
|
{
|
|
m_culture = culture;
|
|
}
|
|
|
|
public String Culture
|
|
{
|
|
get { return m_culture; }
|
|
}
|
|
}
|
|
|
|
|
|
[AttributeUsage (AttributeTargets.Assembly, Inherited=false)]
|
|
[System.Runtime.InteropServices.ComVisible(true)]
|
|
public unsafe sealed class AssemblyVersionAttribute : Attribute
|
|
{
|
|
private String m_version;
|
|
|
|
public AssemblyVersionAttribute(String version)
|
|
{
|
|
m_version = version;
|
|
}
|
|
|
|
public String Version
|
|
{
|
|
get { return m_version; }
|
|
}
|
|
}
|
|
|
|
|
|
[AttributeUsage (AttributeTargets.Assembly, Inherited=false)]
|
|
[System.Runtime.InteropServices.ComVisible(true)]
|
|
public sealed class AssemblyKeyFileAttribute : Attribute
|
|
{
|
|
private String m_keyFile;
|
|
|
|
public AssemblyKeyFileAttribute(String keyFile)
|
|
{
|
|
m_keyFile = keyFile;
|
|
}
|
|
|
|
public String KeyFile
|
|
{
|
|
get { return m_keyFile; }
|
|
}
|
|
}
|
|
|
|
|
|
[AttributeUsage (AttributeTargets.Assembly, Inherited=false)]
|
|
[System.Runtime.InteropServices.ComVisible(true)]
|
|
public sealed class AssemblyDelaySignAttribute : Attribute
|
|
{
|
|
private bool m_delaySign;
|
|
|
|
public AssemblyDelaySignAttribute(bool delaySign)
|
|
{
|
|
m_delaySign = delaySign;
|
|
}
|
|
|
|
public bool DelaySign
|
|
{ get
|
|
{ return m_delaySign; }
|
|
}
|
|
}
|
|
|
|
|
|
[AttributeUsage(AttributeTargets.Assembly, Inherited=false)]
|
|
[System.Runtime.InteropServices.ComVisible(true)]
|
|
public unsafe sealed class AssemblyAlgorithmIdAttribute : Attribute
|
|
{
|
|
private uint m_algId;
|
|
|
|
public AssemblyAlgorithmIdAttribute(AssemblyHashAlgorithm algorithmId)
|
|
{
|
|
m_algId = (uint) algorithmId;
|
|
}
|
|
|
|
[CLSCompliant(false)]
|
|
public AssemblyAlgorithmIdAttribute(uint algorithmId)
|
|
{
|
|
m_algId = algorithmId;
|
|
}
|
|
|
|
[CLSCompliant(false)]
|
|
public uint AlgorithmId
|
|
{
|
|
get { return m_algId; }
|
|
}
|
|
}
|
|
|
|
|
|
[AttributeUsage(AttributeTargets.Assembly, Inherited=false)]
|
|
[System.Runtime.InteropServices.ComVisible(true)]
|
|
public unsafe sealed class AssemblyFlagsAttribute : Attribute
|
|
{
|
|
private AssemblyNameFlags m_flags;
|
|
|
|
[Obsolete("This constructor has been deprecated. Please use AssemblyFlagsAttribute(AssemblyNameFlags) instead. http://go.microsoft.com/fwlink/?linkid=14202")]
|
|
[CLSCompliant(false)]
|
|
public AssemblyFlagsAttribute(uint flags)
|
|
{
|
|
m_flags = (AssemblyNameFlags)flags;
|
|
}
|
|
|
|
[Obsolete("This property has been deprecated. Please use AssemblyFlags instead. http://go.microsoft.com/fwlink/?linkid=14202")]
|
|
[CLSCompliant(false)]
|
|
public uint Flags
|
|
{
|
|
get { return (uint)m_flags; }
|
|
}
|
|
|
|
// This, of course, should be typed as AssemblyNameFlags. The compat police don't allow such changes.
|
|
public int AssemblyFlags
|
|
{
|
|
get { return (int)m_flags; }
|
|
}
|
|
|
|
[Obsolete("This constructor has been deprecated. Please use AssemblyFlagsAttribute(AssemblyNameFlags) instead. http://go.microsoft.com/fwlink/?linkid=14202")]
|
|
public AssemblyFlagsAttribute(int assemblyFlags)
|
|
{
|
|
m_flags = (AssemblyNameFlags)assemblyFlags;
|
|
}
|
|
|
|
|
|
public AssemblyFlagsAttribute(AssemblyNameFlags assemblyFlags)
|
|
{
|
|
m_flags = assemblyFlags;
|
|
}
|
|
}
|
|
|
|
[AttributeUsage(AttributeTargets.Assembly, AllowMultiple=true, Inherited=false)]
|
|
public sealed class AssemblyMetadataAttribute : Attribute
|
|
{
|
|
private String m_key;
|
|
private String m_value;
|
|
|
|
public AssemblyMetadataAttribute(string key, string value)
|
|
{
|
|
m_key = key;
|
|
m_value = value;
|
|
}
|
|
|
|
public string Key
|
|
{
|
|
get { return m_key; }
|
|
}
|
|
|
|
public string Value
|
|
{
|
|
get { return m_value;}
|
|
}
|
|
}
|
|
|
|
// We don't support key migration on Silverlight, as libraries should all be distributed with the application.
|
|
#if FEATURE_STRONGNAME_MIGRATION || FEATURE_NETCORE
|
|
[AttributeUsage(AttributeTargets.Assembly, Inherited = false, AllowMultiple=false)]
|
|
public sealed class AssemblySignatureKeyAttribute : Attribute
|
|
{
|
|
private String _publicKey;
|
|
private String _countersignature;
|
|
|
|
public AssemblySignatureKeyAttribute(String publicKey, String countersignature)
|
|
{
|
|
_publicKey = publicKey;
|
|
_countersignature = countersignature;
|
|
}
|
|
|
|
public String PublicKey
|
|
{
|
|
get { return _publicKey; }
|
|
}
|
|
|
|
public String Countersignature
|
|
{
|
|
get { return _countersignature; }
|
|
}
|
|
}
|
|
#endif
|
|
|
|
#if FEATURE_CORECLR || !FEATURE_PAL || MONO
|
|
[AttributeUsage (AttributeTargets.Assembly, Inherited=false)]
|
|
[System.Runtime.InteropServices.ComVisible(true)]
|
|
public sealed class AssemblyKeyNameAttribute : Attribute
|
|
{
|
|
private String m_keyName;
|
|
|
|
public AssemblyKeyNameAttribute(String keyName)
|
|
{
|
|
m_keyName = keyName;
|
|
}
|
|
|
|
public String KeyName
|
|
{
|
|
get { return m_keyName; }
|
|
}
|
|
}
|
|
#endif // FEATURE_CORECLR || !FEATURE_PAL
|
|
|
|
}
|
|
|