javax.persistence.criteria
Interface From<Z,X>

Type Parameters:
Z - the source type
X - the target type
All Superinterfaces:
Expression<X>, FetchParent<Z,X>, Path<X>, Selection<X>, TupleElement<X>
All Known Subinterfaces:
CollectionJoin<Z,E>, Join<Z,X>, ListJoin<Z,E>, MapJoin<Z,K,V>, PluralJoin<Z,C,E>, Root<X>, SetJoin<Z,E>

public interface From<Z,X>
extends Path<X>, FetchParent<Z,X>

Represents a bound type, usually an entity that appears in the from clause, but may also be an embeddable belonging to an entity in the from clause.

Serves as a factory for Joins of associations, embeddables, and collections belonging to the type, and for Paths of attributes belonging to the type.

Since:
Java Persistence 2.0

Method Summary
 From<Z,X> getCorrelationParent()
          Returns the parent From object from which the correlated From object has been obtained through correlation (use of a Subquery correlate method).
 java.util.Set<Join<X,?>> getJoins()
          Return the joins that have been made from this bound type.
 boolean isCorrelated()
          Whether the From object has been obtained as a result of correlation (use of a Subquery correlate method).
<Y> CollectionJoin<X,Y>
join(CollectionAttribute<? super X,Y> collection)
          Create an inner join to the specified Collection-valued attribute.
<Y> CollectionJoin<X,Y>
join(CollectionAttribute<? super X,Y> collection, JoinType jt)
          Create a join to the specified Collection-valued attribute using the given join type.
<Y> ListJoin<X,Y>
join(ListAttribute<? super X,Y> list)
          Create an inner join to the specified List-valued attribute.
<Y> ListJoin<X,Y>
join(ListAttribute<? super X,Y> list, JoinType jt)
          Create a join to the specified List-valued attribute using the given join type.
<K,V> MapJoin<X,K,V>
join(MapAttribute<? super X,K,V> map)
          Create an inner join to the specified Map-valued attribute.
<K,V> MapJoin<X,K,V>
join(MapAttribute<? super X,K,V> map, JoinType jt)
          Create a join to the specified Map-valued attribute using the given join type.
<Y> SetJoin<X,Y>
join(SetAttribute<? super X,Y> set)
          Create an inner join to the specified Set-valued attribute.
<Y> SetJoin<X,Y>
join(SetAttribute<? super X,Y> set, JoinType jt)
          Create a join to the specified Set-valued attribute using the given join type.
<Y> Join<X,Y>
join(SingularAttribute<? super X,Y> attribute)
          Create an inner join to the specified single-valued attribute.
<Y> Join<X,Y>
join(SingularAttribute<? super X,Y> attribute, JoinType jt)
          Create a join to the specified single-valued attribute using the given join type.
<X,Y> Join<X,Y>
join(java.lang.String attributeName)
          Create an inner join to the specified attribute.
<X,Y> Join<X,Y>
join(java.lang.String attributeName, JoinType jt)
          Create a join to the specified attribute using the given join type.
<X,Y> CollectionJoin<X,Y>
joinCollection(java.lang.String attributeName)
          Create an inner join to the specified Collection-valued attribute.
<X,Y> CollectionJoin<X,Y>
joinCollection(java.lang.String attributeName, JoinType jt)
          Create a join to the specified Collection-valued attribute using the given join type.
<X,Y> ListJoin<X,Y>
joinList(java.lang.String attributeName)
          Create an inner join to the specified List-valued attribute.
<X,Y> ListJoin<X,Y>
joinList(java.lang.String attributeName, JoinType jt)
          Create a join to the specified List-valued attribute using the given join type.
<X,K,V> MapJoin<X,K,V>
joinMap(java.lang.String attributeName)
          Create an inner join to the specified Map-valued attribute.
<X,K,V> MapJoin<X,K,V>
joinMap(java.lang.String attributeName, JoinType jt)
          Create a join to the specified Map-valued attribute using the given join type.
<X,Y> SetJoin<X,Y>
joinSet(java.lang.String attributeName)
          Create an inner join to the specified Set-valued attribute.
<X,Y> SetJoin<X,Y>
joinSet(java.lang.String attributeName, JoinType jt)
          Create a join to the specified Set-valued attribute using the given join type.
 
Methods inherited from interface javax.persistence.criteria.Path
get, get, get, get, getModel, getParentPath, type
 
Methods inherited from interface javax.persistence.criteria.Expression
as, in, in, in, in, isNotNull, isNull
 
Methods inherited from interface javax.persistence.criteria.Selection
alias, getCompoundSelectionItems, isCompoundSelection
 
Methods inherited from interface javax.persistence.TupleElement
getAlias, getJavaType
 
Methods inherited from interface javax.persistence.criteria.FetchParent
fetch, fetch, fetch, fetch, fetch, fetch, getFetches
 

Method Detail

getJoins

java.util.Set<Join<X,?>> getJoins()
Return the joins that have been made from this bound type. Returns empty set if no joins have been made from this bound type. Modifications to the set do not affect the query.

Returns:
joins made from this type

isCorrelated

boolean isCorrelated()
Whether the From object has been obtained as a result of correlation (use of a Subquery correlate method).

Returns:
boolean indicating whether the object has been obtained through correlation

getCorrelationParent

From<Z,X> getCorrelationParent()
Returns the parent From object from which the correlated From object has been obtained through correlation (use of a Subquery correlate method).

Returns:
the parent of the correlated From object
Throws:
IllegalStateException - if the From object has not been obtained through correlation

join

<Y> Join<X,Y> join(SingularAttribute<? super X,Y> attribute)
Create an inner join to the specified single-valued attribute.

