WordProcessorController

Module Contents

word_processor_default_cfg
class WordProcessorController(mode=0)

Controlador del modulo de procesamiento de palabras. Administra los modulos y permite crear, modificar y establecer diferentes configuraciones para los modulos.

Al iniciar se conecta a la base de datos para obtener tanto la configuración activa como los perfiles correspondientes a dicho tema.

__initializate_cfg(self, mode)

[private] Obtiene el tema de configuración activa para cada modulo y carga cada perfil de configuración.

__initialize_controller(self)

[private] Inicializa el controlador cargando los perfiles de configuración activos para cada modulo.

__initialize_conjugator(self)

[private] Verifica si ya existen entradas para los perfiles de configuración en la base de datos e inicializa el conjugador.

Si no existen perfiles, carga el archivo de configuración por defecto y lo almacena en la base de datos. En caso contrario, obtiene la configuración activa desde la base de datos.

__initialize_conjugator_cfg(self)

[private] Inicializa la configuración del conjugador cuando aun no hay entradas en la base de datos. Obtiene los datos del archivo de configuración por defecto y almacena las entradas.

__generate_verb_exceptions(self)

[private] A partir de las excepciones almacenadas en el archivo de configuraciones por defecto crea una lista con todas las expceciones para insertar en la base de datos.

__get_conjugator_cfg(self)

[private] Obtiene las configuraciones del conjugador almacenadas en la base de datos para el tema activo.

__initialize_fuzzy_generator(self)

[private] Verifica si existen entradas en la base de datos para el generador de terminos distorcionados. De existir obtiene las configuraciones de la base de datos. En caso contrario, almacena en la base de datos las configuraciones almacenadas en el archivo de configuración por defecto.

__initialize_fuzzy_generator_cfg(self)

[private] A partir del archivo de configuraciones, inicializa la configuracion por defecto en la base de datos.

__get_fuzzy_generator_cfg(self)

[private] Obtiene las configuraciones del generador de terminos distoricionados para el tema activo desde la base de datos

__initialize_noun_conversor(self)

[private] Inicializa el conversor de sustantivos. Si ya existe la información en la base de datos, obtiene los datos para el tema activo desde la misma. En caso contario, obtiene la configuración por defecto del archivo de configuraciones y almacena las mismas en la base de datos

__initialize_noun_conversor_cfg(self)

[private] Obtiene la configuración por defecto del conversor de sustantivos y hace el almacenamiento inicial de dicha configuración en la base de datos.

__get_noun_conversor_cfg(self)

[private] Obtiene de la base de datos la configuración del conversor de sustantivos para el tema activo.

retry_initialization(self)

Reintenta la inicialización del controlador.

get_conjugator_configs(self)

Devuelve la configuración activa del conjugador.

Returns:[Dict] - Objeto de configuración general activa del conjugador.
get_conjugator_exceptions(self)

Devuelve el conjunto de excepciones activas para el conjugador.

Returns:[List(Dict)] - Lista de excepciones activa del conjugador.
get_conjugator_irr_groups(self)

Devuelve la configuración de grupos irregulares activa para el conjugador.

Returns:[Dict] - Lista de grupos irregulares activa del conjugador.
get_noun_conversor_configs(self)

Devuelve la configuración activa para el conversor de sustantivos.

Returns:[Dict] - Objeto de configuración activa del conversor de sustantivos.
get_fuzzy_generator_configs(self)

Devuelve la configuración activa para el generador fuzzy.

Returns:[Dict] - Objeto de configuración activa del generador fuzzy.
map_conjugator_exception(self, exception)

Mapea el nombre del theme en una excepción

Exception:[Dict] - Objeto con los datos de la excepción
Returns:[Dict] - Clon del objeto original con el theme name agregado.
filter_theme_exceptions(self, theme_name, exception_list=None)

Filtra las excepciones correspondientes a un determinado theme de una lista de excepciones.

Theme_name:[String] - Nombre del tema.
Exception_list:[List(Dict)] - Lista de excepciones.
Returns:[List(Dict)] - Lista de excepciones filtradas.
get_available_conjugator_configs(self)

Devuelve todas las configuraciones disponibles para el conjugador

Returns:[List(Dict)] - Lista con todos temas de configuración disponibles.
get_available_fuzzy_gen_configs(self)

Devuelve todas las configuraciones disponibles para el generador de terminos Fuzzy.

Returns:[List(Dict)] - Lista con todos los temas de configuración disponibles.
get_available_conversor_configs(self)

