Changes between Version 4 and Version 5 of Version2/Tutoriales/Consola_Web/Tutorial_1_Hello_World


Ignore:
Timestamp:
Aug 19, 2010, 12:09:16 AM (14 years ago)
Author:
adelcastillo
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • Version2/Tutoriales/Consola_Web/Tutorial_1_Hello_World

    v4 v5  
    33La consola web de Opegnsys 2 está diseñada para ser altamente extensible mediante el desarrollo de plugins. Existe un conjunto de '''puntos de extensión''', en los que cada plugin puede añadir nuevas características.
    44
    5 Básicamente hay dos puntos de extensión principalmente: el '''Panel Principal''' y el '''Panel Contextual'''. La cnsola web muestra en la parte superior de cada página una serie de pestañas. Una de ellas siempre es el Panel de acciones llamado simplemente "Panel" de aquí en adelante. Dentro de ese panel aparece iconos/acciones genéricas que los plugins actualmente activos han introducido. Por ejemplo, algunas acciones de ejemplo podrían ser "Buscar Ordenador" o "Administrar usuarios".
     5Básicamente hay dos puntos de extensión principalmente: el '''Panel Principal''' y el '''Panel Contextual'''. La consola web muestra en la parte superior de cada página una serie de pestañas. Una de ellas siempre es el Panel de acciones llamado simplemente "Panel" de aquí en adelante. Dentro de ese panel aparece iconos/acciones genéricas que los plugins actualmente activos han introducido. Por ejemplo, algunas acciones de ejemplo podrían ser "Buscar Ordenador" o "Administrar usuarios".
    66
    77El otro punto de extensión es el Panel Contextual que aparece en muchas páginas de la consola web, y que muestra acciones relacionadas con lo que actualmente se está mostrando al usuario. Esas acciones son puestas ahí por los plugins, dependiendo de la url que actualmente se esté mostrando. Por ejemplo, si en el "navegador" se está mostrando actualmente un ordenador, el plugin de Inventorio de Hardware añade la acción de "Ver Perfil de Hardware" al panel contextual, que muestra el perfil de hardware del ordenador actual.
     
    99== Estructura de directorios ==
    1010
    11 Todos los plugins se localizan dentro del árbol de directorios de Opengnsys en web/pluginmanager/plugins/<nombre del plugin>. Dentro de esa carpeta debe definir el fichero __init__.py que contendrá la clase Plugin, que heredará de PluginBase, y es la que define la funcionalidad principal del plugin. La clase PluginBase define todas las funciones que un plugin puede definir. Por ejemplo existe una función llamada "install" que permite al plugin ejecutar el código que necesite a la hora de crear un plugin.
     11Todos los plugins se localizan dentro del árbol de directorios de Opengnsys en web/pluginmanager/plugins/<nombre del plugin>. El plugin sabrá su nombre UNIX por la carpeta en la que está localizada. Dentro de esa carpeta debe definir el fichero __init__.py que contendrá la clase Plugin, que heredará de PluginBase, y es la que define la funcionalidad principal del plugin. La clase PluginBase define todas las funciones que un plugin puede definir. Por ejemplo existe una función llamada "install" que permite al plugin ejecutar el código que necesite a la hora de crear un plugin.
    1212
    13 Además, también es necesario definir el fichero plugin.conf, que contiene la configuración más básica del plugin, y está en formato INI. Esto incluye el nombre UNIX del plugin, el nombre visible en la aplicación, una pequeña descripción y la versión. Además de eso, también contiene más o menos esa misma información sobre cada acción que defina el plugin, tanto si son acciones que vayan a aparecer en el Panel Principal como si van a aparecer en el Panel Contextual.
     13Además, también es necesario definir el fichero plugin.conf, que contiene la configuración más básica del plugin, y está en formato INI. Esto incluye el nombre visible en la aplicación, una pequeña descripción y la versión. Además de eso, también contiene más o menos esa misma información sobre cada acción que defina el plugin, tanto si son acciones que vayan a aparecer en el Panel Principal como si van a aparecer en el Panel Contextual.
    1414
    1515
     
    2222{{{
    2323[plugin]
    24 name = hello_world
    2524human_name = Hello World! Tutorial 1
    2625version = 1.0.0
    2726
    2827[action/hello]
    29 name = hello
    3028description = Displays the text Hello World! to the user
    3129human_name = Hello
     
    3331}}}
    3432
    35 Lo que acabamos de hacer es describir nuestro plugin, y la acción "hello", en el formato INI y con la nomenclatura de Opengnsys. Pero sólo hemos descrito cierta información, aun no hemos programado cómo funcionará. Esto lo haremos en Python dentro de __init__.py:
     33Lo que acabamos de hacer es describir nuestro plugin, y la acción "hello" (el nombre UNIX se obtiene por el nombre de la sección), en el formato INI y con la nomenclatura de Opengnsys. Pero sólo hemos descrito cierta información, aun no hemos programado cómo funcionará. Esto lo haremos en Python dentro de __init__.py:
    3634
    3735{{{