Suppose we have the following object graph:
Code:
publc Obj{
property long id;
property NestedObj1 obj1;
property NextedObj2 obj2;
...
property boolean deletedFlag;
}
publc NestedObj1{
property long id;
property String name;
...
property boolean deletedFlag;
}
publc NestedObj2{
property long id;
property String name;
...
property boolean deletedFlag;
}
Nested objects mapped as 'many-to-one'
I have a Filter called 'myFilter' as follows:
Code:
<filter-def name="myFilter">
</filter-def>
Each mapping for each object has the following element:
Code:
<filter name="myFilter" condition="deleted_FLAG = 'Y'"/>
before running hql, i perform session.enableFilter("myFilter").
Filter is applied to selection, i.e. appropriate where clause prepended, when I'm trying to load object. And it is applied only to that object which is selected.
How can I propagate the filtering for each nested object as well when loading Obj, which contains NestedObj1, NestedObj2, so that only those NestedObj1 and NestedObj2 loaded that meet similar filter criteria. (basicly, I want to load not logically deleted object and its not logically deleted nested objects)
[/code]