Class CmsDbContext

java.lang.Object
org.opencms.db.CmsDbContext

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

Since:
6.0.0
  • Field Details

  • Constructor Details

    • CmsDbContext

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

    • CmsDbContext

      Creates a new database context initialized with the given user request context.

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

    • clear

      public void clear()
      Clears this database context.

    • 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 Object getAttribute(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
    • getFlexRequestContextInfo

      Returns the current Flex request context info.

      Returns:
      the current Flex request context info
    • getHistoryDriver

      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

      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

      Returns the project id of the context.

      Returns:
      the project
    • getRequestContext

      Returns the request context.

      Returns:
      the request context
    • getUserDriver

      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
    • pop

      public void pop() throws CmsException
      Processes the current database context.

      Throws:
      CmsException - if something goes wrong
    • removeAttribute

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

      Parameters:
      key - the attribute key
    • removeSiteRoot

      public String removeSiteRoot(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
    • report

      public void report(I_CmsReport report, CmsMessageContainer message, Throwable throwable) throws CmsVfsException, CmsException
      Reports an error to the given report (if available) and to the OpenCms log file.

      Parameters:
      report - the report to write the error to
      message - the message to write to the report / log
      throwable - the exception to write to the report / log
      Throws:
      CmsException - if the throwable parameter is not null and a CmsException
      CmsVfsException - if the throwable parameter is not null and no CmsException
    • rollback

      public void rollback()
      Rolls back current transaction.

    • setAttribute

      public void setAttribute(String key, 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
    • throwException

      public void throwException(CmsMessageContainer message, Throwable throwable) throws CmsVfsException, CmsException
      Returns an exception of the same type as throwable, if throwable is an OpenCms Exception with the message as a CmsMessageContainer and the throwable as a cause.

      Parameters:
      message - the message container for the exception to create
      throwable - the cause of the exception
      Throws:
      CmsException - if the throwable parameter is not null and a CmsException
      CmsVfsException - if the throwable parameter is not null and no CmsException