View as "text/plain" |
Blame |
Last modification |
View Log
| RSS feed
1
//$Id: DiscriminatorValue.java 11282 2007-03-14 22:05:59Z epbernard $
package javax.persistence;
import java.lang.annotation.Target;
import java.lang.annotation.Retention;
import static java.lang.annotation.RetentionPolicy.RUNTIME;
import static java.lang.annotation.ElementType.TYPE;
/**
* Is used to specify the value of the discriminator column for entities of the given type.
* The DiscriminatorValue annotation can only be specified on a concrete entity class.
* If the DiscriminatorValue annotation is not specified and a discriminator column is used,
* a provider-specific function will be used to generate a value representing the entity type.
* If the DiscriminatorType is STRING, the discriminator value default is the entity name.
*
* The inheritance strategy and the discriminator column are only specified in the root
* of an entity class hierarchy or subhierarchy in which a different inheritance strategy
* is applied. The discriminator value, if not defaulted, should be specified for each entity
* class in the hierarchy.
*
* @author Emmanuel Bernard
*/
@
Target({TYPE
}) @
Retention(RUNTIME
)
public @
interface DiscriminatorValue
{
/**
* The value that indicates that the row is an entity of the annotated entity type.
*
* If the DiscriminatorValue annotation is not specified and a discriminator column is used,
* a provider-specific function will be used to generate a value representing the entity type.
* If the DiscriminatorType is STRING, the discriminator value default is the entity name.
*/
String value
();
}