Parameters:
attribute - target of the join
Returns:
the resulting join

join

<Y> Join<X,Y> join(SingularAttribute<? super X,Y> attribute,
                   JoinType jt)
Create a join to the specified single-valued attribute using the given join type.

Parameters:
attribute - target of the join
jt - join type
Returns:
the resulting join

join

<Y> CollectionJoin<X,Y> join(CollectionAttribute<? super X,Y> collection)
Create an inner join to the specified Collection-valued attribute.

Parameters:
collection - target of the join
Returns:
the resulting join

join

<Y> SetJoin<X,Y> join(SetAttribute<? super X,Y> set)
Create an inner join to the specified Set-valued attribute.

Parameters:
set - target of the join
Returns:
the resulting join

join

<Y> ListJoin<X,Y> join(ListAttribute<? super X,Y> list)
Create an inner join to the specified List-valued attribute.

Parameters:
list - target of the join
Returns:
the resulting join

join

<K,V> MapJoin<X,K,V> join(MapAttribute<? super X,K,V> map)
Create an inner join to the specified Map-valued attribute.

Parameters:
map - target of the join
Returns:
the resulting join

join

<Y> CollectionJoin<X,Y> join(CollectionAttribute<? super X,Y> collection,
                             JoinType jt)
Create a join to the specified Collection-valued attribute using the given join type.

Parameters:
collection - target of the join
jt - join type
Returns:
the resulting join

join

<Y> SetJoin<X,Y> join(SetAttribute<? super X,Y> set,
                      JoinType jt)
Create a join to the specified Set-valued attribute using the given join type.

Parameters:
set - target of the join
jt - join type
Returns:
the resulting join

join

<Y> ListJoin<X,Y> join(ListAttribute<? super X,Y> list,
                       JoinType jt)
Create a join to the specified List-valued attribute using the given join type.

Parameters:
list - target of the join
jt - join type
Returns:
the resulting join

join

<K,V> MapJoin<X,K,V> join(MapAttribute<? super X,K,V> map,
                          JoinType jt)
Create a join to the specified Map-valued attribute using the given join type.

Parameters:
map - target of the join
jt - join type
Returns:
the resulting join

join

<X,Y> Join<X,Y> join(java.lang.String attributeName)
Create an inner join to the specified attribute.

Parameters:
attributeName - name of the attribute for the target of the join
Returns:
the resulting join
Throws:
java.lang.IllegalArgumentException - if attribute of the given name does not exist

joinCollection

<X,Y> CollectionJoin<X,Y> joinCollection(java.lang.String attributeName)
Create an inner join to the specified Collection-valued attribute.

Parameters:
attributeName - name of the attribute for the target of the join
Returns:
the resulting join
Throws:
java.lang.IllegalArgumentException - if attribute of the given name does not exist

joinSet

<X,Y> SetJoin<X,Y> joinSet(java.lang.String attributeName)
Create an inner join to the specified Set-valued attribute.

Parameters:
attributeName - name of the attribute for the target of the join
Returns:
the resulting join
Throws:
java.lang.IllegalArgumentException - if attribute of the given name does not exist

joinList

<X,Y> ListJoin<X,Y> joinList(java.lang.String attributeName)
Create an inner join to the specified List-valued attribute.

Parameters:
attributeName - name of the attribute for the target of the join
Returns:
the resulting join
Throws:
java.lang.IllegalArgumentException - if attribute of the given name does not exist

joinMap

<X,K,V> MapJoin<X,K,V> joinMap(java.lang.String attributeName)
Create an inner join to the specified Map-valued attribute.

Parameters:
attributeName - name of the attribute for the target of the join
Returns:
the resulting join
Throws:
java.lang.IllegalArgumentException - if attribute of the given name does not exist

join

<X,Y> Join<X,Y> join(java.lang.String attributeName,
                     JoinType jt)
Create a join to the specified attribute using the given join type.

Parameters:
attributeName - name of the attribute for the target of the join
jt - join type
Returns:
the resulting join
Throws:
java.lang.IllegalArgumentException - if attribute of the given name does not exist

joinCollection

<X,Y> CollectionJoin<X,Y> joinCollection(java.lang.String attributeName,
                                         JoinType jt)
Create a join to the specified Collection-valued attribute using the given join type.

Parameters:
attributeName - name of the attribute for the target of the join
jt - join type
Returns:
the resulting join
Throws:
java.lang.IllegalArgumentException - if attribute of the given name does not exist

joinSet

<X,Y> SetJoin<X,Y> joinSet(java.lang.String attributeName,
                           JoinType jt)
Create a join to the specified Set-valued attribute using the given join type.

Parameters:
attributeName - name of the attribute for the target of the join
jt - join type
Returns:
the resulting join
Throws:
java.lang.IllegalArgumentException - if attribute of the given name does not exist

joinList

<X,Y> ListJoin<X,Y> joinList(java.lang.String attributeName,
                             JoinType jt)
Create a join to the specified List-valued attribute using the given join type.

Parameters:
attributeName - name of the attribute for the target of the join
jt - join type
Returns:
the resulting join
Throws:
java.lang.IllegalArgumentException - if attribute of the given name does not exist

joinMap

<X,K,V> MapJoin<X,K,V> joinMap(java.lang.String attributeName,
                               JoinType jt)
Create a join to the specified Map-valued attribute using the given join type.

Parameters:
attributeName - name of the attribute for the target of the join
jt - join type
Returns:
the resulting join
Throws:
java.lang.IllegalArgumentException - if attribute of the given name does not exist


Submit a bug or feature

Copyright © 2009, 2010, Oracle Corporation and/or its affiliates. All Rights Reserved. Use is subject to license terms.

Generated on 4-June-2010 04:34