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
-
-
Field Summary
-
Fields inherited from class org.apache.derby.iapi.sql.dictionary.CatalogRowFactory
dvf, heapUUID, indexColumnPositions, indexNames, indexUniqueness, indexUUID, tableUUID
-
-
Constructor Summary
Constructors Constructor Description PermissionsCatalogRowFactory(UUIDFactory uuidf, ExecutionFactory ef, DataValueFactory dvf)
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description (package private) abstract ExecIndexRow
buildIndexKeyRow(int indexNumber, PermissionsDescriptor perm)
Build an index key row from a permission descriptor.(package private) DataValueDescriptor
getAuthorizationID(java.lang.String value)
(package private) java.lang.String
getAuthorizationID(ExecRow row, int columnPos)
Extract an internal authorization ID from a row.(package private) DataValueDescriptor
getNullAuthorizationID()
(package private) abstract int
orPermissions(ExecRow row, PermissionsDescriptor perm, boolean[] colsChanged)
Or a set of permissions in with a row from this catalog table(package private) abstract int
removePermissions(ExecRow row, PermissionsDescriptor perm, boolean[] colsChanged)
Remove a set of permissions from a row from this catalog table(package private) abstract void
setUUIDOfThePassedDescriptor(ExecRow row, PermissionsDescriptor perm)
Set the uuid of the passed permission descriptor to the uuid of the row from the system table.-
Methods inherited from class org.apache.derby.iapi.sql.dictionary.CatalogRowFactory
buildColumnList, buildDescriptor, generateIndexName, getCanonicalHeapName, getCanonicalHeapUUID, getCanonicalIndexUUID, getCanonicalTableUUID, getCatalogName, getCreateHeapProperties, getCreateIndexProperties, getDataValueFactory, getExecutionFactory, getHeapColumnCount, getIndexColumnCount, getIndexColumnPositions, getIndexName, getNumIndexes, getPrimaryKeyIndexNumber, getUUIDFactory, initInfo, isIndexUnique, makeEmptyRow, makeEmptyRowForCurrentVersion, makeRow
-
-
-
-
Constructor Detail
-
PermissionsCatalogRowFactory
PermissionsCatalogRowFactory(UUIDFactory uuidf, ExecutionFactory ef, DataValueFactory dvf)
-
-
Method Detail
-
getAuthorizationID
DataValueDescriptor getAuthorizationID(java.lang.String value)
-
getNullAuthorizationID
DataValueDescriptor getNullAuthorizationID()
-
getAuthorizationID
java.lang.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 rowperm
- 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 rowperm
- 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 descriptorperm
- Permission descriptor- Throws:
StandardException
-
-