Was.OrcSearch – Rev 1

Subversion Repositories:
Rev:
using System;
using System.Reflection;
using Was.OrcSearch.Models.Interfaces;

namespace Was.OrcSearch.Models
{
    public class ReflectionMetadata : IMetadata
    {
        private readonly PropertyInfo _propertyInfo;

        public ReflectionMetadata(PropertyInfo propertyInfo)
        {
            _propertyInfo = propertyInfo;

            Name = _propertyInfo.Name;
            DisplayName = Name;
        }

        public virtual string Name { get; }

        public virtual string DisplayName { get; set; }

        public virtual object GetValue(object instance)
        {
            return _propertyInfo.GetValue(instance, null);
        }

        public virtual void SetValue(object instance, object value)
        {
            _propertyInfo.SetValue(instance, value, null);
        }

        public virtual Type Type => _propertyInfo.PropertyType;
    }
}

Generated by GNU Enscript 1.6.5.90.