javax.persistence.NamedSubgraph 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
javax.persistence build based upon git transaction cfcdce1
/*******************************************************************************
* Copyright (c) 2011 - 2013 Oracle Corporation. 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.
*
* Contributors:
* Linda DeMichiel - Java Persistence 2.1
*
******************************************************************************/
package javax.persistence;
import java.lang.annotation.Target;
import java.lang.annotation.Retention;
import static java.lang.annotation.RetentionPolicy.RUNTIME;
/**
* A NamedSubgraph
is a member element of a
* NamedEntityGraph
. The NamedSubgraph
is
* only referenced from within a NamedEntityGraph and can not be
* referenced independently. It is referenced by its name
* from a NamedAttributeNode
element of the
* NamedEntityGraph
.
*
* @see NamedEntityGraph
* @see NamedAttributeNode
*
* @since Java Persistence 2.1
*/
@Target({})
@Retention(RUNTIME)
public @interface NamedSubgraph {
/**
* (Required) The name of the subgraph as referenced from a
* NamedAttributeNode element.
*/
String name();
/**
* (Optional) The type represented by this subgraph. The element
* must be specified when this subgraph is extending a definition
* on behalf of a subclass.
*/
Class type() default void.class;
/**
* (Required) The list of the attributes of the class that must
* be included. If the named subgraph corresponds to a subclass
* of the class referenced by the corresponding attribute node,
* then only subclass-specific attributes are listed.
*/
NamedAttributeNode[] attributeNodes();
}