//user2
//create view v1 as select c11 from user1.t11 where c12=2;
//For the view above, there are 2 column level privilege
//depencies, one for column c11 which exists directly
//for user2 and one for column c12 which exists at PUBLIC level.
StatementColumnPermission statementColumnPermission = (StatementColumnPermission) statPerm;
permDesc = statementColumnPermission.
getPUBLIClevelColPermsDescriptor(
currentUser, dd);
//Following if checks if some column level privileges
//exist only at public level. If so, then the public
//level column privilege, if any, dependency of
//view is added into dependency system.
if (permDesc != null &&
permDesc.getObjectID() != null) {
// User did not have all required column
// permissions and at least one column is
// covered by PUBLIC.
dm.addDependency(dependent, permDesc,
lcc.getContextManager());
} // else nothing found for PUBLIC..
// Has the the current role has also been relied
// upon?
if (!statementColumnPermission.
allColumnsCoveredByUserOrPUBLIC(
currentUser, dd)) {
trackRoleDependency
(activation, dependent, roleDepAdded);
}