Ticket #232 (assigned defect)

Opened 4 months ago

Last modified 3 months ago

Borrar un gadget del catálogo deja información sin borrar en la BBDD

Reported by: jmartin Assigned to: lmayllon (accepted)
Priority: major Milestone:
Component: A3-platform-ShowCase Version: 0.2
Keywords: Cc:

Description

Cuando se realiza el borrado de un gadget desde el catálogo no se están borrando algunos datos como su template, el código XHTML asociado a dicho gadget, etc. Esto provoca problemas al añadir posteriormente el mismo gadget.

Change History

09/12/08 09:58:20 changed by macvaz

  • owner changed from nobody to lmayllon.

09/15/08 08:54:32 changed by lmayllon

  • status changed from new to assigned.

09/15/08 09:09:27 changed by lmayllon

Al borrar un gadget del catálogo se borran todas las versiones del gadget existentes en el propio catálogo, sin embargo las instancias que haya de éste en el entorno operacional, y por tanto su código XHTML, canales, etc. siguen existiendo en la plataforma (el showcase lleva el control de los gadget que ha instanciado el usuario) de manera que el usuario pueda seguir haciendo uso de ellos. Este comportamiento es el esperado y se pensó así para poder permitir un futuro uso offline de la plataforma. ¿El comportamiento esperado ha cambiado?

Por otro lado, no he conseguido reproducir el error que comentáis tras volver a crear el recurso en el catalogo. El caso de uso que he seguido ha sido: * Instanciar un gadget * Crear canales con sus eventos y ranuras * Borrar el gadget del catálogo (las instancias y canales siguen existiendo) * Volver a crear el gadget en el catálogo * Volver a instanciar un nuevo gadget

09/15/08 09:26:51 changed by jlopez

El problema radica en que si despues de eliminar el gadget, actualizas su codigo o su template, al volver a instanciarlo, conserva la informacion previa. Con el código no es problema (se actualiza el código desde el catálogo y listo), con el template no es posible, salvo que se cambie de versión el gadget

09/15/08 11:57:19 changed by lmayllon

Yo personalmente, creo que ese comportamiento debe ser el esperado. Es el mismo caso que ocurre cuando se intenta añadir un gadget con el mismo vendor+name+version que uno existente en el catalogo. El gadget que se está intentado desplegar en la plataforma ya existe (en este caso, en el showcase) aunque no esté en el catálogo (está "descatalogado", pero ese gadget existió) por lo que el nuevo gadget que se intenta desplegar (al que has cambiado el template) es uno totalmente nuevo y se ha de llamar de otro modo.

09/15/08 12:23:52 changed by macvaz

Veo que hay polémica en le tema.... Trato de aportar algo de luz

Creo que le concepto de versión no se entiende muy bien. Un gadget cambia de versión obligatoriamente, si cambia el template. Aunque también, un gadget puede cambiar de versión manteniendo el tamplate (eso es decisión del creador de la nueva versión del gadget)

Creo que el problema tiene algo más de transfondo. Creo que como hay dos posibles reacciones de la plataforma ante el borrado de un gadget del catálogo por parte de su creador, debemos posibilitar ambas. Es decir:

  1. Si se borra un gadget de catálogo, se debe poder borrar todas las instancias asociadas en la plataforma.
  2. Si se borra un gadget del catálogo, se debe poder permitir a los usuarios que sigan usando la versión anterior.

Obviamente, en ambos casos, si se borra una versión, nunca más podrá ser intanciada desde el catálogo.

Por lo tanto, cuando se borra un gadget, se debe presentar una pantalla con 3 opciones (borrar, mantener y cancelar)

En cualquier caso, se debe marcar el gadget como "borrado", "desactualizado", "deprecated" o lo que sea.

09/17/08 12:53:31 changed by lmayllon

El único usuario que puede borrar el gadget del catálogo es su propietario. Si éste decide borrar el gadget así como todas sus instancias, ¿También se deben borrar las instancias que tengan otros usuarios? A mi esto no me parece correcto. Sería válido sí y sólo sí nadie más tiene instanciado ese gadget (lo cual ocurrirá en el 10% de los casos)

Por otro lado, si no se borran todas las instancias (incluidas las de los otros usuarios) el gadget, con su template y su código HTML, permanecerá en el showcase, y por tanto no se podrá volver a desplegar el mismo gadget en el catálogo, por lo que la opción "borrar" y "mantener" tendría el mismo efecto.