Class CmsDbContext


  • public class CmsDbContext
    extends java.lang.Object
    Wraps context information to access the OpenCms database.

    Since:
    6.0.0
    • Constructor Detail

      • CmsDbContext

        public CmsDbContext()
        Creates a new, empty database context.

      • CmsDbContext

        public CmsDbContext​(CmsRequestContext context)
        Creates a new database context initialized with the given user request context.

        Parameters:
        context - the current users request context
    • Method Detail

      • clear

        public void clear()
        Clears this database context.

      • currentProject

        public CmsProject currentProject()
        Returns the current users project.

        Returns:
        the current users project
      • currentUser

        public CmsUser currentUser()
        Returns the current user.

        Returns:
        the current user
      • getAttribute

        public java.lang.Object getAttribute​(java.lang.String key)
        Get an attribute from the DB context.

        Parameters:
        key - the attribute key
        Returns:
        the attribute value or null if the attribute does not exist
      • getHistoryDriver

        public I_CmsHistoryDriver getHistoryDriver​(CmsUUID projectId)
        Gets the history driver associated with this database context.

        Parameters:
        projectId - the project id for which the history driver should be retrieved
        Returns:
        the history driver
      • getProjectDriver

        public I_CmsProjectDriver getProjectDriver​(CmsUUID projectId)
        Gets the project driver associated with this database context.

        Parameters:
        projectId - the project id for which the project driver should be retrieved
        Returns:
        the project driver
      • getProjectId

        public CmsUUID getProjectId()
        Returns the project id of the context.

        Returns:
        the project
      • getUserDriver

        public I_CmsUserDriver getUserDriver​(CmsUUID projectId)
        Gets the user driver associated with this database context.

        Parameters:
        projectId - the project id for which the user driver should be retrieved
        Returns:
        the user driver
      • getVfsDriver

        public I_CmsVfsDriver getVfsDriver​(CmsUUID projectId)
        Gets the VFS driver associated with this database context.

        Parameters:
        projectId - the project id for which the VFS driver should be retrieved
        Returns:
        the VFS driver
      • isDefaultDbContext

        public boolean isDefaultDbContext()
        Checks if the database context uses the default implementation.

        Returns:
        true if the database context uses the default implementation
      • removeAttribute

        public void removeAttribute​(java.lang.String key)
        Removes the given attribute from the DB context.

        Parameters:
        key - the attribute key
      • removeSiteRoot

        public java.lang.String removeSiteRoot​(java.lang.String resourcename)
        Removes the current site root prefix from the absolute path in the resource name, that is adjusts the resource name for the current site root.

        If no user request context is available, the given resource name is returned unchanged.

        Parameters:
        resourcename - the resource name
        Returns:
        the resource name adjusted for the current site root
      • rollback

        public void rollback()
        Rolls back current transaction.

      • setAttribute

        public void setAttribute​(java.lang.String key,
                                 java.lang.Object value)
        Sets an attribute in the DB context.

        Parameters:
        key - the attribute key
        value - the attribute value
      • setProjectId

        public void setProjectId​(CmsUUID projectId)
        Sets the project id of the context.

        Parameters:
        projectId - the id of the project to set