====== Politicas para el desarrollo de un plugin ====== ===== Modificación de tablas y metadatos ===== Como definición, se considera a un plugin como una ampliación a la funcionalidad general del core Libertya. Es por esto que todo plugin deberá respetar la restricción de no modificar la estructura de tablas perteneciente al core de Libertya, en cuanto a cambios en los tipos de datos, eliminación de columnas, etc. Tampoco será correcto eliminar información existente (registros almacenados). Resumidamente, un plugin solo puede ampliar la definición de metadatos y datos existentes. Como alternativa a la eliminación, podrá setear los campos //isActive// a falso para los casos en que se considere necesario, a fin de ocultar valores o limitar la visibilidad de campos. ===== Modificación de clases ===== En lo que respecta a código, se considera un plugin como una suite de modificadores, que permiten ampliar la lógica funcional ya existente en las clases que comprenden el core de Libertya. Dichos componentes, según su origen (persistencia de objetos, callouts, procesos), deberán implementar una o más interfaces con el fin de respetar los puntos de acceso para su ejecución.