Herramientas de usuario

Herramientas del sitio


plugins:microcomponents

Diferencias

Muestra las diferencias entre dos versiones de la página.

Enlace a la vista de comparación

Ambos lados, revisión anterior Revisión previa
Próxima revisión
Revisión previa
plugins:microcomponents [2020/02/21 15:15]
fcristina [Exportando un componente]
plugins:microcomponents [2021/04/30 19:19] (actual)
Línea 1: Línea 1:
 ====== Soporte para desarrollo de microcomponentes ====== ====== Soporte para desarrollo de microcomponentes ======
  
-Las modificaciones aquí detalladas aplican tanto para el desarrollo de micro componentes como para componentes tradicionales.  La metodología aplicada en cada caso definirá la semántica del componente.+Las modificaciones aquí detalladas se encuentran disponibles a partir de la revisión r2819 y aplican tanto para el desarrollo de micro componentes como para componentes tradicionales.  La metodología aplicada en cada caso definirá la semántica del componente.
  
 ===== Definición general ===== ===== Definición general =====
Línea 7: Línea 7:
 Micro componentes refiere a desarrollos con tiempo de vida acotado, encapsulando modificaciones de LY CORE específicamente (CORELEVEL = 0), sobre una base de datos independiente y un proyecto en Eclipse independiente que referencia a org.libertya y que modifica clases de CORE exclusivamente. Micro componentes refiere a desarrollos con tiempo de vida acotado, encapsulando modificaciones de LY CORE específicamente (CORELEVEL = 0), sobre una base de datos independiente y un proyecto en Eclipse independiente que referencia a org.libertya y que modifica clases de CORE exclusivamente.
  
-Los micro componentes nacen de requerimientos para LY CORE o bien a partir de necesidades de modificaciones de CORE sobre una instancia en producción de un cliente en particular; pero que luego estos cambios eventualmente serán parte de LY Standard (bbdd libertya_core y proyecto org.libertya).+Los micro componentes nacen de requerimientos para LY CORE o bien a partir de necesidades de modificaciones de CORE sobre una instancia en producción de un cliente en particular; pero que luego estos cambios eventualmente serán parte de la versión //master// de Libertya.
  
 Un micro componente implica: Un micro componente implica:
Línea 14: Línea 14:
   * Ítem de lista desordenadaCreacion de un proyecto en Eclipse que referencia a org.libertya y solo modifica clases de CORE (además del preinstall, etc).   * Ítem de lista desordenadaCreacion de un proyecto en Eclipse que referencia a org.libertya y solo modifica clases de CORE (además del preinstall, etc).
  
-Los micro componentes se incorporarán a LY Standard cuando se considere necesario, mediante merge de fuentes y el uso de COPYTOCHANGELOG para metadatos. Los UIDs serán únicos desde el momento de su creación y para siempre, bajo una nueva definición de los mismos. Por consiguiente bajo la nueva metodología, no exisitrá mapeo de UIDs.  Un micro componente incorporado a LY Standard deja de existir inmediatamente. El tiempo de vida de los micro componentes debería ser acotado, cuanto más tiempo pase, más complejo será incorporarlo a CORE Standard, o bien más complejo de mantener en el tiempo debido a eventuales modificaciones posteriores en CORE.+Los micro componentes se incorporarán al master de Libertya cuando se considere necesario, mediante merge de fuentes y el uso de COPYTOCHANGELOG para metadatos. Los UIDs serán únicos desde el momento de su creación y para siempre, bajo una nueva definición de los mismos. Por consiguiente bajo la nueva metodología, no exisitrá mapeo de UIDs.  Un micro componente incorporado al master de Libertya deja de existir inmediatamente. El tiempo de vida de los micro componentes debería ser acotado, cuanto más tiempo pase, más complejo será incorporarlo al master, o bien más complejo de mantener en el tiempo debido a eventuales modificaciones posteriores en CORE.
  
 Una instancia en producción que requiera actualizar su versión de CORE y que tenga micro componentes necesitará “certificar” la instancia en cuestión, realizando los merges necesarios si es que dichos micro componentes deben mantenerse en la instancia.  En caso de no poseer micro componentes, la “certificacion” simplemente implica una actualización tradicional. Una instancia en producción que requiera actualizar su versión de CORE y que tenga micro componentes necesitará “certificar” la instancia en cuestión, realizando los merges necesarios si es que dichos micro componentes deben mantenerse en la instancia.  En caso de no poseer micro componentes, la “certificacion” simplemente implica una actualización tradicional.