Devuelve todas las configuraciones disponibles para el conversor de sustantivos.

Returns:[List(Dict)] - Lista con todos los temas de configuración disponibles.
__get_existing_themes(self, collection_name)

Obtiene todos los themes disponibles dentro de una collección de la base de datos

Collection_name:
 Nombre de la colección de la base de datos donde buscar los temás disponibles
Returns:[List(String)] - Lista con los nombres de todos los temas disponibles.
add_conjugator_config(self, theme_name, theme_config, theme_irregular_groups)

Agrega un nuevo tema de configuración general y grupos de verbos irregulares a la base de datos. El nuevo tema no debe existir.

Theme_name:[String] - Nombre del tema.
Theme_config:[Dict] - Objeto de configuración con el nuevo tema de configuración general. Debe

validar con la schema de validación correspondiente.

Theme_irregular_groups:
 [Dict] - Objeto de configuración con el la configuración de grupos irregulares

para el nuevo tema. Debe validar con la schema de validación correspondiente.

Returns:[Bool] - True si se ha agregado exitosamente, False en caso contrario.
add_conjugator_exceptions(self, theme_name, exceptions)

Agrega un conjunto de excepciones nuevo para el conjugador a la base de datos para el theme indicado. El theme debe existir.

Theme_name:[String] - Nombre del tema.
Exceptions:[List(Dict)] - Arreglo de excepciones a registrar. Debe cumplir con la schema de validación.
Returns:[bool] - True si se ha agregado exitosamente, False en caso contrario.
add_fuzzy_gen_config(self, theme_name, config)

Agrega un nuevo theme de configuración para el generador fuzzy. No debe existir un theme con el nombre indicado registrado.

Theme_name:[String] - Nombre del theme a agregar
Config:[Dict] - Objeto de configuración para el nuevo theme. Debe cumplir con la schema de validación
Returns:[bool] - True si se ha agregado exitosamente, False en caso contrario.
add_noun_conversor_config(self, theme_name, config)

Agrega un nuevo theme de configuración para el conversor de sustantivos. No debe existir un theme con el nombre indicado previamente registrado.

Theme_name:[String] - Nombre del theme a agregar
Config:[Dict] - Objeto de cponfiguración para el nuevo theme. Debe cumplir con la schema de validación.
Returns:[bool] - True si se ha agregado exitosamente, False en caso contrario.
__get_theme_data(self, theme_name, collection_name)

[Private] Obtiene los datos de configuración para un tema en particular en la colleción indicada.

Theme_name:[String] - Nombre del tema a buscar.
Collection_name:
 [String] - Nombre de la colección en la cual buscar
Returns:[Dict] - Objeto de configuración
update_conjugator_configs(self, theme_name, theme_config_mod, theme_irr_groups_mod)

Modifica la configuración y los grupos irregulares para un tema determinado. El tema a editar debe existir, no se puede modificar el tema por defecto.

Theme_name:[String] - Nombre del tema a editar
Theme_config_mod:
 [Dict] - Objeto con los campos a actualizar de la configuración. Los campos que se editen

sobre el tema seleccionado deben cumplir con la schema de validación.

Theme_irr_groups_mod:
 [Dict] - Objeto con los campos a actualizar de los grupos de verbos irregulares. Los

campos que se editen sobre el tema seleccionado deben cumplir con la schema de validación.

Returns:[Bool] - True si la edición fue exitosa, False en caso contrario.
__check_exception_existence(self, theme_name, exception_key)

Valida que una excepción exista, en caso contrario devuelve false.

Theme_name:[String] - Nombre del tema.
Exception_key:[String] - Key de la excepción.
Returns:[Bool] - True si la excepción existe, False en caso contrario.
update_conjugator_exception(self, theme_name, exception_key, exception_new_data)

Actualiza una excepción del conjunto de excepciones del conjugador para un tema. La key y el tema deben existir. No se pueden editar excepciones del tema por defecto. La excepción debe complir con la schema de validación. Por las caracteristicas de la excepción, se requiere que se provea el objeto completo y no solo los campos a modificar.

Theme_name:[String] - Nombre del tema.
Exception_key:[String] - Key o verbo del cual se eliminará la excepción.
Returns:[bool] - True si se elimino exitosamente, False en caso contrario.
update_fuzzy_gen_config(self, theme_name, theme_config_mod)

