Class ProyectoBase

java.lang.Object
adalid.core.AbstractArtifact
adalid.core.Project
adalid.jee2.meta.proyecto.base.ProyectoBase
All Implemented Interfaces:
DatabaseProject, ProjectWriter, SubjectProject, Wrappable, ProjectBuilder, Artifact, SpecialEntityPack, Comparable<Project>
Direct Known Subclasses:
ProyectoJava1

public abstract class ProyectoBase extends Project implements DatabaseProject, SubjectProject, SpecialEntityPack
Author:
Jorge Campins
  • Field Details

    • URL_ZIP_THIRD_PARTY_DIR

      protected static final String URL_ZIP_THIRD_PARTY_DIR
      URL del directorio third-party
      See Also:
    • THIRD_PARTY_DIR_LINUX

      protected static final String THIRD_PARTY_DIR_LINUX
      Ruta del directorio third-party en Linux
      See Also:
    • THIRD_PARTY_DIR_WINDOWS

      protected static final String THIRD_PARTY_DIR_WINDOWS
      Ruta del directorio third-party en Windows
      See Also:
    • THIRD_PARTY_DIR_VERSION

      protected static final String THIRD_PARTY_DIR_VERSION
      Versión del directorio third-party
      See Also:
    • VERSION_THIRD_PARTY_DIR

      protected static final String VERSION_THIRD_PARTY_DIR
      Versión del directorio third-party
      See Also:
  • Constructor Details

    • ProyectoBase

      public ProyectoBase()
  • Method Details

    • getPageMainFormID

      public String getPageMainFormID()
    • getPageNorthFormID

      public String getPageNorthFormID()
    • getPageSouthFormID

      public String getPageSouthFormID()
    • getPageDataTableID

      public String getPageDataTableID()
    • getPageDataTableFilterID

      public String getPageDataTableFilterID()
    • getPageDetailPanelGridID

      public String getPageDetailPanelGridID()
    • getPageDetailWritingPanelID

      public String getPageDetailWritingPanelID()
    • getPageDialogHeaderElementID

      public String getPageDialogHeaderElementID()
    • getPageWizardLastStepID

      public String getPageWizardLastStepID()
    • getPageMessagesID

      public String getPageMessagesID()
    • getPageTreeID

      public String getPageTreeID()
    • getPageWizardID

      public String getPageWizardID()
    • getPageDataTableColumnSuffix

      public String getPageDataTableColumnSuffix()
    • getPageDetailPanelDivSuffix

      public String getPageDetailPanelDivSuffix()
    • getPageFieldSuffix

      public String getPageFieldSuffix()
    • getEsquemaEntidadesComunes

      public static String getEsquemaEntidadesComunes()
    • getDictionaryLevel

      public static org.apache.log4j.Level getDictionaryLevel()
    • setDictionaryLevel

      public static void setDictionaryLevel(org.apache.log4j.Level level)
      Sets the dictionary messages logging level
      Parameters:
      level - the dictionary messages logging level to set
    • getDictionaryLoggingLevel

      public static LoggingLevel getDictionaryLoggingLevel()
      Returns:
      the dictionary messages logging level
    • setDictionaryLoggingLevel

      public static void setDictionaryLoggingLevel(LoggingLevel level)
      El método setDictionaryLoggingLevel del meta proyecto se utiliza para establecer el nivel de severidad de los mensajes informativos del diccionario que se emiten al generar la aplicación. El valor predeterminado de esta propiedad es OFF (no emitir mensajes informativos del diccionario). El método setDictionaryLoggingLevel es un método estático que debe ejecutarse en el método main del proyecto maestro, antes de ejecutar el método build.
      Parameters:
      level - elemento de la enumeración LoggingLevel que determina el nivel de severidad de los mensajes informativos del diccionario que se emiten al generar la aplicación. Especifique TRACE, DEBUG o INFO para emitir los mensajes con uno de esos niveles.
    • getApplicationMessageEntity

      public Entity getApplicationMessageEntity()
      Returns:
      the application message entity
    • getSegmentSetFactoryEntity

      public Entity getSegmentSetFactoryEntity()
      Returns:
      the segment set factory entity
    • getUploadedFileEntity

      public Entity getUploadedFileEntity()
      Returns:
      the uploaded file entity
    • getUserEntity

      public Entity getUserEntity()
      Returns:
      the user entity
    • getVersionEntity

      public Entity getVersionEntity()
      Returns:
      the version entity
    • getApplicationMessageEntityClass

      public Class<? extends Entity> getApplicationMessageEntityClass()
      Specified by:
      getApplicationMessageEntityClass in interface SpecialEntityPack
      Returns:
      the application message entity class
    • setApplicationMessageEntityClass

      public void setApplicationMessageEntityClass(Class<? extends Entity> clazz)
      Description copied from interface: SpecialEntityPack
      El método setApplicationMessageEntityClass se utiliza para establecer la clase de la entidad Mensaje de la Aplicación del proyecto.
      Specified by:
      setApplicationMessageEntityClass in interface SpecialEntityPack
      Parameters:
      clazz - clase de la entidad Mensaje de la Aplicación del proyecto
    • getSegmentSetFactoryEntityClass

      public Class<? extends Entity> getSegmentSetFactoryEntityClass()
      Specified by:
      getSegmentSetFactoryEntityClass in interface SpecialEntityPack
      Returns:
      the segment set factory entity class
    • setSegmentSetFactoryEntityClass

      public void setSegmentSetFactoryEntityClass(Class<? extends Entity> clazz)
      Description copied from interface: SpecialEntityPack
      El método setSegmentSetFactoryEntityClass se utiliza para establecer la clase de la entidad Clase de Fabricador del proyecto.
      Specified by:
      setSegmentSetFactoryEntityClass in interface SpecialEntityPack
      Parameters:
      clazz - clase de la entidad Clase de Fabricador del proyecto
    • getTaskNotificationEntityClass

      public Class<? extends Entity> getTaskNotificationEntityClass()
      Specified by:
      getTaskNotificationEntityClass in interface SpecialEntityPack
      Returns:
      the uploaded file entity class
    • setTaskNotificationEntityClass

      public void setTaskNotificationEntityClass(Class<? extends Entity> clazz)
      Description copied from interface: SpecialEntityPack
      El método setTaskNotificationEntityClass se utiliza para establecer la clase de la entidad Notificación de Tarea del proyecto.
      Specified by:
      setTaskNotificationEntityClass in interface SpecialEntityPack
      Parameters:
      clazz - clase de la entidad Notificación de Tarea del proyecto
    • getUploadedFileEntityClass

      public Class<? extends Entity> getUploadedFileEntityClass()
      Specified by:
      getUploadedFileEntityClass in interface SpecialEntityPack
      Overrides:
      getUploadedFileEntityClass in class Project
      Returns:
      the uploaded file entity class
    • setUploadedFileEntityClass

      public void setUploadedFileEntityClass(Class<? extends Entity> clazz)
      Description copied from interface: SpecialEntityPack
      El método setUploadedFileEntityClass se utiliza para establecer la clase de la entidad Archivo Adjunto del proyecto.
      Specified by:
      setUploadedFileEntityClass in interface SpecialEntityPack
      Parameters:
      clazz - clase de la entidad Archivo Adjunto del proyecto
    • getUserEntityClass

      public Class<? extends Entity> getUserEntityClass()
      Specified by:
      getUserEntityClass in interface SpecialEntityPack
      Overrides:
      getUserEntityClass in class Project
      Returns:
      the user entity class
    • setUserEntityClass

      public void setUserEntityClass(Class<? extends Entity> clazz)
      Description copied from interface: SpecialEntityPack
      El método setUserEntityClass se utiliza para establecer la clase de la entidad Usuario del proyecto.
      Specified by:
      setUserEntityClass in interface SpecialEntityPack
      Parameters:
      clazz - clase de la entidad Usuario del proyecto.
    • getVersionEntityClass

      public Class<? extends Entity> getVersionEntityClass()
      Specified by:
      getVersionEntityClass in interface SpecialEntityPack
      Returns:
      the version entity class
    • setVersionEntityClass

      public void setVersionEntityClass(Class<? extends Entity> clazz)
      Description copied from interface: SpecialEntityPack
      El método setVersionEntityClass se utiliza para establecer la clase de la entidad Versión del proyecto.
      Specified by:
      setVersionEntityClass in interface SpecialEntityPack
      Parameters:
      clazz - clase de la entidad Versión del proyecto
    • unsetSpecialEntityClasses

      public List<Class<? extends Entity>> unsetSpecialEntityClasses()
      Specified by:
      unsetSpecialEntityClasses in interface SpecialEntityPack
      Overrides:
      unsetSpecialEntityClasses in class Project
      Returns:
      the list of unset special entity classes
    • getSpecialNativeQuerySegments

      public List<NativeQuerySegment> getSpecialNativeQuerySegments(Entity entity)
      Overrides:
      getSpecialNativeQuerySegments in class Project
    • addSpecialPage

      public SpecialPage addSpecialPage(SpecialPage specialPage)
    • getProjectSpecialPagesMap

      public Map<String,SpecialPage> getProjectSpecialPagesMap()
    • getProjectSpecialPagesCollection

      public Collection<SpecialPage> getProjectSpecialPagesCollection()
    • configureGenerator

      public void configureGenerator()
      Description copied from class: Project
      set generator settings
      Overrides:
      configureGenerator in class Project
    • beforeWriting

      public boolean beforeWriting()
      Specified by:
      beforeWriting in interface ProjectWriter
      Overrides:
      beforeWriting in class Project
    • afterWriting

      protected boolean afterWriting(boolean ok)
      Overrides:
      afterWriting in class Project
    • getProjectObjectModel

      public ProjectObjectModelReader getProjectObjectModel()
      Overrides:
      getProjectObjectModel in class Project
    • getAdalidProjectVersion

      public String getAdalidProjectVersion()
      Overrides:
      getAdalidProjectVersion in class Project
    • logAdalidProjectVersion

      protected void logAdalidProjectVersion()
      Overrides:
      logAdalidProjectVersion in class Project
    • configureBuilder

      public void configureBuilder()
      Description copied from class: Project
      set builder settings
      Overrides:
      configureBuilder in class Project
    • isDictionaryEnabled

      public boolean isDictionaryEnabled()
      Returns:
      true if the dictionary is enabled; false otherwise
    • enableDictionary

      public void enableDictionary()
      El método enableDictionary se utiliza para habilitar el diccionario de meta-data. Los archivos del diccionario son almacenados en el subdirectorio dictionary/alias del subdirectorio especificado mediante la propiedad sql.dictionary.path del archivo bootstrapping.properties, donde alias es el alias del proyecto generado
    • enableDictionary

      public void enableDictionary(String subdir)
      El método enableDictionary se utiliza para habilitar el diccionario de meta-data. Los archivos del diccionario son almacenados en el subdirectorio dictionary/subdir del subdirectorio especificado mediante la propiedad sql.dictionary.path del archivo bootstrapping.properties.
      Parameters:
      subdir - nombre del subdirectorio donde son almacenados los archivos del diccionario. El nombre del subdirectorio solo puede contener letras, números y guiones bajos (underscores). Si el nombre no es válido, se utiliza el alias del proyecto generado en su lugar.
    • isProjectBuilderDictionaryEnabled

      protected boolean isProjectBuilderDictionaryEnabled()
    • enableProjectBuilderDictionary

      protected void enableProjectBuilderDictionary()
    • getLastVersionCode

      public String getLastVersionCode()
      Specified by:
      getLastVersionCode in interface SubjectProject
    • getVersionEnumeration

      public Object getVersionEnumeration()
      Specified by:
      getVersionEnumeration in interface SubjectProject
    • getEntityKeys

      public Set<String> getEntityKeys()
      Returns:
      the entity keys
    • getOperationKeys

      public Set<String> getOperationKeys()
      Returns:
      the operation keys
    • getDefaultCrudOperationKeys

      public Set<String> getDefaultCrudOperationKeys()
      Returns:
      the CRUD operation keys
    • getUserDefinedOperationKeys

      public Set<String> getUserDefinedOperationKeys()
      Returns:
      the user-defined operation keys
    • getPageKeys

      public Set<String> getPageKeys()
      Returns:
      the page keys
    • getParameterKeys

      public Set<String> getParameterKeys()
      Returns:
      the parameter keys
    • getEntityNumber

      public String getEntityNumber(Entity entity)
      Parameters:
      entity - entity
      Returns:
      the entity number
    • getEntityNumber

      public String getEntityNumber(Class<?> clazz)
      Parameters:
      clazz - entity class
      Returns:
      the entity number
    • getEntityNumber

      public String getEntityNumber(String key)
      Parameters:
      key - key
      Returns:
      the entity number
    • getEntityParameterNumber

      public String getEntityParameterNumber(String key)
      Parameters:
      key - key
      Returns:
      the entity parameter number
    • getModuleNumber

      public String getModuleNumber(Project module)
      Parameters:
      module - module
      Returns:
      the module number
    • getModuleNumber

      public String getModuleNumber(Class<?> clazz)
      Parameters:
      clazz - module class
      Returns:
      the module number
    • getModuleNumber

      public String getModuleNumber(String key)
      Parameters:
      key - key
      Returns:
      the module number
    • getOperationNumber

      public String getOperationNumber(Operation operation)
      Parameters:
      operation - operation
      Returns:
      the operation number
    • getOperationNumber

      public String getOperationNumber(String name, Entity declaringEntity)
      Parameters:
      name - name
      declaringEntity - declaring entity
      Returns:
      the operation number
    • getOperationNumber

      public String getOperationNumber(String key)
      Parameters:
      key - key
      Returns:
      the operation number
    • getOperationParameterNumber

      public String getOperationParameterNumber(String key)
      Parameters:
      key - key
      Returns:
      the operation parameter number
    • getPageNumber

      public String getPageNumber(String key)
      Parameters:
      key - key
      Returns:
      the page number
    • getParameterNumber

      public String getParameterNumber(Artifact artifact)
      Parameters:
      artifact - artifact
      Returns:
      the parameter number
    • getParameterNumber

      public String getParameterNumber(String name, Entity declaringEntity)
      Parameters:
      name - name
      declaringEntity - declaring entity
      Returns:
      the parameter number
    • getParameterNumber

      public String getParameterNumber(String name, Operation declaringOperation)
      Parameters:
      name - name
      declaringOperation - declaring operation
      Returns:
      the parameter number
    • getParameterNumber

      public String getParameterNumber(String key)
      Parameters:
      key - key
      Returns:
      the parameter number
    • getBaseFolderName

      public String getBaseFolderName()
      Specified by:
      getBaseFolderName in interface SubjectProject
      Returns:
      the base folder name
    • setBaseFolderName

      public void setBaseFolderName(String baseFolderName)
      Parameters:
      baseFolderName - the base folder name to set
    • getDatabaseName

      public String getDatabaseName()
      Specified by:
      getDatabaseName in interface DatabaseProject
      Returns:
      the database name
    • setDatabaseName

      public void setDatabaseName(String databaseName)
      El método setDatabaseName se utiliza para establecer el nombre de la base de datos del proyecto, en caso de que se deba utilizar un nombre diferente al predeterminado; el nombre predeterminado es el alias del proyecto
      Parameters:
      databaseName - nombre de la base de datos
    • getDatabaseFormerSchemaName

      public String getDatabaseFormerSchemaName()
      Returns:
      the database former schema name
    • setDatabaseFormerSchemaName

      public void setDatabaseFormerSchemaName(String databaseFormerSchemaName)
      El método setDatabaseFormerSchemaName se utiliza para establecer el nombre del esquema previo de la base de datos del proyecto, en caso de que se deba utilizar un nombre diferente al predeterminado; el nombre predeterminado es former.
      Parameters:
      databaseFormerSchemaName - nombre del esquema previo
    • getRootFolderName

      public String getRootFolderName()
      Returns:
      the root folder name
    • setRootFolderName

      public void setRootFolderName(String rootFolderName)
      Parameters:
      rootFolderName - the root folder name to set
    • getRoleCodePrefix

      public String getRoleCodePrefix()
      Returns:
      the role code prefix
    • setRoleCodePrefix

      public void setRoleCodePrefix(String roleCodePrefix)
      El método setRoleCodePrefix se utiliza para establecer el prefijo de código de rol del controlador de seguridad del proyecto. Esta propiedad solo se utiliza si el controlador de seguridad del proyecto es LDAP o CIAM. El prefijo de código de rol se antepone a los códigos de los roles definidos en la aplicación para determinar los correspondientes códigos en el directorio LDAP y/o en el gestor de CIAM. Dado que esta propiedad no tiene valor predeterminado, si no se establece su valor, el código de cada rol en el directorio LDAP y/o en el gestor de CIAM debe ser igual al código definido en la aplicación.
      Parameters:
      roleCodePrefix - prefijo de código de rol del controlador de seguridad del proyecto.
    • getMessageDigestAlgorithm

      public String getMessageDigestAlgorithm()
      Returns a string that identifies the algorithm, independent of implementation details. The name should be a standard Java Security name (such as "SHA", "MD5", and so on). See the MessageDigest section in the Java Cryptography Architecture Standard Algorithm Name Documentation for information about standard algorithm names.
      Returns:
      the message digest algorithm
    • setMessageDigestAlgorithm

      public void setMessageDigestAlgorithm(String messageDigestAlgorithm)
      El método setMessageDigestAlgorithm se utiliza para especificar el nombre del algoritmo de encriptación del proyecto generado. El valor predeterminado de esta propiedad es MD5.
      Parameters:
      messageDigestAlgorithm - nombre del algoritmo de encriptación del proyecto generado. Utilice como argumento el nombre de un algoritmo soportado por la plataforma; por ejemplo: MD2, MD5, SHA-1, SHA-256, SHA-384, SHA-512.
    • getExtraDatabaseNames

      public Set<String> getExtraDatabaseNames()
      Specified by:
      getExtraDatabaseNames in interface DatabaseProject
    • getExtraDatabaseConnections

      public Map<String,DatabaseConnection> getExtraDatabaseConnections()
      Specified by:
      getExtraDatabaseConnections in interface DatabaseProject
    • addExtraDatabaseConnection

      public void addExtraDatabaseConnection(DatabaseConnection connection)
      Specified by:
      addExtraDatabaseConnection in interface DatabaseProject
    • isSqlBusinessAuditTrail

      public boolean isSqlBusinessAuditTrail()
      Returns:
      true if SQL business functions audit trail should be enabled; false otherwise
    • setSqlBusinessAuditTrail

      public void setSqlBusinessAuditTrail(boolean enabled)
      Parameters:
      enabled - true if SQL business functions audit trail should be enabled; false otherwise
    • getDatabaseLockingMechanism

      public DatabaseLockingMechanism getDatabaseLockingMechanism()
      Returns:
      the database locking mechanism
    • setDatabaseLockingMechanism

      public void setDatabaseLockingMechanism(DatabaseLockingMechanism databaseLockingMechanism)
      Parameters:
      databaseLockingMechanism - the database locking mechanism to set
    • print

      public void print()
      Overrides:
      print in class Project
    • getDefaultBaseFolderName

      protected String getDefaultBaseFolderName()
    • getDefaultDatabaseName

      protected String getDefaultDatabaseName()
    • getDefaultDatabaseFormerSchemaName

      protected String getDefaultDatabaseFormerSchemaName()
    • getDefaultRootFolderName

      protected String getDefaultRootFolderName()
    • getDefaultMessageDigestAlgorithm

      protected String getDefaultMessageDigestAlgorithm()
    • getDefaultDatabaseLockingMechanism

      protected DatabaseLockingMechanism getDefaultDatabaseLockingMechanism()