Interface BiDirectionalFetch
- All Superinterfaces:
DomainResultGraphNode, Fetch
Marker interface for Fetches that are actually references to another fetch based on "normalized navigable path" The following query is used throughout the javadocs for these impls to help describe what it going on and why certain methods do certain things.
@Entity
class Person {
...
@ManyToOne (mappedBy="owner")
Address getAddress() {...}
}
@Entity
class Address {
...
@ManyToOne
Person getOwner() {...}
}
from Person p
join fetch p.address a
join fetch a.owner o
join fetch o.address oa
Here we have one root result and 3 fetches. 2 of the fetches are bidirectional:
o:: The paths p and p.address.owner (aliased as o) are the same table reference in SQL terms
oa:: The paths p.address and p.address.owner.address (aliased as oa) are again the same table reference
-
Method Summary
Modifier and TypeMethodDescriptiondefault voidcollectValueIndexesToCache(BitSet valueIndexes) Collect the JDBC value indexes used by this domain result that should be cached.The NavigablePath for the DomainResult or Fetch that this Fetch refers to.Methods inherited from interface DomainResultGraphNode
appliesTo, getResultJavaTypeMethods inherited from interface Fetch
asFetchParent, containsAnyNonScalarResults, createAssembler, getFetchedMapping, getFetchParent, getNavigablePath, getTiming, hasTableGroup
-
Method Details
-
getReferencedPath
NavigablePath getReferencedPath()The NavigablePath for the DomainResult or Fetch that this Fetch refers to. Foro, the referenced path isp. Foroa, it'sp.addressDifferent fromFetch.getNavigablePath()which returns this fetch's path, i.e.p.address.ownerandp.address.owner.addressrespectively -
collectValueIndexesToCache
Description copied from interface:DomainResultGraphNodeCollect the JDBC value indexes used by this domain result that should be cached.- Specified by:
collectValueIndexesToCachein interfaceDomainResultGraphNode
-