protected override void OnMiss(ICacheKey key, out object value) { var repository = new RepositoriesRepository(new PlatformDomainContext(), Logger); var keyById = key as RepositoryByIdCacheKey; if (keyById != null) { var repo = repository.GetByKey(keyById.Id); if (repo != null) { Add(key, repo); Add(new RepositoryByNameCacheKey(repo.Name), repo); value = repo; return; } } var keyByName = key as RepositoryByNameCacheKey; if (keyByName != null) { var repo = repository.GetByName(keyByName.Name); if (repo != null) { Add(key, repo); Add(new RepositoryByIdCacheKey(repo.Id), repo); value = repo; return; } } value = null; }
public RepositoryController(RepositoriesRepository repositoriesRepository, QueryComponentFactory queryComponentFactory) { _repositoriesRepository = repositoriesRepository; _queryComponentFactory = queryComponentFactory; }
public ContainerBuilder SetRepositoriesRepository(RepositoriesRepository repository) { container.Setup(p => p.GetService(typeof(RepositoriesRepository))).Returns(repository); return(this); }