Actualiza un tema de configuración para el generador de terminos fuzzy. El thema solicitado debe existir y no puede ser el tema por defecto. Además el tema actualizado debe cumplir con la schema de validación.

Theme_name:[String] - Nombre del tema a actualizar.
Theme_config_mod:
 [Dict] - Objeto con los campos a actualizar del theme.
Returns:[bool] - True si la actualización fue exitosa, False en caso contrario.
update_noun_conversor_config(self, theme_name, theme_config_mod)

Actualiza un tema de configuración para el conversor de sustantivos. El tema debe existir y no debe ser el tema por defecto. Además el tema debe cumplir con la schema de validación.

Theme_name:[String] - Nombre del tema a actualizar.
Theme_config_mod:
 [Dict] - Campos a modificar de la configuración actual.
Returns:[Bool] - True si la actualización es exitosa, False en caso contrario.
remove_conjugator_theme(self, theme_name)

Elimina completamente un tema de configuración para el conjugador. El tema debe existir, no se puede eliminar el tema por defecto. Si el tema a a eliminar es el activo actualmente, se cambia el tema al tema por defecto.

Theme_name:[String] - Nombre del tema.
Returns:[bool] - True si el borrado se realizó exitosamente, False en caso contrario.
remove_fuzzy_gen_theme(self, theme_name)

Elimina completamente un tema de configuración para el generador fuzzy. El tema debe existir, no se puede eliminar el tema por defecto.

Theme_name:[String] - Nombre del tema
Returns:[bool] - True si el borrado se realizó exitosamente, False en caso contrario.
remove_noun_conversor_theme(self, theme_name)

Elimina completamente un tema de configuración para el conversor de sustantivos. El tema debe existir, no se puede elimnar el tema por defecto.

Theme_name:[String] - Nombre del tema
Returns:[bool] - True si el borrado se realizó exitosamente, False en caso contrario.
set_conjugator_active_theme(self, theme_name)

Cambia el tema de configuración activo del conjugador. En primera instancia guarda los cambios en la base de datos. El tema debe existir y no debe ser el tema actual.

Theme_name:[String] - Nombre del tema
Returns:[Bool] - True si el cambio se realizó con exito, False en caso contrario.
set_fuzzy_generator_active_theme(self, theme_name)

Cambia el tema de configuración activo del generador fuzzy. En primera instancia guarda los cambios en la base de datos. El tema debe existir y no debe ser el tema actual.

Theme_name:[String] - Nombre del tema
Returns:[Bool] - True si el cambio se realizó con exito. False en caso contrario.
set_noun_conversor_active_theme(self, theme_name)

Cambia el tema de configuración activo del conversor de sustantivos. En primera instancia guarda los cambios en la base de datos. El tema debe existir y no debe ser el tema actual.

Theme_name:[String] - Nombre del tema.
Returns:[Bool] - True si el cambio se realizó con exito. False en caso contrario.
conjugate_verb(self, verb='')

Obtiene el objeto de conjugación para el verbo solicitado utilizando el conjugador. Si la inicialización no se hubiese realizado exitosamente no realiza la conjugación.

Verb:[String] - verbo a conjugar.
Returns:[Dict] - Objeto de conjugación con las conjugaciones realizadas al verbo seleccionado. Si el objeto de

configuración no esta correctamente inicializado devuelve None.

conjugate_verb_table_view(self, verb='')

Variación de conjugate_verb. Imprime por consola una tabla con la conjugación. Usar solo para testing. Si la inicialización no se ha realizado correctamente se sale prematuramente del método.

Verb:[String] - Verbo a conjugar.
get_fuzzy_set(self, term='', max_distance=1)

Obtiene un set de deformaciones para un termino que cumplan con la distancia máxima indicada. Si la inicialización no se ha realizado correctamente no se realiza la operación.

Term:[String] - Termino a deformar.

;max_distanca: [Int] - Distancia de demerau-levenshtein máxima que puede tener el término deformado con el original, si no es provisto, por defecto será 1.

Returns:[Dict] - Si no se ha inicializado correctamente el controlador: None, En caso contrario devuelve un objeto

con todas las deformaciones obtenidas.

get_plural(self, noun='')

Obtiene el plural de un sustantivo. Si la inicialización no se ha completado correctamente no se realiza la operación.

Noun:[String] - Sustantivo a partir del cual obtener el plural.
Returns:[String] - Si no se ha inicializado correctamente el controlado: None. En caso contrario, una cadena con el

plural del sustantivo.