Routing en Elm

La URL es un bit interesante de nuestra applicación, nos permite regresar a un estado, o compartir ese estado con alguien más; y en Elm, el Routing, es la segunda cosa más importante que deberías conocer después del propio lenguaje. Así que empecemos. ANATOMÍA DE UNA URL Una URL es una dirección dada para un recurso único en la web y está compuesta de diferentes partes: un protocolo, un host, un nombre de dominio, opcionalmente un path y el nombre del archivo: [Read More]

Borrado batch en Grails

En esta ocasión les quiero compartir la solución a un problema que tuve al borrar una colección de objetos en grails y con el GORM, si bien podría hacerlo con HQL o con SQL usando las bondades de Hibernate me gusto más el acercamiento que les quiero presentar. La necesidad era borrar un grupo de objetos en donde el contenido de su relación estuviera vacío, ejemplifico con la estructura de unas clases: [Read More]

Clusterizacion con Camel

Camel ofrece distintas soluciones para ser escalado o para distribuir la carga en diferentes instancias, la soluciones que ofrece dependerá de como se encuentra nuestra infraestructura ( y configuración). Misma JVM y CamelContext Misma JVM pero diferente CamelContext Diferente JVM y CamelContext El problema que me vi envuelto fue de estas tres, la ultima, el clusterizar camel que se encontraban en diferentes JVM y CamelContext. Y en particular tuve un problema de mensajes duplicados. [Read More]

Personalizar notificaciones de correo en Jenkins

Las notificaciones son básicas para la correcta comunicación de los involucrados de nuestros proyectos como: Stakeholders/ Key Users / Developers / Clientes / Testers. Por esta razón te recomiendo personalizar las notificaciones por defecto de Jenkins. Objetivo: Informar los despliegues desde Jenkins por correo, usando el plugin: Email-ext Procedimiento: Instalar el plugin desde la consola de administración de Jenkins. Configurar la cuenta de correo saliente SMTP, te recomiendo que uses el autenticado. [Read More]

Inyección de métodos por categorías y TimeCategory

Acerca de las categorías En Groovy se pueden inyectar métodos de algunas formas, uno de ellos es a través del uso de categorías, la cual nos da inyección temporal y controlada de dichos elementos. Para hacerlo las clases que son categorías deben de cumplir con cierta estructura: Los métodos de la clase deben ser definidos como estáticos El primer argumento de dicho método define el tipo sobre el cual se inyectarían los nuevos métodos Deben de ser usados dentro del alcance de un closure con ayuda de la palabra reservada use Un ejemplo podría ser el siguiente: [Read More]