Solicitud
La solicitud determina el entorno en donde será ejecutado una operación. Esta clase contiene la información de lo solicitado, es la encargada de incluir las clases del núcleo y del hilo en general de ejecución.
Solicitud Web
La solicitud_web abstrae el ciclo request *response en dos etapas llamadas Eventos y Servicios permitiendo ejecutar el esquema de Componentes del framework.
Eventos: abstrae la etapa http
request
. Todos los componentes que participaron del pedido de página anterior son instanciados y escuchan si su par javascript dejo alguna huella en el$_POST
de php. A medida de que cada componente descubre los eventos acontecidos, se escuchan las callbacks definidas en el Controlador del componente, permitiendo al proyecto actuar acorde a los eventos producidos.Servicios: abstrae la etapa http
response
: Una vez superada la etapa de eventos (lo que pasó) se dispone a construir el formato de salida (lo que vendrá). Por lo general el formato de salida (denominado servicio) es el html (servicio generar_html). Nuevamente se necesita consultar al proyecto cómo estos componentes van a graficarse, que datos poseen. Allí es cuando se entra en la etapa de configuración del servicio, nuevamente se escuchan callbacks que van configurando uno a uno los distintos componentes.
Tipos de servicio
generar_html
: Es el servicio predeterminado, incluye el Tipo de página y la Zona de la operación. Y luego ejecuta el métodogenerar_html
de todos los componentes en forma recursiva, incluyendo todo el javascript estático y dinámico que todos los componentes requieren.vista_toba_impr_html
: Utiliza una clase que implemente la interface toba_impresion (por ejemplo impr_html para construir un html pensado para impresión. Al CI principal de la operación el destino del servicio se le invoca el método vista_impresion_html, el cual el programador puede extender para armar su propio layout de la impresión.cascadas_efs
: Escucha un pedido de cascadas de efs, ejecutando en el formulario el método toba_ei_formulario::servicio__cascadas_efs.ejecutar
: Ejecuta el métodoservicio__ejecutar
en el componente seleccionado en el servicio. La idea es brindar una forma sencilla de comunicación entre un componente en javascript con su par PHP.
Solicitud de Acción PHP
La solicitud_accion permite ejecutar archivos php planos, sin acceso al esquema de componentes, menú, javascript, tipo de página, etc. Pensado para salidas muy distintas a las de una página web, que requieren enviar headers especiales y contenido en general no HTML.
Solicitud de Consola
La solicitud_consola permite ejecutar una operacion en un esquema de consola a través del comando:
toba item ejecutar -p proyecto -t operacion -u usuario
Desde ya el ambiente de ejecución no cuenta con los Componentes disponibles en la solicitud_web ni el esquema eventos-servicios. La solicitud_consola ejecuta el archivo .php asociado a la operación, contando este con las mismas primitivas de toba que no sean exclusivas de un ambiente web, no aplica por ej. el esquema de componentes y el de memoria (POST, GET y SESSION).