Пример #1
0
        public async Task IndexarAlbuns()
        {
            var albunsTask = ObterAlbuns();
            var fotosTask  = ObterFotos();
            var usuarios   = ObterListaUsuarios(await albunsTask, await fotosTask);

            var usuariosHashElasticsearchTask = ObterHashUsuarios();

            for (var i = 0; i < usuarios.Count; i++)
            {
                usuarios[i].CalcularHash();
            }

            var usuariosHashElasticsearch = await usuariosHashElasticsearchTask;

            var usuariosIndexar = ObterUsuariosIndexar(usuariosHashElasticsearch, usuarios);
            var usuariosDeletar = ObterUsuariosDesindexar(usuariosHashElasticsearch, usuarios);

            if (usuariosIndexar != null && usuariosIndexar.Any())
            {
                await _albumRepository.AdicionarOuAlterar(usuariosIndexar);
            }

            if (usuariosDeletar != null && usuariosDeletar.Any())
            {
                await _albumRepository.Remover(usuariosDeletar);
            }
        }