<?xml version="1.0"?>
<doc>
    <assembly>
        <name>Kernel.Helpers</name>
    </assembly>
    <members>
        <member name="T:Kernel.Helpers.Extensions.CollectionExtensions">
            <summary>
            Extensiones para clases de tipo <see cref="T:System.Collections.ICollection"/>
            </summary>
        </member>
        <member name="M:Kernel.Helpers.Extensions.CollectionExtensions.UnionTypes(System.Type[],System.Type[])">
            <summary>
            Une dos listas de tipos sin que se repitan verificando el FullName de los tipos
            </summary>
            <param name="first"></param>
            <param name="second"></param>
            <returns></returns>
        </member>
        <member name="T:Kernel.Helpers.Extensions.DataExtensions">
            <summary>
            Extensiones para clases de tipo <see cref="T:Microsoft.EntityFrameworkCore.DbContext"/>
            </summary>
        </member>
        <member name="F:Kernel.Helpers.Extensions.DataExtensions.DefaultConnectionName">
            <summary>
            Cadena de conexión por defecto
            </summary>
        </member>
        <member name="M:Kernel.Helpers.Extensions.DataExtensions.GetDefaultConnectionString(Microsoft.Extensions.Configuration.IConfiguration)">
            <summary>
            Devuelve la cadena de conexión por defecto
            </summary>
            <param name="configuration"></param>
            <returns></returns>
        </member>
        <member name="M:Kernel.Helpers.Extensions.DataExtensions.ConfigureOptions(Microsoft.Extensions.Configuration.IConfiguration,Microsoft.EntityFrameworkCore.DbContextOptionsBuilder,System.Action{Microsoft.EntityFrameworkCore.Infrastructure.SqlServerDbContextOptionsBuilder})">
            <summary>
             SQL Server specific extension methods for Microsoft.EntityFrameworkCore.DbContextOptionsBuilder. 
             <see cref="M:Microsoft.EntityFrameworkCore.SqlServerDbContextOptionsExtensions.UseSqlServer(Microsoft.EntityFrameworkCore.DbContextOptionsBuilder,System.String,System.Action{Microsoft.EntityFrameworkCore.Infrastructure.SqlServerDbContextOptionsBuilder})"/>
            </summary>
            <param name="configuration"></param>
            <param name="options"></param>
            <param name="sqlServerOptionsAction"></param>
            <returns></returns>
        </member>
        <member name="M:Kernel.Helpers.Extensions.DataExtensions.ConfigureOptions(Microsoft.EntityFrameworkCore.DbContextOptionsBuilder,Microsoft.Extensions.Configuration.IConfiguration,System.Action{Microsoft.EntityFrameworkCore.Infrastructure.SqlServerDbContextOptionsBuilder})">
            <summary>
             SQL Server specific extension methods for Microsoft.EntityFrameworkCore.DbContextOptionsBuilder. 
             <see cref="M:Microsoft.EntityFrameworkCore.SqlServerDbContextOptionsExtensions.UseSqlServer(Microsoft.EntityFrameworkCore.DbContextOptionsBuilder,System.String,System.Action{Microsoft.EntityFrameworkCore.Infrastructure.SqlServerDbContextOptionsBuilder})"/>
            </summary>
            <param name="options"></param>
            <param name="configuration"></param>
            <param name="sqlServerOptionsAction"></param>
            <returns></returns>
        </member>
        <member name="M:Kernel.Helpers.Extensions.DataExtensions.ConfigureOptions(Microsoft.EntityFrameworkCore.DbContextOptionsBuilder,System.String,System.Action{Microsoft.EntityFrameworkCore.Infrastructure.SqlServerDbContextOptionsBuilder})">
            <summary>
             SQL Server specific extension methods for Microsoft.EntityFrameworkCore.DbContextOptionsBuilder. 
             <see cref="M:Microsoft.EntityFrameworkCore.SqlServerDbContextOptionsExtensions.UseSqlServer(Microsoft.EntityFrameworkCore.DbContextOptionsBuilder,System.String,System.Action{Microsoft.EntityFrameworkCore.Infrastructure.SqlServerDbContextOptionsBuilder})"/>
            </summary>
            <param name="options"></param>
            <param name="connectionString"></param>
            <param name="sqlServerOptionsAction"></param>
            <returns></returns>
        </member>
        <member name="M:Kernel.Helpers.Extensions.DataExtensions.ConfigureOptions``1(Microsoft.EntityFrameworkCore.DbContextOptionsBuilder{``0},Microsoft.Extensions.Configuration.IConfiguration,System.Action{Microsoft.EntityFrameworkCore.Infrastructure.SqlServerDbContextOptionsBuilder})">
            <summary>
             SQL Server specific extension methods for Microsoft.EntityFrameworkCore.DbContextOptionsBuilder. 
             <see cref="M:Microsoft.EntityFrameworkCore.SqlServerDbContextOptionsExtensions.UseSqlServer(Microsoft.EntityFrameworkCore.DbContextOptionsBuilder,System.String,System.Action{Microsoft.EntityFrameworkCore.Infrastructure.SqlServerDbContextOptionsBuilder})"/>
            </summary>
            <typeparam name="TContext"></typeparam>
            <param name="options"></param>
            <param name="configuration"></param>
            <param name="sqlServerOptionsAction"></param>
            <returns></returns>
        </member>
        <member name="M:Kernel.Helpers.Extensions.DataExtensions.TrimSqlQuery(System.String)">
            <summary>
            Remueve los espacios y caracteres de retorno iniciales de queries
            </summary>
            <param name="sqlQuery"></param>
            <returns>Texto sin los espacios caracteres de retorno</returns>
        </member>
        <member name="T:Kernel.Helpers.Extensions.HttpExtensions">
            <summary>
            Extensiones para la interfaz de tipo <see cref="T:Microsoft.AspNetCore.Http.IHttpContextAccessor"/>
            </summary>
        </member>
        <member name="M:Kernel.Helpers.Extensions.HttpExtensions.GetAbsoluteUri(Microsoft.AspNetCore.Http.IHttpContextAccessor)">
            <summary>
            Devuelve un valor <see cref="T:System.Uri"/> absoluto
            </summary>
            <param name="httpContextAccessor">Parámetro de tipo <see cref="T:Microsoft.AspNetCore.Http.IHttpContextAccessor"/></param>
            <returns>Valor <see cref="T:System.Uri"/> absoluto</returns>
        </member>
        <member name="M:Kernel.Helpers.Extensions.HttpExtensions.GetAbsoluteUri(Microsoft.AspNetCore.Http.HttpRequest)">
            <summary>
            Devuelve un valor <see cref="T:System.Uri"/> absoluto
            </summary>
            <param name="request">Parámetro de tipo <see cref="T:Microsoft.AspNetCore.Http.HttpRequest"/></param>
            <returns>Valor <see cref="T:System.Uri"/> absoluto</returns>
        </member>
        <member name="M:Kernel.Helpers.Extensions.HttpExtensions.Uri(Microsoft.AspNetCore.Http.HttpRequest,System.String)">
            <summary>
            Devuelve un valor <see cref="T:System.Uri"/> a partir de una url
            </summary>
            <param name="request">Parámetro de tipo <see cref="T:Microsoft.AspNetCore.Http.HttpRequest"/></param>
            <param name="url">url fuente para convertir a Uri</param>
            <returns>Valor <see cref="T:System.Uri"/> absoluto</returns>
        </member>
        <member name="T:Kernel.Helpers.Extensions.IEnumerableExtensions">
            <summary>
            Extensiones para clases de tipo <see cref="T:System.Collections.Generic.IEnumerable`1"/>
            </summary>
        </member>
        <member name="M:Kernel.Helpers.Extensions.IEnumerableExtensions.ToDataTable(System.Collections.Generic.IEnumerable{System.Object})">
            <summary>
            Convierte un enumerable de objetos a un DataTable, utilizando las propiedades de los objetos como columnas.
            </summary>
            <param name="data">Enumerable de objetos a convertir</param>
            <returns>DataTable con las propiedades de los objetos como columnas</returns>
        </member>
        <member name="T:Kernel.Helpers.Extensions.ObjectExtensions">
            <summary>
            Extensiones para tipos de dato <see cref="T:System.Object"/>
            </summary>
        </member>
        <member name="M:Kernel.Helpers.Extensions.ObjectExtensions.CopyObjectProperties(System.Object,System.Object,System.String[])">
            <summary>
            Copia todas las propiedades del objecto source en dest si existen en dest y si son de escritura
            </summary>
            <param name="dest">Objeto destino</param>
            <param name="source">Objeto fuente</param>
            <param name="ignoredProperties">Nombre de propiedades a ignorar</param>
        </member>
        <member name="T:Kernel.Helpers.Extensions.FileLoggingConfiguration">
            <summary>
            Configuration for the Serilog file logging.
            </summary>
        </member>
        <member name="P:Kernel.Helpers.Extensions.FileLoggingConfiguration.PathFormat">
            <summary>
            Filname to write. The filename may include <c>{Date}</c> to specify
            how the date portion of the filename is calculated. May include
            environment variables.
            </summary>
        </member>
        <member name="P:Kernel.Helpers.Extensions.FileLoggingConfiguration.Json">
            <summary>
            If <c>true</c>, the log file will be written in JSON format.
            </summary>
        </member>
        <member name="P:Kernel.Helpers.Extensions.FileLoggingConfiguration.FileSizeLimitBytes">
            <summary>
            The maximum size, in bytes, to which any single log file will be
            allowed to grow. For unrestricted growth, pass <c>null</c>. The
            default is 1 GiB.
            </summary>
        </member>
        <member name="P:Kernel.Helpers.Extensions.FileLoggingConfiguration.RetainedFileCountLimit">
            <summary>
            The maximum number of log files that will be retained, including
            the current log file. For unlimited retention, pass <c>null</c>.
            The default is 31.
            </summary>
        </member>
        <member name="T:Kernel.Helpers.Extensions.ProgramExtensions">
            <summary>
            Extensiones para clases Program
            </summary>
        </member>
        <member name="M:Kernel.Helpers.Extensions.ProgramExtensions.ConfigureDefaultLogging``2(Microsoft.Extensions.Hosting.IHostBuilder)">
            <summary>
            Configura el tipo de log a utilizar
            </summary>
            <param name="hostBuilder"></param>
            <returns></returns>
        </member>
        <member name="M:Kernel.Helpers.Extensions.ProgramExtensions.ConfigureDefaultLogging``1(Microsoft.AspNetCore.Builder.WebApplicationBuilder)">
            <summary>
            Configura el tipo de log a utilizar (modern hosting pattern)
            </summary>
            <param name="builder"></param>
            <returns></returns>
        </member>
        <member name="T:Kernel.Helpers.Extensions.ResourceExtensions">
            <summary>
            Extensión para el manejo de recursos
            </summary>
        </member>
        <member name="M:Kernel.Helpers.Extensions.ResourceExtensions.GetString(System.Resources.ResourceManager,System.String,System.Object[])">
            <summary>
            Construye y devuelve un texto con el nombre especificado, utilizando los valores de los parámetros para formatear el resultado
            </summary>
            <param name="resourceManager">Parámetro de tipo <see cref="T:System.Resources.ResourceManager"/></param>
            <param name="name">Nombre del error</param>
            <param name="parameters">Parámetros para formatear el texto</param>
            <returns>Texto con el nombre especificado</returns>
        </member>
        <member name="M:Kernel.Helpers.Extensions.ResourceExtensions.GetString(System.Resources.ResourceManager,System.String,System.Globalization.CultureInfo,System.Object[])">
            <summary>
            Construye y devuelve un texto con el nombre especificado, utilizando los valores de los parámetros para formatear el resultado
            </summary>
            <param name="resourceManager">Parámetro de tipo <see cref="T:System.Resources.ResourceManager"/></param>
            <param name="name">Nombre del error</param>
            <param name="cultureInfo">Idioma a utilizar</param>
            <param name="parameters">Parámetros para formatear el texto</param>
            <returns>Texto con el nombre especificado</returns>
        </member>
        <member name="M:Kernel.Helpers.Extensions.ResourceExtensions.FormatMessage(System.String,System.Object[])">
            <summary>
            Replaces the format item in a specified string with the string representation of a corresponding object in a specified array.
            </summary>
            <param name="message">A composite format string.</param>
            <param name="parameters">An object array that contains zero or more objects to format.</param>
            <returns>A copy of format in which the format items have been replaced by the string representation of the corresponding objects in args.</returns>
        </member>
        <member name="M:Kernel.Helpers.Extensions.ResourceExtensions.SetCulture(Microsoft.Extensions.Configuration.IConfiguration,System.String,System.Boolean)">
            <summary>
            Cambia el idioma de la aplicación con el parámetro <paramref name="cultureName"/>
            </summary>
            <param name="configuration">Parámetro de tipo <see cref="T:Microsoft.Extensions.Configuration.IConfiguration"/></param>
            <param name="cultureName">Idioma a utilizar</param>
            <param name="setDefaultThread">true si se utiliza este idioma para todas los threads por defecto</param>
        </member>
        <member name="M:Kernel.Helpers.Extensions.ResourceExtensions.SetCulture(Microsoft.Extensions.Configuration.IConfiguration,System.Security.Principal.IIdentity)">
            <summary>
            Cambia el idioma de la aplicación con el valor del idioma del usuario autenticado
            </summary>
            <param name="configuration">Parámetro de tipo <see cref="T:Microsoft.Extensions.Configuration.IConfiguration"/></param>
            <param name="identity">Usuario autenticado</param>
        </member>
        <member name="T:Kernel.Helpers.Extensions.ServiceProviderExtensions">
            <summary>
            Extensión para <see cref="T:System.IServiceProvider"/> la creación de clases utilizando Dependency Injection
            </summary>
        </member>
        <member name="M:Kernel.Helpers.Extensions.ServiceProviderExtensions.CreateInstance``1(System.IServiceProvider)">
            <summary>
            Extensión para crear una nueva instancia de la clase de tipo <typeparamref name="TResult"/> utilizando Dependency Injection
            </summary>
            <typeparam name="TResult">Tipo de clase a crear</typeparam>
            <param name="provider">Parámetro de tipo <see cref="T:System.IServiceProvider"/></param>
            <returns></returns>
        </member>
        <member name="T:Kernel.Helpers.Extensions.SessionExtensions">
            <summary>
            Extensiones para manejo de variables de sesión usando la interfaz <see cref="T:Microsoft.AspNetCore.Http.ISession"/>
            </summary>
        </member>
        <member name="M:Kernel.Helpers.Extensions.SessionExtensions.Set``1(Microsoft.AspNetCore.Http.ISession,System.String,``0)">
            <summary>
            Guarda una variable de sesión
            </summary>
            <typeparam name="T">Tipo de dato del valor a guardar en las variables de sesión</typeparam>
            <param name="session">Variable de tipo <see cref="T:Microsoft.AspNetCore.Http.ISession"/> </param>
            <param name="key">Nombre de la variable a guardar</param>
            <param name="value">Valor de la variable a guardar</param>
        </member>
        <member name="M:Kernel.Helpers.Extensions.SessionExtensions.Get``1(Microsoft.AspNetCore.Http.ISession,System.String)">
            <summary>
            Lee una variable de sesión
            </summary>
            <typeparam name="T">Tipo de dato del valor guardado en las variables de sesión</typeparam>
            <param name="session">Variable de tipo <see cref="T:Microsoft.AspNetCore.Http.ISession"/> </param>
            <param name="key">Nombre de la variable a leer</param>
        </member>
        <member name="T:Kernel.Helpers.Extensions.StartupExtensions">
            <summary>
            Extensiones para clases Startup
            </summary>
        </member>
        <member name="M:Kernel.Helpers.Extensions.StartupExtensions.AddHttpClient``1(Microsoft.Extensions.DependencyInjection.IServiceCollection,Kernel.Helpers.IHttpClientErrorPolicy)">
            <summary>
            Adds the <see cref="T:System.Net.Http.IHttpClientFactory"/> and related services to the <see cref="T:Microsoft.Extensions.DependencyInjection.IServiceCollection"/>
            and configures a binding between the TClient type and a named <see cref="T:System.Net.Http.HttpClient"/>.
            The client name will be set to the type name of TClient.
            </summary>
            <typeparam name="TClient"></typeparam>
            <param name="services"></param>
            <param name="configurer"></param>
            <returns></returns>
        </member>
        <member name="M:Kernel.Helpers.Extensions.StartupExtensions.AddErrorPolicy(Microsoft.Extensions.DependencyInjection.IHttpClientBuilder,Kernel.Helpers.IHttpClientErrorPolicy)">
            <summary>
            Configura el servicio HttpClient con políticas de error
            </summary>
            <param name="builder"></param>
            <param name="configurer"></param>
            <returns></returns>
        </member>
        <member name="T:Kernel.Helpers.ConfigurationChangedEventHandler">
            <summary>
            Se utiliza por la clase <see cref="T:Kernel.Helpers.ConfigurationMonitor"/> para monitorear el cambio en el archivo de configuración configurado.
            </summary>
        </member>
        <member name="T:Kernel.Helpers.ConfigurationMonitor">
            <summary>
            Monitorea el cambio en el archivo de configuración configurado
            </summary>
        </member>
        <member name="E:Kernel.Helpers.ConfigurationMonitor.ConfigurationChanged">
            <summary>
            Se utiliza por la clase <see cref="T:Kernel.Helpers.ConfigurationMonitor"/> para monitorear el cambio en el archivo de configuración configurado.
            </summary>
        </member>
        <member name="P:Kernel.Helpers.ConfigurationMonitor.MonitoringEnabled">
            <summary>
            Variable que se enciende cuando se quiera monitorear si hay cambios en el archivo de configuración
            </summary>
        </member>
        <member name="M:Kernel.Helpers.ConfigurationMonitor.#ctor(Microsoft.Extensions.Logging.ILogger,System.String,Microsoft.Extensions.Configuration.IConfiguration)">
            <summary>
            Se utiliza por la clase <see cref="T:Kernel.Helpers.ConfigurationMonitor"/> para monitorear el cambio en el archivo de configuración especificado.
            </summary>
            <param name="logger">Parámetro de tipo <see cref="T:Microsoft.Extensions.Logging.ILogger`1"/></param>
            <param name="monitoringFileName">Nombre del archivo para monitorear</param>
            <param name="configuration">Parámetro de tipo <see cref="T:Microsoft.Extensions.Configuration.IConfiguration"/></param>
        </member>
        <member name="M:Kernel.Helpers.ConfigurationMonitor.#ctor(Microsoft.Extensions.Logging.ILogger,System.String,Microsoft.Extensions.Configuration.IConfiguration,Kernel.Helpers.ConfigurationChangedEventHandler)">
            <summary>
            Se utiliza por la clase <see cref="T:Kernel.Helpers.ConfigurationMonitor"/> para monitorear el cambio en el archivo de configuración especificado.
            </summary>
            <param name="logger">Parámetro de tipo <see cref="T:Microsoft.Extensions.Logging.ILogger`1"/></param>
            <param name="monitoringFileName">Nombre del archivo para monitorear</param>
            <param name="configuration">Parámetro de tipo <see cref="T:Microsoft.Extensions.Configuration.IConfiguration"/></param>
            <param name="configurationChanged">Parámetro de tipo <see cref="T:Kernel.Helpers.ConfigurationChangedEventHandler"/> 
            que se utiliza para notificar cambios en el archivo de configuración especificado</param>
        </member>
        <member name="T:Kernel.Helpers.CryptorHelper">
            <summary>
            Extensiones para encripción de datos
            </summary>
        </member>
        <member name="M:Kernel.Helpers.CryptorHelper.#cctor">
            <remarks>
            Constructor for using an intrinsic .Net SymmetricAlgorithm class.
            </remarks>
        </member>
        <member name="M:Kernel.Helpers.CryptorHelper.GetLegalKey(System.String)">
            <remarks>
            Depending on the legal key size limitations of a specific CryptoService provider
            and length of the private key provided, padding the secret key with space character
            to meet the legal size of the algorithm.
            </remarks>
        </member>
        <member name="M:Kernel.Helpers.CryptorHelper.Encrypt(System.String,System.String)">
            <summary>
            Encripta una variable de tipo string utilizando una llave de encripción
            </summary>
            <param name="source">Texto a encriptar</param>
            <param name="key">Llave de encripción</param>
            <returns>Variable encriptada</returns>
        </member>
        <member name="M:Kernel.Helpers.CryptorHelper.Decrypt(System.String,System.String)">
            <summary>
            Desencripta una variable de tipo string utilizando una llave de encripción
            </summary>
            <param name="source">Texto a encriptar</param>
            <param name="key">Llave de encripción</param>
            <returns>Variable desencriptada</returns>
        </member>
        <member name="T:Kernel.Helpers.DbHelper">
            <summary>
            Extensiones para clases de tipo <see cref="T:Microsoft.EntityFrameworkCore.DbContext"/> y <see cref="T:Microsoft.EntityFrameworkCore.DbSet`1"/>
            </summary>
        </member>
        <member name="M:Kernel.Helpers.DbHelper.ExecuteSqlQuery``1(Microsoft.EntityFrameworkCore.DbContext,Microsoft.EntityFrameworkCore.DbSet{``0},System.String,System.Boolean)">
            <summary>
            Lee el archivo que contiene el query y lo ejecuta
            </summary>
            <typeparam name="TModel"></typeparam>
            <param name="context"></param>
            <param name="dbSet"></param>
            <param name="sqlFile"></param>
            <param name="checkAll"></param>
        </member>
        <member name="M:Kernel.Helpers.DbHelper.ExecuteSqlQueries``1(Microsoft.EntityFrameworkCore.DbContext,Microsoft.EntityFrameworkCore.DbSet{``0},System.String[],System.Boolean)">
            <summary>
            Lee los archivos que están en sqlFiles, que contienen queries y los ejecuta
            </summary>
            <typeparam name="TModel"></typeparam>
            <param name="context"></param>
            <param name="dbSet"></param>
            <param name="sqlFiles"></param>
            <param name="checkAll"></param>
        </member>
        <member name="M:Kernel.Helpers.DbHelper.ExecuteSqlQuery(Microsoft.EntityFrameworkCore.DbContext,System.String)">
            <summary>
            Ejectuta un query que está en el parámetro script
            </summary>
            <param name="context"><see cref="T:Microsoft.EntityFrameworkCore.DbContext"/></param>
            <param name="script">Contiene el valor del query a ejecutar</param>
        </member>
        <member name="M:Kernel.Helpers.DbHelper.SqlCreateSchema(System.String,System.String)">
            <summary>
            Construye un texto que contiene un script sql para crear el esquema especificado de la base de datos especificada
            </summary>
            <param name="databaseName">Nombre de la base de datos</param>
            <param name="schemaName">Nombre del esquema</param>
            <returns></returns>
        </member>
        <member name="M:Kernel.Helpers.DbHelper.SqlDropSchema(System.String,System.String)">
            <summary>
            Construye un texto que contiene un script sql para eliminar el esquema especificado de la base de datos especificada
            </summary>
            <param name="databaseName">Nombre de la base de datos</param>
            <param name="schemaName">Nombre del esquema</param>
            <returns></returns>
        </member>
        <member name="M:Kernel.Helpers.DbHelper.CopyTable(System.String,System.String,System.String,System.String)">
            <summary>
            Copia la estructura de la tabla de origen en la de destino
            </summary>
            <param name="sourceName">Nombre de la tabla de origen</param>
            <param name="destName">Nombre de la tabla de destino</param>
            <param name="schemaName">Nombre del esquema</param>
            <param name="connectionString">Cadena de conexión a la base de datos</param>
        </member>
        <member name="M:Kernel.Helpers.DbHelper.ExecuteSQL(System.String,System.String)">
            <summary>
            Ejecuta un comando SQL
            </summary>
            <param name="cmdText">Texto con los comandos SQL</param>
            <param name="connectionString">Cadena de conexión a la base de datos</param>
        </member>
        <member name="T:Kernel.Helpers.ExternalEndpointHealthCheck">
            <summary>
            Verifica el estado de una conexión
            </summary>
        </member>
        <member name="M:Kernel.Helpers.ExternalEndpointHealthCheck.#ctor(Microsoft.Extensions.Options.IOptions{Kernel.Helpers.ServiceSettings},Microsoft.Extensions.Logging.ILogger{Kernel.Helpers.ExternalEndpointHealthCheck})">
            <summary>
            Verifica el estado de una conexión
            </summary>
            <param name="options"></param>
            <param name="logger"></param>
        </member>
        <member name="M:Kernel.Helpers.ExternalEndpointHealthCheck.CheckHealthAsync(Microsoft.Extensions.Diagnostics.HealthChecks.HealthCheckContext,System.Threading.CancellationToken)">
            <summary>
            Verifica el estado de una conexión
            </summary>
            <param name="context"></param>
            <param name="cancellationToken"></param>
            <returns></returns>
        </member>
        <member name="T:Kernel.Helpers.KernelHelper">
            <summary>
            Clase que contiene varios métodos útiles para la aplicación
            </summary>
        </member>
        <member name="F:Kernel.Helpers.KernelHelper.SerializerOptions">
            <summary>
            Valores de configuración para la serialización del manifiesto. Se utiliza para configurar la serialización del manifiesto, 
            como por ejemplo, para evitar el escape de caracteres especiales en las cadenas.
            </summary>
        </member>
        <member name="F:Kernel.Helpers.KernelHelper.SerializerOptionsNotNulls">
            <summary>
            Valores de configuración para la serialización del manifiesto. Se utiliza para configurar la serialización del manifiesto, 
            como por ejemplo, para evitar el escape de caracteres especiales en las cadenas.
            </summary>
        </member>
        <member name="M:Kernel.Helpers.KernelHelper.GetInnerType(System.Object)">
            <summary>
            Devuelve el tipo de dato que está en una clase de tipo <see cref="T:System.Collections.IEnumerable"/>
            </summary>
            <param name="data"></param>
            <returns></returns>
        </member>
        <member name="M:Kernel.Helpers.KernelHelper.GetInnerType(System.Type)">
            <summary>
            Devuelve el tipo de dato que está en una clase de tipo <see cref="T:System.Collections.IEnumerable"/>
            </summary>
            <param name="modelType">Tipo de dato que representa la clase de tipo <see cref="T:System.Collections.IEnumerable"/></param>
            <returns></returns>
        </member>
        <member name="M:Kernel.Helpers.KernelHelper.JsonDeserialize``1(System.Object,``0@)">
            <summary>
            Deserializa un string
            </summary>
            <typeparam name="TValue">Tipo de dato esperado</typeparam>
            <param name="data">Objeto con la información</param>
            <param name="deserialized">Valor deserializado</param>
            <returns>true si pudo deserializar el objeto contenido en el string</returns>
        </member>
        <member name="M:Kernel.Helpers.KernelHelper.Deserialize``1(System.String,``0@)">
            <summary>
            Deserializa un texto Json
            </summary>
            <typeparam name="TValue">Tipo de objeto esperado</typeparam>
            <param name="json">Texto Json que contiene la información serializada</param>
            <param name="result">Resultado de la deserialización</param>
            <returns>true si se pudo deserializar</returns>
        </member>
        <member name="M:Kernel.Helpers.KernelHelper.AreEqual(System.Object,System.Object)">
            <summary>
            Verifica si dos objetos son iguales en sus propiedades
            </summary>
            <param name="first">Primer objeto a comparar</param>
            <param name="second">Segundo objeto a comparar</param>
            <returns>true si todas sus propiedades son iguales. false en caso contrario</returns>
        </member>
        <member name="M:Kernel.Helpers.KernelHelper.ComputeHash(System.String)">
            <summary>
            Calcula el valor hash del contenido de un archivo/>
            </summary>
            <param name="filePath">Ruta del archivo para calcular su hash</param>
            <returns></returns>
        </member>
        <member name="M:Kernel.Helpers.KernelHelper.GetPlainParams(System.Object[])">
            <summary>
            Devuelve el contenido de los parámetros de una lista de header con la estructura
            KeyValuePair{string, StringValues}
            </summary>
            <param name="args"></param>
            <returns>Lista de string con los valores encontrados en args</returns>
        </member>
        <member name="M:Kernel.Helpers.KernelHelper.GetParam(System.Object[],System.String,System.String@)">
            <summary>
            Verifica si la lista de argumentos tiene el parámetro especificado en "key". 
            Si lo tiene, devuelve el valor de dicho parámetro en "value"
            </summary>
            <param name="args">Lista de argumentos</param>
            <param name="key">Llave a buscar en la lista de parámetros</param>
            <param name="value">Valor del parámetro</param>
            <returns>true si el parámetro está en la lista de argumentos</returns>
        </member>
        <member name="M:Kernel.Helpers.KernelHelper.GetParam``1(System.Object[],System.String,``0@)">
            <summary>
            Verifica si la lista de argumentos tiene el parámetro especificado en "key". 
            Si lo tiene, devuelve el valor de dicho parámetro en "value"
            </summary>
            <typeparam name="T">Tipo de dato esperado</typeparam>
            <param name="args">Lista de argumentos</param>
            <param name="key">Llave a buscar en la lista de parámetros</param>
            <param name="value">Valor del parámetro</param>
            <returns>true si el parámetro está en la lista de argumentos</returns>
        </member>
        <member name="M:Kernel.Helpers.KernelHelper.CopyDirectory(System.String,System.String,System.Boolean)">
            <summary>
            Copia un directorio existente a un nuevo directorio, permitiendo sobreescribir el contenido del directorio existente
            </summary>
            <param name="sourcePath">Nombre del directorio de origen</param>
            <param name="destinationPath">Nombre del directorio de destino</param>
            <param name="overWrite">true para permitir sobre escribir el contenido de los archivos, false en caso contrario.</param>
            <returns></returns>
        </member>
        <member name="M:Kernel.Helpers.KernelHelper.DeleteDirectoryContent(System.String)">
            <summary>
            Elimina los archivos del directorio especificado
            </summary>
            <param name="pathName">Nombre del directorio</param>
        </member>
        <member name="M:Kernel.Helpers.KernelHelper.GetConfiguration(System.String,System.Boolean,System.Boolean)">
            <summary>
            Construye un objeto de tipo <see cref="T:Microsoft.Extensions.Configuration.IConfiguration"/>
            </summary>
            <param name="jsonFile">Nombre del archivo de configuración. null para utilizar el directorio del assembly y el
            nombre de archivo appsettings.json</param>
            <param name="optional">true si es opcional. false por defecto</param>
            <param name="reloadOnChange">true si se recarga cuando cambia</param>
            <returns>Objeto de tipo <see cref="T:Microsoft.Extensions.Configuration.IConfiguration"/></returns>
        </member>
        <member name="T:Kernel.Helpers.Helpers.NEStopwatch">
            <summary>
            Clase para extender <see cref="T:System.Diagnostics.Stopwatch"/>
            </summary>
        </member>
        <member name="P:Kernel.Helpers.Helpers.NEStopwatch.ShowHours">
            <summary>
            Si true, muestra las horas en el formato de texto
            </summary>
        </member>
        <member name="P:Kernel.Helpers.Helpers.NEStopwatch.ShowMinutes">
            <summary>
            Si true, muestra los minutos en el formato de texto
            </summary>
        </member>
        <member name="M:Kernel.Helpers.Helpers.NEStopwatch.ToString">
            <summary>
            Devuelve el valor del tiempo transcurrido con el formato HH:mm:ss.fff si <see cref="P:Kernel.Helpers.Helpers.NEStopwatch.ShowHours"/> es true o ha transcurrido más de 1 hora,
            mm:ss.fff si <see cref="P:Kernel.Helpers.Helpers.NEStopwatch.ShowMinutes"/> es true o ha transcurrido más de 1 minuto; ss.fff en caso contrario
            </summary>
            <returns></returns>
        </member>
        <member name="M:Kernel.Helpers.Helpers.NEStopwatch.StartNew">
            <summary>
            Initializa una nueva instancia de <see cref="T:Kernel.Helpers.Helpers.NEStopwatch"/>, configura la propiedad <see cref="P:System.Diagnostics.Stopwatch.Elapsed"/> en 0, 
            y comienza a medir el tiempo transcurrido. Para mayor información consultar <see cref="M:System.Diagnostics.Stopwatch.StartNew"/>
            </summary>
            <returns>Una nueva instancia de <see cref="T:Kernel.Helpers.Helpers.NEStopwatch"/></returns>
        </member>
        <member name="T:Kernel.Helpers.Helpers.TimeSpanConverter">
            <summary>
            Convierte un valor de tipo <see cref="T:System.TimeSpan"/> a string y viceversa.
            Se utiliza en la serialización de clases que tengan una propiedad de tipo <see cref="T:System.TimeSpan"/>
            Para mayor información consultar <see cref="T:System.Text.Json.Serialization.JsonConverter`1"/>
            </summary>
        </member>
        <member name="M:Kernel.Helpers.Helpers.TimeSpanConverter.Read(System.Text.Json.Utf8JsonReader@,System.Type,System.Text.Json.JsonSerializerOptions)">
            <summary>
            Convierte un string a un valor de tipo <see cref="T:System.TimeSpan"/>
            </summary>
            <param name="reader">The reader.</param>
            <param name="typeToConvert">The type to convert.</param>
            <param name="options">An object that specifies serialization options to use.</param>
            <returns>Objeto de tipo <see cref="T:System.TimeSpan"/></returns>
        </member>
        <member name="M:Kernel.Helpers.Helpers.TimeSpanConverter.ConvertString(System.Text.Json.Utf8JsonReader)">
            <summary>
            Convierte un valor de tipo <see cref="T:System.TimeSpan"/> a string 
            </summary>
            <param name="reader"></param>
            <returns></returns>
        </member>
        <member name="M:Kernel.Helpers.Helpers.TimeSpanConverter.Write(System.Text.Json.Utf8JsonWriter,System.TimeSpan,System.Text.Json.JsonSerializerOptions)">
            <summary>
            Escribe un valor de tipo <see cref="T:System.TimeSpan"/> para serializarlo
            Para mayor información consultar <see cref="T:System.Text.Json.Serialization.JsonConverter`1"/>
            </summary>
            <param name="writer"></param>
            <param name="timeSpan"></param>
            <param name="options"></param>
        </member>
        <member name="T:Kernel.Helpers.ObjectToInferredTypesConverter">
            Convierte un valor de tipo <see cref="T:System.Object"/> a string y viceversa.
            Se utiliza en la serialización de clases que tengan una propiedad de tipo <see cref="T:System.Object"/>
        </member>
        <member name="M:Kernel.Helpers.ObjectToInferredTypesConverter.Read(System.Text.Json.Utf8JsonReader@,System.Type,System.Text.Json.JsonSerializerOptions)">
            <summary>
            Convierte un string a un valor de tipo <see cref="T:System.Object"/>
            </summary>
            <param name="reader"></param>
            <param name="typeToConvert"></param>
            <param name="options"></param>
            <returns></returns>
        </member>
        <member name="M:Kernel.Helpers.ObjectToInferredTypesConverter.Write(System.Text.Json.Utf8JsonWriter,System.Object,System.Text.Json.JsonSerializerOptions)">
            <summary>
            Convierte un valor de tipo <see cref="T:System.Object"/> a string 
            </summary>
            <param name="writer"></param>
            <param name="objectToWrite"></param>
            <param name="options"></param>
        </member>
        <member name="T:Kernel.Helpers.RazorRender">
            <summary>
            Extensiones para renderizado de páginas Razor
            </summary>
        </member>
        <member name="M:Kernel.Helpers.RazorRender.RenderView``1(System.String,``0,Microsoft.Extensions.Logging.ILogger)">
            <summary>
            Renderiza una página Razor
            </summary>
            <typeparam name="TModel">Modelo que utiliza la vista</typeparam>
            <param name="viewName">Nombre de la vista. Debe ser parte del proyecto</param>
            <param name="model">Modelo que contiene la información a renderizar</param>
            <param name="logger"></param>
            <returns></returns>
        </member>
        <member name="M:Kernel.Helpers.RazorRender.RenderPageOrViewFile(System.String,System.Object)">
            <summary>
            Renderiza una página Razor que está en el archivo viewPathName
            </summary>
            <param name="viewPathName">Ruta del archivo de la página Razor</param>
            <param name="model">Modelo que contiene la información a renderizar</param>
            <returns></returns>
        </member>
        <member name="M:Kernel.Helpers.RazorRender.RenderPageOrViewContent(System.String,System.Object)">
            <summary>
            Renderiza una página Razor
            </summary>
            <param name="content">Texto con el contenido de la página Razor</param>
            <param name="model">Modelo que contiene la información a renderizar</param>
            <returns></returns>
        </member>
        <member name="M:Kernel.Helpers.RazorRender.RenderPageOrViewContent``1(System.IServiceProvider,System.String,``0)">
            <summary>
            Renderiza una página Razor
            </summary>
            <param name="serviceProvider">Proveedor de servicios para resolver dependencias</param>
            <param name="viewName">Nombre de la vista Razor</param>
            <param name="model">Modelo que contiene la información a renderizar</param>
            <returns></returns>
        </member>
        <member name="M:Kernel.Helpers.RazorRender.RenderIFrameView(System.String)">
            <summary>
            Renderiza una página Razor que contiene un iframe con la uri especificada. Esto es útil para mostrar páginas externas dentro de la aplicación 
            sin necesidad de redireccionar al usuario a otra página.
            </summary>
            <param name="uri">La URI que se mostrará dentro del iframe</param>
            <returns>El contenido HTML del iframe</returns>
        </member>
        <member name="T:Kernel.Helpers.RazorViewToStringRenderer">
            <summary>
            Clase que permite renderizar una vista Razor a string. Esto es útil para generar contenido dinámico basado en vistas Razor, 
            como correos electrónicos o documentos PDF, sin necesidad de una solicitud HTTP real.
            </summary>
        </member>
        <member name="M:Kernel.Helpers.RazorViewToStringRenderer.#ctor(Microsoft.AspNetCore.Mvc.Razor.IRazorViewEngine,Microsoft.AspNetCore.Mvc.ViewFeatures.ITempDataProvider,Microsoft.Extensions.DependencyInjection.IServiceScopeFactory)">
            <summary>
            Constructor de la clase RazorViewToStringRenderer que recibe las dependencias necesarias para renderizar vistas Razor a string.
            </summary>
            <param name="viewEngine">Motor de vistas Razor.</param>
            <param name="tempDataProvider">Proveedor de datos temporales.</param>
            <param name="scopeFactory">Fábrica de alcance de servicios para crear ámbitos de servicio.</param>
        </member>
        <member name="M:Kernel.Helpers.RazorViewToStringRenderer.RenderViewToStringAsync``1(System.String,``0)">
            <summary>
            Renderiza una vista Razor a un string de forma asíncrona.
            </summary>
            <typeparam name="TModel">Tipo del modelo que se pasará a la vista.</typeparam>
            <param name="viewName">Nombre de la vista Razor.</param>
            <param name="model">Modelo a pasar a la vista.</param>
            <returns>String resultante de la vista renderizada.</returns>
            <exception cref="T:System.InvalidOperationException"></exception>
        </member>
        <member name="M:Kernel.Helpers.RazorViewToStringRenderer.RenderViewToString``1(System.String,``0)">
            <summary>
            Renderiza una vista Razor a un string de forma síncrona.
            </summary>
            <typeparam name="TModel">Tipo del modelo que se pasará a la vista.</typeparam>
            <param name="viewName">Nombre de la vista Razor.</param>
            <param name="model">Modelo a pasar a la vista.</param>
            <returns>String resultante de la vista renderizada.</returns>
        </member>
        <member name="T:Kernel.Helpers.ServiceSettings">
            <summary>
            Clase con valores de configuración para la verificación del estado de una conexión
            </summary>
        </member>
        <member name="P:Kernel.Helpers.ServiceSettings.KernelWebAPIHost">
            <summary>
            Dirección del host de aplicaciones Web API del kernel
            </summary>
        </member>
        <member name="P:Kernel.Helpers.ServiceSettings.ApiKey">
            <summary>
            Llave secreta de la API
            </summary>
        </member>
        <member name="T:Kernel.Helpers.IHttpClientErrorPolicy">
            <summary>
            Interfaz utilizada para la las políticas de reintentos de transmisión de datos
            </summary>
        </member>
        <member name="M:Kernel.Helpers.IHttpClientErrorPolicy.OnBreak(Polly.DelegateResult{System.Net.Http.HttpResponseMessage},System.TimeSpan)">
            <summary>
            Método que se llama cuando el enlace con el servidor HttpClient se rompe
            </summary>
            <param name="arg1"></param>
            <param name="arg2"></param>
        </member>
        <member name="M:Kernel.Helpers.IHttpClientErrorPolicy.OnReset">
            <summary>
            Método que se llama cuando el enlace con el servidor HttpClient se restaura
            </summary>
        </member>
        <member name="M:Kernel.Helpers.IHttpClientErrorPolicy.OnRetry(Polly.DelegateResult{System.Net.Http.HttpResponseMessage},System.TimeSpan)">
            <summary>
            Método que se llama cuando hay reintentos para restablecer el enlace con el servidor HttpClient
            </summary>
            <param name="arg1"></param>
            <param name="arg2"></param>
        </member>
        <member name="T:Kernel.Helper.NEException">
            <summary>
            Clase para el manejo de errores.
            </summary>
        </member>
        <member name="P:Kernel.Helper.NEException.Project">
            <summary>
            Número del proyecto asociado al error
            </summary>
        </member>
        <member name="P:Kernel.Helper.NEException.Module">
            <summary>
            Número del módulo
            </summary>
        </member>
        <member name="P:Kernel.Helper.NEException.Error">
            <summary>
            Número de error
            </summary>
        </member>
        <member name="P:Kernel.Helper.NEException.FullError">
            <summary>
            Devuelve el módulo y error
            </summary>
        </member>
        <member name="P:Kernel.Helper.NEException.InnerExceptions">
            <summary>
            Lista de excepciones
            </summary>
        </member>
        <member name="M:Kernel.Helper.NEException.#ctor(System.String,System.Exception,System.Int32,System.Int32,System.Int32)">
            <summary>
            Clase para el manejo de errores
            </summary>
            <param name="message">Mensaje del error</param>
            <param name="innerException">Inner exception del error</param>
            <param name="project"></param>
            <param name="module">Número del módulo</param>
            <param name="error">Número de error</param>
        </member>
        <member name="M:Kernel.Helper.NEException.GetExceptionMessage">
            <summary>
            Devuelve el texto de error de todas las excepciones contenidas en la lista de excepciones
            </summary>
            <returns>Texto con el error de todas las excepciones contenidas en la lista de excepciones</returns>
        </member>
        <member name="M:Kernel.Helper.NEException.op_Implicit(Kernel.Helper.NEException)~System.String">
            <summary>
            Devuelve el texto de error de todas las excepciones contenidas en la lista de excepciones
            </summary>
            <param name="ex">Parámetro de tipo <see cref="T:Kernel.Helper.NEException"/></param>
        </member>
        <member name="M:Kernel.Helper.NEException.GetExceptionMessage(System.Exception)">
            <summary>
            Crea y devuelve un texto que representa la excepción.
            </summary>
            <param name="ex">Parámetro de tipo <see cref="T:System.Exception"/></param>
            <returns>Un texto que es la representación de la excepción.</returns>
        </member>
        <member name="M:Kernel.Helper.NEException.AddNEInnerExceptions(Kernel.Helper.NEException)">
            <summary>
            Guarda las excepciones de tipo <see cref="T:Kernel.Helper.NEException"/>
            </summary>
            <param name="ex"></param>
        </member>
        <member name="M:Kernel.Helper.NEException.GetWebExceptionMessage(System.Exception)">
            <summary>
            Crea y devuelve un texto que representa la excepción.
            </summary>
            <param name="ex">Parámetro de tipo <see cref="T:System.Exception"/></param>
            <returns>Un texto que es la representación de la excepción.</returns>
        </member>
        <member name="M:Kernel.Helper.NEException.GetModule">
            <summary>
            Devuelve el valor de la propiedad <see cref="P:Kernel.Helper.NEException.Module"/>
            </summary>
            <returns></returns>
        </member>
        <member name="M:Kernel.Helper.NEException.GetError">
            <summary>
            Devuelve el valor de la propiedad <see cref="P:Kernel.Helper.NEException.Error"/>
            </summary>
            <returns></returns>
        </member>
    </members>
</doc>
