controller¶
-
class
zaguan.controller.WebContainerController¶ Bases:
objectClase base para los controladores de contenedores web. Controla la interaccion con el browser en ambas direcciones.
Variables: - processors (list) – lista de procesadores.
- inspector (ZaguanInspector) – se instancia solo cuando se usa WebKit version 1.
-
__init__()¶ Constructor de la clase. Inicializa
WebContainerController.processorscon una lista vacía.
-
add_processor(url_word, instance=None)¶ Agrega un procesador al browser. Un procesador es una instancia de la funcion .Enlaza una URI con un
BaseActionControllerpara que desde el browser se pueda llamar a metodos de Python.Parameters: url_word (str) – clave que linkea un -
add_processor._inner(uri)¶ Procesa una URI y la divide en dos partes: el nombre del método y los datos (parámetros a pasar al metodo). Busca el método en una instancia de
BaseActionControllery si existe lo ejecuta.Parameters: uri (str) – la URI a parsear. Raises: NotImplementedError – excepcion que se lanza cuando el método que está llamando el browser no fué implementado en la instancia de BaseActionController.
-
-
get_browser(uri, settings=None, debug=False, webkit_version=None, debug_callback=None)¶ Obtiene el browser, el metodo para inyectar JS y la implementacion del wrapper de WebKit. Conecta el método
WebContainerController.on_navigation_requestedal eventoresource-request-startingdel browser, esto es para poder atender a nuevas peticiones de URI.Parameters: Returns: el objeto
WebViewReturn type:
Este es el método que se ejecuta cada vez que en el browser se pide cargar una URI. Llama a
WebContainerController.process_uri()con la URI que obtiene de la request que se pasa como parametro.Los argumentos cambian segun la version de WebKit:
- Version 1: no existe documentacion.
- Version 2: http://lazka.github.io/pgi-docs/WebKit2-4.0/classes/WebView.html#WebKit2.WebView.signals.resource_load_started
-
process_uri(uri)¶ Por cada procesador registrado manda a procesar la URI.
Parameters: uri (str) – la URI a procesar.