Class PermissionsCatalogRowFactory

java.lang.Object
org.apache.derby.iapi.sql.dictionary.CatalogRowFactory
org.apache.derby.impl.sql.catalog.PermissionsCatalogRowFactory
Direct Known Subclasses:
SYSCOLPERMSRowFactory, SYSPERMSRowFactory, SYSROUTINEPERMSRowFactory, SYSTABLEPERMSRowFactory

abstract class PermissionsCatalogRowFactory extends CatalogRowFactory
  • Constructor Details

  • Method Details

    • getAuthorizationID

      DataValueDescriptor getAuthorizationID(String value)
    • getNullAuthorizationID

      DataValueDescriptor getNullAuthorizationID()
    • getAuthorizationID

      String getAuthorizationID(ExecRow row, int columnPos) throws StandardException
      Extract an internal authorization ID from a row.
      Parameters:
      row -
      columnPos - 1 based
      Returns:
      The internal authorization ID
      Throws:
      StandardException
    • buildIndexKeyRow

      abstract ExecIndexRow buildIndexKeyRow(int indexNumber, PermissionsDescriptor perm) throws StandardException
      Build an index key row from a permission descriptor. A key row does not include the RowLocation column.
      Parameters:
      indexNumber -
      perm - a permission descriptor of the appropriate class for this PermissionsCatalogRowFactory class.
      Throws:
      StandardException - standard error policy
    • orPermissions

      abstract int orPermissions(ExecRow row, PermissionsDescriptor perm, boolean[] colsChanged) throws StandardException
      Or a set of permissions in with a row from this catalog table
      Parameters:
      row - an existing row
      perm - a permission descriptor of the appropriate class for this PermissionsCatalogRowFactory class.
      colsChanged - An array with one element for each column in row. It is updated to indicate which columns in row were changed
      Returns:
      The number of columns that were changed.
      Throws:
      StandardException - standard error policy
    • removePermissions

      abstract int removePermissions(ExecRow row, PermissionsDescriptor perm, boolean[] colsChanged) throws StandardException
      Remove a set of permissions from a row from this catalog table
      Parameters:
      row - an existing row
      perm - a permission descriptor of the appropriate class for this PermissionsCatalogRowFactory class.
      colsChanged - An array with one element for each column in row. It is updated to indicate which columns in row were changed
      Returns:
      -1 if there are no permissions left in the row, otherwise the number of columns that were changed.
      Throws:
      StandardException - standard error policy
    • setUUIDOfThePassedDescriptor

      abstract void setUUIDOfThePassedDescriptor(ExecRow row, PermissionsDescriptor perm) throws StandardException
      Set the uuid of the passed permission descriptor to the uuid of the row from the system table. DataDictionary will make this call before calling the dependency manager to send invalidation messages to the objects dependent on the permission descriptor's uuid.
      Parameters:
      row - The row from the system table for the passed permission descriptor
      perm - Permission descriptor
      Throws:
      StandardException