public IProductManagementService ResolveProductManagementService()
        {
            string connectionString =
                ConfigurationManager.ConnectionStrings
                ["CommerceObjectContext"].ConnectionString;

            // Inner Product Repository
            ProductRepository sqlRepository =
                new SqlProductRepository(connectionString);

            IAuditor sqlAuditor =
                new SqlAuditor(connectionString);

            // Decorator class
            ProductRepository auditingRepository =
                new AuditingProductRepository(
                    sqlRepository, sqlAuditor);

            IContractMapper mapper = new ContractMapper();

            // Injection of Decorator to use it as an interceptor of
            // the inner class functionality
            return(new ProductManagementService(
                       auditingRepository, mapper));
        }
Exemplo n.º 2
0
        public IProductManagementService ResolveProductManagementService()
        {
            string connectionString =
                ConfigurationManager.ConnectionStrings
                ["CommerceObjectContext"].ConnectionString;

            ProductRepository repository =
                new SqlProductRepository(connectionString);

            IContractMapper mapper = new ContractMapper();

            return(new ProductManagementService(repository,
                                                mapper));
        }