org.apache.cayenne.jpa.map
Class JpaPropertyDescriptor

java.lang.Object
  extended by org.apache.cayenne.jpa.map.JpaPropertyDescriptor

public class JpaPropertyDescriptor
extends Object

A descriptor of a class property that may or may not be persistent.

Author:
Andrus Adamchik

Field Summary
protected  Type genericType
           
protected  AnnotatedElement member
           
protected  String name
           
protected  Class<?> targetEntityType
           
protected  Class<?> type
           
 
Constructor Summary
JpaPropertyDescriptor(Field field)
           
JpaPropertyDescriptor(Method getter, String name)
           
 
Method Summary
 AnnotatedElement getMember()
           
 String getName()
           
 Class<?> getTargetEntityType()
           
 Class<?> getType()
           
protected  void initTargetEntityType(Type genericType)
           
 boolean isDefaultNonRelationalType()
          Returns true if the property is a default simple attribute.
 boolean isStringType()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

member

protected AnnotatedElement member

name

protected String name

type

protected Class<?> type

genericType

protected Type genericType

targetEntityType

protected Class<?> targetEntityType
Constructor Detail

JpaPropertyDescriptor

public JpaPropertyDescriptor(Field field)

JpaPropertyDescriptor

public JpaPropertyDescriptor(Method getter,
                             String name)
Method Detail

initTargetEntityType

protected void initTargetEntityType(Type genericType)

getMember

public AnnotatedElement getMember()

getName

public String getName()

getType

public Class<?> getType()

getTargetEntityType

public Class<?> getTargetEntityType()

isStringType

public boolean isStringType()

isDefaultNonRelationalType

public boolean isDefaultNonRelationalType()
Returns true if the property is a default simple attribute.

JPA Spec, 2.1.6:

If the type of the field or property is one of the following, it is mapped in the same way as it would if it were annotated as Basic: Java primitive types, wrappers of the primitive types, java.lang.String, java.math.BigInteger, java.math.BigDecimal, java.util.Date, java.util.Calendar, java.sql.Date, java.sql.Time, java.sql.Timestamp, byte[], Byte[], char[], Character[], enums, any other type that implements Serializable. See Sections 9.1.16 through 9.1.19. It is an error if no annotation is present and none of the above rules apply.



Copyright © 2001-2008 Apache Cayenne. All Rights Reserved.