Exemple #1
0
        /// <summary>
        /// Get an optimizer from the factory
        /// </summary>
        /// <param name="extension">The extension of the file that the optimzer needs to support.</param>
        public IImageOptimizer GetByExtension(string extension)
        {
            lock (_Lock)
            {
                IImageOptimizer optimizer = _Optimizers.FirstOrDefault(o => o.Supports(extension));

                if (optimizer != null)
                {
                    return((IImageOptimizer)optimizer.Clone());
                }
                else
                {
                    return(null);
                }
            }
        }
Exemple #2
0
        /// <summary>
        /// Get an optimizer from the factory
        /// </summary>
        /// <param name="name">The name of the optimizer.</param>
        public IImageOptimizer GetByName(string name)
        {
            lock (_Lock)
            {
                IImageOptimizer optimizer = _Optimizers.FirstOrDefault(o => o.Name.ToLower() == name.ToLower());

                if (optimizer != null)
                {
                    return((IImageOptimizer)optimizer.Clone());
                }
                else
                {
                    return(null);
                }
            }
        }