Business Logic Toolkit for .NET
www.bltoolkit.net
|  Home   |  Download   |  Documentation   |  Discussions   |  License   |

  Source.Mapping.ObjectMapperAttribute.cs

 
using System;

namespace BLToolkit.Mapping
{
    [AttributeUsage(AttributeTargets.Class | AttributeTargets.Interface)]
    public sealed class ObjectMapperAttribute : Attribute
    {
        public ObjectMapperAttribute(Type objectMapperType)
        {
            if (objectMapperType == null) throw new ArgumentNullException("objectMapperType");

            _objectMapper = Activator.CreateInstance(objectMapperType) as ObjectMapper;

            if (_objectMapper == null)
                throw new ArgumentException(
                    string.Format("Type '{0}' does not implement IObjectMapper interface.", objectMapperType));
        }

        private readonly ObjectMapper _objectMapper;
        public           ObjectMapper  ObjectMapper
        {
            get { return _objectMapper; }
        }
    }
}
 
© 2010 www.bltoolkit.net
support@bltoolkit.net