Example #1
0
        public void Autofac_IEntityDefaultsDecoratorProvider( )
        {
            IEntityDefaultsDecoratorProvider instance = Factory.Current.Resolve <IEntityDefaultsDecoratorProvider>( );

            Assert.That(instance, Is.InstanceOf <CachingEntityDefaultsDecoratorProvider>( ));

            CachingEntityDefaultsDecoratorProvider cache = ( CachingEntityDefaultsDecoratorProvider )instance;

            Assert.That(cache.InnerProvider, Is.InstanceOf <EntityDefaultsDecoratorProvider>( ));
        }
Example #2
0
        /// <summary>
        /// Create a new <see cref="CachingEntityDefaultsDecoratorProvider"/>.
        /// </summary>
        /// <param name="innerProvider">
        /// The <see cref="IEntityDefaultsDecoratorProvider"/> that will actually provide default-value decorators.
        /// </param>
        public CachingEntityDefaultsDecoratorProvider([WithKey(Factory.NonCachedKey)] IEntityDefaultsDecoratorProvider innerProvider)
            : base("EntityDefaultsDecoratorProviderKey", new CacheFactory {
            MetadataCache = true
        })
        {
            if (innerProvider == null)
            {
                throw new ArgumentNullException("innerProvider");
            }

            InnerProvider = innerProvider;
        }
Example #3
0
        /// <summary>
        /// Constructor
        /// </summary>
        /// <param name="entityRepository">Loads the mapping configuration.</param>
        /// <param name="resourceResolverProvider">Looks up related entities.</param>
        /// <param name="entityDefaultsDecoratorProvider"></param>
        public ReaderToEntityAdapterProvider([NotNull] IEntityRepository entityRepository, [NotNull] IResourceResolverProvider resourceResolverProvider, [CanBeNull] IEntityDefaultsDecoratorProvider entityDefaultsDecoratorProvider)
        {
            if (entityRepository == null)
            {
                throw new ArgumentNullException("entityRepository");
            }
            if (resourceResolverProvider == null)
            {
                throw new ArgumentNullException("resourceResolverProvider");
            }

            _entityRepository                = entityRepository;
            _resourceResolverProvider        = resourceResolverProvider;
            _entityDefaultsDecoratorProvider = entityDefaultsDecoratorProvider;
        }