#region Apache License // // Licensed to the Apache Software Foundation (ASF) under one or more // contributor license agreements. See the NOTICE file distributed with // this work for additional information regarding copyright ownership. // The ASF licenses this file to you under the Apache License, Version 2.0 // (the "License"); you may not use this file except in compliance with // the License. You may obtain a copy of the License at // // http://www.apache.org/licenses/LICENSE-2.0 // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. // #endregion using System; namespace log4net.Util.TypeConverters { /// /// Attribute used to associate a type converter /// /// /// /// Class and Interface level attribute that specifies a type converter /// to use with the associated type. /// /// /// To associate a type converter with a target type apply a /// TypeConverterAttribute to the target type. Specify the /// type of the type converter on the attribute. /// /// /// Nicko Cadell /// Gert Driesen [AttributeUsage(AttributeTargets.Class|AttributeTargets.Interface|AttributeTargets.Enum)] public sealed class TypeConverterAttribute : Attribute { #region Member Variables /// /// The string type name of the type converter /// private string m_typeName = null; #endregion #region Constructors /// /// Default constructor /// /// /// /// Default constructor /// /// public TypeConverterAttribute() { } /// /// Create a new type converter attribute for the specified type name /// /// The string type name of the type converter /// /// /// The type specified must implement the /// or the interfaces. /// /// public TypeConverterAttribute(string typeName) { m_typeName = typeName; } /// /// Create a new type converter attribute for the specified type /// /// The type of the type converter /// /// /// The type specified must implement the /// or the interfaces. /// /// public TypeConverterAttribute(Type converterType) { m_typeName = log4net.Util.SystemInfo.AssemblyQualifiedName(converterType); } #endregion /// /// The string type name of the type converter /// /// /// The string type name of the type converter /// /// /// /// The type specified must implement the /// or the interfaces. /// /// public string ConverterTypeName { get { return m_typeName; } set { m_typeName = value ; } } } }