using System;

namespace mgaia.Utils
{
    public class GenericReusableFactory<T> : AbstractReusableFactory where T : class, new()
    {
        #region implemented abstract members of AbstractFactory
        public override IReusable Create(object parameter)
        {
            return Create();
        }
        #endregion

        public GenericReusable<T> Create()
        {
            return new GenericReusable<T>(new T());
        }
    }
}