Línea 148: Línea 148:
   - Creación de un nuevo prefijo.  El primer paso es crear en el master libertya_core un nuevo prefijo a utilizar, el cual debe ser orientativo y relacionado con el desarrollo a realizar, más allá que el campo descripcion de la tabla período permite detallar con claridad el alcance del mismo.   Por ejemplo, prefijo EJEMPLOMC.   - Creación de un nuevo prefijo.  El primer paso es crear en el master libertya_core un nuevo prefijo a utilizar, el cual debe ser orientativo y relacionado con el desarrollo a realizar, más allá que el campo descripcion de la tabla período permite detallar con claridad el alcance del mismo.   Por ejemplo, prefijo EJEMPLOMC.
   - Copiado de BBDD para desarrollo de micro componente.  Una vez reservado el prefijo en cuestión, se deberá clonar la BBDD para el desarrollo del componente, generando una BBDD que permita identificar el contenido de la misma, por ejemplo libertya_micro_PACKAGENAME, donde PACKAGENAME es el nombre del package que se definirá en el nuevo micro componente, pero sin org.libertya.core.micro (dado que todos los micro componentes iniciarán con dicho prefijo).   - Copiado de BBDD para desarrollo de micro componente.  Una vez reservado el prefijo en cuestión, se deberá clonar la BBDD para el desarrollo del componente, generando una BBDD que permita identificar el contenido de la misma, por ejemplo libertya_micro_PACKAGENAME, donde PACKAGENAME es el nombre del package que se definirá en el nuevo micro componente, pero sin org.libertya.core.micro (dado que todos los micro componentes iniciarán con dicho prefijo).
-  - Creación de un nuevo mico componente.  Acto seguido se debe crear la entrada del nuevo micro componente en la ventana de Componentes, indicando “Es micro componente”, e indicando además el packagename correspondiente.  Nuevamente, debería ser un nombre intuitivo, y respetando las relgas previamente definidias (org.libertya.core.micro.rXXXX…. , donde XXXX refiere a la revisión de CORE sobre la cual nos estamos apoyando.).  De todas maneras este package name se utilizaría de manera acotada, dado que las clases de CORE tendran su packagename original dentro del proyecto.+  - Creación de un nuevo micro componente.  Acto seguido se debe crear la entrada del nuevo micro componente en la ventana de Componentes, indicando “Es micro componente”, e indicando además el packagename correspondiente.  Nuevamente, debería ser un nombre intuitivo, y respetando las relgas previamente definidias (org.libertya.core.micro.rXXXX…. , donde XXXX refiere a la revisión de CORE sobre la cual nos estamos apoyando.).  De todas maneras este package name se utilizaría de manera acotada, dado que las clases de CORE tendran su packagename original dentro del proyecto.
   - Inicio de bitácora.  Como en los componentes tradicionales, se debe crear un componentversion e iniciar el registro de la bitácora.   - Inicio de bitácora.  Como en los componentes tradicionales, se debe crear un componentversion e iniciar el registro de la bitácora.
   - Creación de proyecto en Eclipse. El proyecto referenciará al master org.libertya y contendrá de manera exclusiva clases modificadas del CORE de Libertya.  Únicamente contendrá clases dentro del packagename definido en el componente para casos particualres, como por ejemplo las clases PostInstall.  Adicionalmente contendrá el archivo preinstall.sql para incluir las modificaciones a nivel SQL.   - Creación de proyecto en Eclipse. El proyecto referenciará al master org.libertya y contendrá de manera exclusiva clases modificadas del CORE de Libertya.  Únicamente contendrá clases dentro del packagename definido en el componente para casos particualres, como por ejemplo las clases PostInstall.  Adicionalmente contendrá el archivo preinstall.sql para incluir las modificaciones a nivel SQL.
plugins/microcomponents.1582298118.txt.gz · Última modificación: 2021/04/30 19:21 (editor externo)