Beispiel #1
0
 internal Correspondencia(EntidadeExterna ee, EntidadeInterna ei, TipoSugestao tipoSugestao)
 {
     this.TipoOpcao       = TipoOpcao.Sugerida; //assume-se correspondencias instanciadas são sempre sugestões
     this.TipoSugestao    = tipoSugestao;
     this.EntidadeExterna = ee;
     this.mEscolhasEntidadesInternas[TipoOpcao.Sugerida] = ei;
 }
        private static Correspondencia AssembleCorrespondencia <EE, EI>(
            EE ee,
            Dictionary <EE, EI> eisComCorrespAnteriores,
            Dictionary <EE, EI> eisComNovasCorrespEncontradas,
            Dictionary <EE, EI> eisNovos,
            Func <Model.EntidadeExterna, EntidadeInterna, TipoSugestao, Correspondencia> factoryMethod)
            where EE : Model.EntidadeExterna
            where EI : EntidadeInterna
        {
            EI           ei           = null;
            TipoSugestao tipoSugestao = TipoSugestao.NaoSugerido;

            if (eisComCorrespAnteriores.ContainsKey(ee))
            {
                ei           = eisComCorrespAnteriores[ee];
                tipoSugestao = TipoSugestao.Historico;
            }
            else if (eisComNovasCorrespEncontradas.ContainsKey(ee))
            {
                ei           = eisComNovasCorrespEncontradas[ee];
                tipoSugestao = TipoSugestao.Heuristica;
            }
            else if (eisNovos.ContainsKey(ee))
            {
                ei           = eisNovos[ee];
                tipoSugestao = TipoSugestao.Criacao;
            }
            else
            {
                throw new InvalidOperationException("Entidade externa sem correspondencia.");
            }

            Correspondencia correspondencia = factoryMethod(ee, ei, tipoSugestao);

            return(correspondencia);
        }
Beispiel #3
0
 internal CorrespondenciaDocs(DocumentoComposto de, DocumentoGisa di, TipoSugestao tipoSugestao)
     : base(de, di, tipoSugestao)
 {
 }
Beispiel #4
0
 internal CorrespondenciaDocs(DocumentoSimples de, DocumentoGisa di, TipoSugestao tipoSugestao)
     : base(de, di, tipoSugestao)
 {
 }
 private static Correspondencia CreateCorrespondenciaRAs(Model.EntidadeExterna ee, EntidadeInterna ei, TipoSugestao tipoSugestao)
 {
     return(new CorrespondenciaRAs((RegistoAutoridadeExterno)ee, (RegistoAutoridadeInterno)ei, tipoSugestao));;
 }
 private static Correspondencia CreateCorrespondenciaDocsCompostos(Model.EntidadeExterna ee, EntidadeInterna ei, TipoSugestao tipoSugestao)
 {
     return(new CorrespondenciaDocs((DocumentoComposto)ee, (DocumentoGisa)ei, tipoSugestao));
 }
 internal CorrespondenciaDocsCompostos(Model.EntidadesExternas.DocumentoComposto dce, Model.EntidadesInternas.DocumentoGisa dci, TipoSugestao tipoSugestao)
     : base(dce, dci, tipoSugestao)
 {
 }
 internal CorrespondenciaRAs(RegistoAutoridadeExterno rae, RegistoAutoridadeInterno rai, TipoSugestao tipoSugestao)
     : base(rae, rai, tipoSugestao)
 {
 }
 internal CorrespondenciaDocs(DocumentoComposto de, DocumentoGisa di, TipoSugestao tipoSugestao)
     : base(de, di, tipoSugestao) { }
 internal CorrespondenciaDocs(DocumentoSimples de, DocumentoGisa di, TipoSugestao tipoSugestao)
     :base(de, di, tipoSugestao) { }
 internal CorrespondenciaDocsCompostos(Model.EntidadesExternas.DocumentoComposto dce, Model.EntidadesInternas.DocumentoGisa dci, TipoSugestao tipoSugestao)
     :base(dce, dci, tipoSugestao) { }
Beispiel #12
0
 internal CorrespondenciaRAs(RegistoAutoridadeExterno rae, RegistoAutoridadeInterno rai, TipoSugestao tipoSugestao)
     :base(rae, rai, tipoSugestao) { }