/// <summary>
 /// Initializes a new instance of the <see cref="ObjectConstructionArgs"/> class.
 /// </summary>
 /// <param name="context">The context.</param>
 /// <param name="abstractTypeCreationContext">The abstract type creation context.</param>
 /// <param name="configuration">The configuration.</param>
 /// <param name="service">The service.</param>
 public ObjectConstructionArgs(
     Context context,
     AbstractTypeCreationContext abstractTypeCreationContext,
     AbstractTypeConfiguration configuration,
     IAbstractService service,
     ModelCounter counters)
     : base(context)
 {
     AbstractTypeCreationContext = abstractTypeCreationContext;
     Configuration = configuration;
     Service = service;
     Counters = counters;
 }
        public GlassModelCounter(Glass.Mapper.Context context, string identifier, int threshold)
        {
            _log        = context.DependencyResolver.GetLog();
            _identifier = identifier;
            _threshold  = threshold;
            _enabled    = context.Config.Debug.Enabled;
            _counter    = context.DependencyResolver.GetModelCounter();

            RequestCount = -1;
            CacheCount   = -1;

            if (_enabled)
            {
                _requestedCountBefore = _counter.ModelsRequested;
                _cacheCount           = _counter.CachedModels;
            }
        }
        public GlassModelCounter(Glass.Mapper.Context context, string identifier, int threshold)
        {
            _log = context.DependencyResolver.GetLog();
            _identifier = identifier;
            _threshold = threshold;
            _enabled = context.Config.Debug.Enabled;
            _counter = context.DependencyResolver.GetModelCounter();

            RequestCount = -1;
            CacheCount = -1;

            if (_enabled)
            {
                _requestedCountBefore = _counter.ModelsRequested;
                _cacheCount = _counter.CachedModels;
            }
        }