コード例 #1
0
ファイル: Cliente.cs プロジェクト: prefeiturasp/SME-ADSync
 public static string Executar(Expression <Action> metodo, TipoProcessamento tipoProcessamento = TipoProcessamento.ExecucaoImediata)
 {
     GravarLog($"Novo processamento background solicitado {metodo.Body.ToString()}");
     return(Orquestrador
            .ObterProcessador(tipoProcessamento)
            .Executar(metodo));
 }
コード例 #2
0
 public static void Registrar <T>(T processador, TipoProcessamento tipoProcessamento)
     where T : IProcessor
 {
     if (processadores.TryAdd(tipoProcessamento, processador) && !processador.Registrado)
     {
         processador.Registrar();
         Console.WriteLine($"O processador {processador.GetType().Name} foi registrado para o tipo de processamento {tipoProcessamento.ToString()}");
     }
 }
コード例 #3
0
        public static IProcessor ObterProcessador(TipoProcessamento tipoProcessamento)
        {
            IProcessor processador = null;

            if (processadores.TryGetValue(tipoProcessamento, out processador))
            {
                return(processador);
            }
            else
            {
                throw new Exception($"Não foi possível obter um processador do tipo {tipoProcessamento.ToString()} pois não foi registrado");
            }
        }
コード例 #4
0
 public static string Executar <T>(Expression <Action <T> > metodo, TipoProcessamento tipoProcessamento = TipoProcessamento.ExecucaoLonga)
 {
     GravarLog($"Novo processamento background solicitado {metodo.Body}");
     return(Orquestrador.ObterProcessador(tipoProcessamento).Executar <T>(metodo));
 }