com.mysema.query.types.path
Class PEntity<D>

java.lang.Object
  extended by com.mysema.query.types.expr.Expr<D>
      extended by com.mysema.query.types.path.PEntity<D>
Type Parameters:
D - Java type
All Implemented Interfaces:
Path<D>, Serializable
Direct Known Subclasses:
PathBuilder

public class PEntity<D>
extends Expr<D>
implements Path<D>

PEntity represents entity paths

Author:
tiwe
See Also:
Serialized Form

Constructor Summary
PEntity(Class<? extends D> type, PathMetadata<?> metadata)
           
PEntity(Class<? extends D> type, PathMetadata<?> metadata, PathInits inits)
           
 
Method Summary
 void accept(Visitor v)
           
<T extends PEntity<? extends D>>
T
as(Class<T> clazz)
          Cast the path to a subtype querytype
 Expr<D> asExpr()
           
protected
<A> PArray<A>
createArray(String property, Class<? super A> type)
           
protected  PBoolean createBoolean(String propertyName)
           
protected
<A> PCollection<A>
createCollection(String property, Class<? super A> type)
           
protected
<A extends Comparable>
PComparable<A>
createComparable(String property, Class<? super A> type)
           
protected
<A extends Comparable>
PDate<A>
createDate(String property, Class<? super A> type)
           
protected
<A extends Comparable>
PDateTime<A>
createDateTime(String property, Class<? super A> type)
           
protected
<A,E extends Expr<A>>
PList<A,E>
createList(String property, Class<? super A> type, Class<? super E> queryType)
           
protected
<K,V,E extends Expr<V>>
PMap<K,V,E>
createMap(String property, Class<? super K> key, Class<? super V> value, Class<? super E> queryType)
           
protected
<A extends Number & Comparable<?>>
PNumber<A>
createNumber(String property, Class<? super A> type)
           
protected
<A> PSet<A>
createSet(String property, Class<? super A> type)
           
protected
<A> PSimple<A>
createSimple(String path, Class<? super A> type)
           
protected  PString createString(String property)
           
protected
<A extends Comparable>
PTime<A>
createTime(String property, Class<? super A> type)
           
 boolean equals(Object o)
           
protected  PathMetadata<?> forProperty(String property)
           
 AnnotatedElement getAnnotatedElement()
          Return the annotated element related to the given path For property paths the annotated element contains the annotations of the related field and/or getter method and for all others paths the annotated element is the expression type.
 PathMetadata<?> getMetadata()
          Get the metadata for this path
 Path<?> getRoot()
          Get the root for this path
 int hashCode()
           
<B extends D>
EBoolean
instanceOf(Class<B> type)
          Create an this instanceOf type expression
 EBoolean isNotNull()
          Create a this is not null expression
 EBoolean isNull()
          Create a this is null expression
 
Methods inherited from class com.mysema.query.types.expr.Expr
count, countAll, countDistinct, eq, eq, getType, in, in, in, ne, ne, notIn, notIn, notIn, toString, when, when
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface com.mysema.query.types.path.Path
getType
 

Constructor Detail

PEntity

public PEntity(Class<? extends D> type,
               PathMetadata<?> metadata)

PEntity

public PEntity(Class<? extends D> type,
               PathMetadata<?> metadata,
               @Nullable
               PathInits inits)
Method Detail

accept

public void accept(Visitor v)
Specified by:
accept in class Expr<D>

as

public <T extends PEntity<? extends D>> T as(Class<T> clazz)
Cast the path to a subtype querytype

Type Parameters:
T -
Parameters:
clazz -
Returns:

asExpr

public Expr<D> asExpr()
Specified by:
asExpr in interface Path<D>
Returns:

createArray

protected <A> PArray<A> createArray(String property,
                                    Class<? super A> type)
Type Parameters:
A -
Parameters:
property -
type -
Returns:

createBoolean

protected PBoolean createBoolean(String propertyName)
Parameters:
propertyName -
Returns:

createCollection

protected <A> PCollection<A> createCollection(String property,
                                              Class<? super A> type)
Type Parameters:
A -
Parameters:
property -
type -
Returns:

createComparable

protected <A extends Comparable> PComparable<A> createComparable(String property,
                                                                 Class<? super A> type)
Type Parameters:
A -
Parameters:
property -
type -
Returns:

createDate

protected <A extends Comparable> PDate<A> createDate(String property,
                                                     Class<? super A> type)
Type Parameters:
A -
Parameters:
property -
type -
Returns:

createDateTime

protected <A extends Comparable> PDateTime<A> createDateTime(String property,
                                                             Class<? super A> type)
Type Parameters:
A -
Parameters:
property -
type -
Returns:

createList

protected <A,E extends Expr<A>> PList<A,E> createList(String property,
                                                      Class<? super A> type,
                                                      Class<? super E> queryType)
Type Parameters:
A -
E -
Parameters:
property -
type -
queryType -
Returns:

createMap

protected <K,V,E extends Expr<V>> PMap<K,V,E> createMap(String property,
                                                        Class<? super K> key,
                                                        Class<? super V> value,
                                                        Class<? super E> queryType)
Type Parameters:
K -
V -
E -
Parameters:
property -
key -
value -
queryType -
Returns:

createNumber

protected <A extends Number & Comparable<?>> PNumber<A> createNumber(String property,
                                                                    Class<? super A> type)
Type Parameters:
A -
Parameters:
property -
type -
Returns:

createSet

protected <A> PSet<A> createSet(String property,
                                Class<? super A> type)
Type Parameters:
A -
Parameters:
property -
type -
Returns:

createSimple

protected <A> PSimple<A> createSimple(String path,
                                      Class<? super A> type)
Type Parameters:
A -
Parameters:
path -
type -
Returns:

createString

protected PString createString(String property)
Parameters:
property -
Returns:

createTime

protected <A extends Comparable> PTime<A> createTime(String property,
                                                     Class<? super A> type)
Type Parameters:
A -
Parameters:
property -
type -
Returns:

equals

public boolean equals(Object o)
Overrides:
equals in class Object

forProperty

protected PathMetadata<?> forProperty(String property)

getMetadata

public PathMetadata<?> getMetadata()
Description copied from interface: Path
Get the metadata for this path

Specified by:
getMetadata in interface Path<D>
Returns:

getRoot

public Path<?> getRoot()
Description copied from interface: Path
Get the root for this path

Specified by:
getRoot in interface Path<D>
Returns:

hashCode

public int hashCode()
Overrides:
hashCode in class Expr<D>

instanceOf

public <B extends D> EBoolean instanceOf(Class<B> type)
Create an this instanceOf type expression

Type Parameters:
B -
Parameters:
type -
Returns:

isNotNull

public EBoolean isNotNull()
Description copied from interface: Path
Create a this is not null expression

Specified by:
isNotNull in interface Path<D>
Returns:

isNull

public EBoolean isNull()
Description copied from interface: Path
Create a this is null expression

Specified by:
isNull in interface Path<D>
Returns:

getAnnotatedElement

public AnnotatedElement getAnnotatedElement()
Description copied from interface: Path
Return the annotated element related to the given path For property paths the annotated element contains the annotations of the related field and/or getter method and for all others paths the annotated element is the expression type.

Specified by:
getAnnotatedElement in interface Path<D>
Returns:


Copyright © 2007-2010 Mysema Ltd. All Rights Reserved.