javax.persistence.metamodel

## Interface Attribute<X,Y>

Type Parameters:
  `X` - The represented type that contains the attribute
  `Y` - The type of the represented attribute

All Known Subinterfaces:
  CollectionAttribute<X,E>, ListAttribute<X,E>, MapAttribute<X,K,V>, PluralAttribute<X,C,E>, SetAttribute<X,E>, SingularAttribute<X,T>

    public interface Attribute<X,Y>

Represents an attribute of a Java type.

Since:
  Java Persistence 2.0

### Nested Class Summary

Nested Classes
`static class` `Attribute.PersistentAttributeType`

### Method Summary

All Methods Instance Methods Abstract Methods
`ManagedType<X>` `getDeclaringType()` Return the managed type representing the type in which the attribute was declared.
`java.lang.reflect.Member` `getJavaMember()` Return the `java.lang.reflect.Member` for the represented attribute.
`java.lang.Class<Y>` `getJavaType()` Return the Java type of the represented attribute.
`java.lang.String` `getName()` Return the name of the attribute.
`Attribute.PersistentAttributeType` `getPersistentAttributeType()` Return the persistent attribute type for the attribute.
`boolean` `isAssociation()` Is the attribute an association.
`boolean` `isCollection()` Is the attribute collection-valued (represents a Collection, Set, List, or Map).

### Method Detail

#### getName

    java.lang.String getName()

Return the name of the attribute.

Returns:
  name

#### getPersistentAttributeType

    Attribute.PersistentAttributeType getPersistentAttributeType()

Return the persistent attribute type for the attribute.

Returns:
  persistent attribute type

#### getDeclaringType

    ManagedType<X> getDeclaringType()

Return the managed type representing the type in which the attribute was declared.

Returns:
  declaring type

#### getJavaType

    java.lang.Class<Y> getJavaType()

Return the Java type of the represented attribute.

Returns:
  Java type

#### getJavaMember

    java.lang.reflect.Member getJavaMember()

Return the `java.lang.reflect.Member` for the represented attribute.

Returns:
  corresponding `java.lang.reflect.Member`

#### isAssociation

    boolean isAssociation()

Is the attribute an association.

Returns:
  boolean indicating whether the attribute corresponds to an association

#### isCollection

    boolean isCollection()

Is the attribute collection-valued (represents a Collection, Set, List, or Map).

Returns:
  boolean indicating whether the attribute is collection-valued