//MIN_SELECT_PRIV requirement for the table because that
//requirement is already getting satisfied with the already
//existing SELECT privilege requirement
StatementTablePermission key = new StatementTablePermission(
tableUUID, Authorizer.SELECT_PRIV);
StatementColumnPermission tableColumnPrivileges
= (StatementColumnPermission) requiredColumnPrivileges.get( key);
if( tableColumnPrivileges != null)
return;
}
if( currPrivType == Authorizer.SELECT_PRIV){
//If we are here for SELECT_PRIV requirement, then first check
//if there is already any MIN_SELECT_PRIV privilege required
//on this table. If yes, then that requirement will be fulfilled
//by the SELECT_PRIV requirement we are adding now. Because of
//that, remove the MIN_SELECT_PRIV privilege requirement
StatementTablePermission key = new StatementTablePermission(
tableUUID, Authorizer.MIN_SELECT_PRIV);
StatementColumnPermission tableColumnPrivileges
= (StatementColumnPermission) requiredColumnPrivileges.get( key);
if( tableColumnPrivileges != null)
requiredColumnPrivileges.remove(key);
}
StatementTablePermission key = new StatementTablePermission( tableUUID, currPrivType);
StatementColumnPermission tableColumnPrivileges
= (StatementColumnPermission) requiredColumnPrivileges.get( key);
if( tableColumnPrivileges == null)
{
tableColumnPrivileges = new StatementColumnPermission( tableUUID,
currPrivType,
new FormatableBitSet( td.getNumberOfColumns()));
requiredColumnPrivileges.put(key, tableColumnPrivileges);
}
tableColumnPrivileges.getColumns().set(column.getPosition() - 1);
} // end of addRequiredColumnPriv