javax.persistence.metamodel.Attribute Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of javax.persistence Show documentation
Show all versions of javax.persistence Show documentation
The Java Persistence API (JPA) : a standard interface-based Java model abstraction of persistence, developed by the JCP.
/*
* Copyright (c) 2008, 2009, 2011 Oracle, Inc. All rights reserved.
*
* This program and the accompanying materials are made available under the
* terms of the Eclipse Public License v1.0 and Eclipse Distribution License v. 1.0
* which accompanies this distribution. The Eclipse Public License is available
* at http://www.eclipse.org/legal/epl-v10.html and the Eclipse Distribution License
* is available at http://www.eclipse.org/org/documents/edl-v10.php.
*/
package javax.persistence.metamodel;
/**
* Represents an attribute of a Java type.
*
* @param The represented type that contains the attribute
* @param The type of the represented attribute
* @since Java Persistence 2.0
*/
public interface Attribute {
public static enum PersistentAttributeType {
/**
* Many-to-one association
*/
MANY_TO_ONE,
/**
* One-to-one association
*/
ONE_TO_ONE,
/**
* Basic attribute
*/
BASIC,
/**
* Embeddable class attribute
*/
EMBEDDED,
/**
* Many-to-many association
*/
MANY_TO_MANY,
/**
* One-to-many association
*/
ONE_TO_MANY,
/**
* Element collection
*/
ELEMENT_COLLECTION
}
/**
* Return the name of the attribute.
*
* @return name
*/
String getName();
/**
* Return the persistent attribute type for the attribute.
*
* @return persistent attribute type
*/
PersistentAttributeType getPersistentAttributeType();
/**
* Return the managed type representing the type in which
* the attribute was declared.
*
* @return declaring type
*/
ManagedType getDeclaringType();
/**
* Return the Java type of the represented attribute.
*
* @return Java type
*/
Class getJavaType();
/**
* Return the java.lang.reflect.Member
for the represented
* attribute.
*
* @return corresponding java.lang.reflect.Member
*/
java.lang.reflect.Member getJavaMember();
/**
* Is the attribute an association.
*
* @return boolean indicating whether the attribute
* corresponds to an association
*/
boolean isAssociation();
/**
* Is the attribute collection-valued (represents a Collection,
* Set, List, or Map).
*
* @return boolean indicating whether the attribute is
* collection-valued
*/
boolean isCollection();
}
© 2015 - 2024 Weber Informatics LLC | Privacy Policy