org.hibernate.annotations.AnyMetaDef Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of hibernate-annotations
Show all versions of hibernate-annotations
Annotations metadata for Hibernate
//$Id$
package org.hibernate.annotations;
import static java.lang.annotation.ElementType.FIELD;
import static java.lang.annotation.ElementType.METHOD;
import static java.lang.annotation.ElementType.PACKAGE;
import static java.lang.annotation.ElementType.TYPE;
import java.lang.annotation.Retention;
import static java.lang.annotation.RetentionPolicy.RUNTIME;
/**
* Defines @Any and @manyToAny metadata
*
* @author Emmanuel Bernard
*/
@java.lang.annotation.Target( { PACKAGE, TYPE, METHOD, FIELD } )
@Retention( RUNTIME )
public @interface AnyMetaDef {
/**
* If defined, assign a global meta definition name to be used in an @Any or @ManyToAny annotation
* If not defined, the metadata applies to the current property or field
*/
String name() default "";
/**
* meta discriminator Hibernate type
*/
String metaType();
/**
* Hibernate type of the id column
* @return
*/
String idType();
/**
* Matching discriminator values with their respective entity
*/
MetaValue[] metaValues();
}