Extending setApplyAccessFilter to control params
Link to SF Tracker: http://sourceforge.net/support/tracker.php?aid=2214883
This commit is contained in:
parent
a2f86be02f
commit
6950243e5b
|
@ -75,6 +75,8 @@ public class Query
|
||||||
private String trxName = null;
|
private String trxName = null;
|
||||||
private Object[] parameters = null;
|
private Object[] parameters = null;
|
||||||
private boolean applyAccessFilter = false;
|
private boolean applyAccessFilter = false;
|
||||||
|
private boolean applyAccessFilterRW = false;
|
||||||
|
private boolean applyAccessFilterFullyQualified = true;
|
||||||
private boolean onlyActiveRecords = false;
|
private boolean onlyActiveRecords = false;
|
||||||
private boolean onlyClient_ID = false;
|
private boolean onlyClient_ID = false;
|
||||||
private int onlySelection_ID = -1;
|
private int onlySelection_ID = -1;
|
||||||
|
@ -172,6 +174,19 @@ public class Query
|
||||||
return this;
|
return this;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Turn on data access filter with controls
|
||||||
|
* @param flag
|
||||||
|
*/
|
||||||
|
public Query setApplyAccessFilter(boolean fullyQualified, boolean RW)
|
||||||
|
{
|
||||||
|
this.applyAccessFilter = true;
|
||||||
|
this.applyAccessFilterFullyQualified = fullyQualified;
|
||||||
|
this.applyAccessFilterRW = RW;
|
||||||
|
return this;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Select only active records (i.e. IsActive='Y')
|
* Select only active records (i.e. IsActive='Y')
|
||||||
* @param onlyActiveRecords
|
* @param onlyActiveRecords
|
||||||
|
@ -678,7 +693,7 @@ public class Query
|
||||||
if (applyAccessFilter)
|
if (applyAccessFilter)
|
||||||
{
|
{
|
||||||
MRole role = MRole.getDefault(this.ctx, false);
|
MRole role = MRole.getDefault(this.ctx, false);
|
||||||
sql = role.addAccessSQL(sql, table.getTableName(), true, false);
|
sql = role.addAccessSQL(sql, table.getTableName(), applyAccessFilterFullyQualified, applyAccessFilterRW);
|
||||||
}
|
}
|
||||||
if (CLogMgt.isLevelFinest()) log.finest("TableName = "+table.getTableName()+"... SQL = " +sql); //red1 - to assist in debugging SQL
|
if (CLogMgt.isLevelFinest()) log.finest("TableName = "+table.getTableName()+"... SQL = " +sql); //red1 - to assist in debugging SQL
|
||||||
return sql;
|
return sql;
|
||||||
|
|
Loading…
Reference in New Issue