public ConexionVivanto(ParametrosServicio parametros, LoginVivanto login)
 {
     this.parametros = parametros;
     this.login      = login;
     HoraProceso     = DateTime.Now.ToString("yyyyMMddHHmmss");
     DirInfoLog      = Directory.CreateDirectory(HoraProceso);
 }
        static void Main(string[] args)
        {
            string archivoPorProcesar = null;

            if (args.Length > 0) {
                archivoPorProcesar = args [0];
                Console.WriteLine (archivoPorProcesar);
            }

            var appSettings = new AppSettings();

            var fechaRadicacionInicial = appSettings.Get<DateTime>("FechaRadicacionInicial", new DateTime(2015, 1, 7));
            var fechaRadicacionFinal = appSettings.Get<DateTime>("FechaRadicacionFinal", DateTime.Today);
            var urlBaseVivanto = appSettings.Get<string>("UrlBaseVivanto", "http://190.60.70.149:82");
            var varConexionBD = appSettings.Get<string>("ConexionBD", "APP_CONEXION_IRD");
            var varUsuarioVivanto = appSettings.Get<string>("UsuarioVivanto", "APP_USUARIO_VIVANTO");
            var varClaveVivanto = appSettings.Get<string>("ClaveVivanto", "APP_CLAVE_VIVANTO");

            var conexionBD = Environment.GetEnvironmentVariable(varConexionBD);
            var usuarioVivanto = Environment.GetEnvironmentVariable(varUsuarioVivanto);
            var claveVivanto = Environment.GetEnvironmentVariable(varClaveVivanto);

            Console.WriteLine(fechaRadicacionInicial);
            Console.WriteLine(fechaRadicacionFinal);
            Console.WriteLine(urlBaseVivanto);
            Console.WriteLine(varConexionBD);
            Console.WriteLine(varUsuarioVivanto);
            Console.WriteLine(varClaveVivanto);
            Console.WriteLine(conexionBD);
            Console.WriteLine(usuarioVivanto);
            Console.WriteLine(claveVivanto);

            var login = new LoginVivanto { Usuario = usuarioVivanto, Clave = claveVivanto };

            var par = new ParametrosServicio() { UrlBase = urlBaseVivanto };
            var parProcesamiento = new ParametrosProcesamiento()
            {
                FechaRadicacionInicial = fechaRadicacionInicial,
                FechaRadicacionFinal = fechaRadicacionFinal
            };

            using (IConexionVivanto cliente = new ConexionVivanto (par, login)) {

                var dbfactory = new OrmLiteConnectionFactory (conexionBD, SqlServerDialect.Provider);
                var dbcliente = new ConexionIRDCOL (dbfactory);
                cliente.IniciarSesion ();
                var proc = new Procesamiento (cliente, dbcliente, parProcesamiento);
                var np = proc.Iniciar (archivoPorProcesar);
                Console.WriteLine ("Listo primera fase");
                Console.WriteLine ("esperando 5 segundos para iniciar con los no procesados");
                System.Threading.Thread.Sleep (5 * 1000);
                Console.WriteLine ("Iniciando ahora con los no procesados...");
                //proc = new Procesamiento (cliente, dbcliente, parProcesamiento);
                proc.Iniciar (np);
                cliente.CerrarSession ();
            }

            return;
        }