@@ -68,11 +68,29 @@ public interface AttributeNode<J> extends GraphNode<J>, jakarta.persistence.Attr
6868 */
6969 Map <Class <?>, ? extends SubGraph <?>> getKeySubGraphs ();
7070
71+ /**
72+ * All value subgraphs rooted at this node.
73+ * <p>
74+ * Includes treated subgraphs.
75+ *
76+ * @apiNote This operation is declared with raw types by JPA
77+ *
78+ * @see #getSubGraphs()
79+ */
7180 @ Override
7281 default @ SuppressWarnings ("rawtypes" ) Map <Class , Subgraph > getSubgraphs () {
7382 return unmodifiableMap ( getSubGraphs () );
7483 }
7584
85+ /**
86+ * All key subgraphs rooted at this node.
87+ * <p>
88+ * Includes treated subgraphs.
89+ *
90+ * @apiNote This operation is declared with raw types by JPA
91+ *
92+ * @see #getKeySubGraphs()
93+ */
7694 @ Override
7795 default @ SuppressWarnings ("rawtypes" ) Map <Class , Subgraph > getKeySubgraphs () {
7896 return unmodifiableMap ( getKeySubGraphs () );
@@ -81,12 +99,22 @@ public interface AttributeNode<J> extends GraphNode<J>, jakarta.persistence.Attr
8199 /**
82100 * Create and return a new value {@link SubGraph} rooted at this node,
83101 * or return an existing such {@link SubGraph} if there is one.
102+ * <p>
103+ * Note that {@code graph.addAttributeNode(att).makeSubGraph()} is a
104+ * synonym for {@code graph.addSubgraph(att)}.
105+ *
106+ * @see Graph#addSubgraph(jakarta.persistence.metamodel.Attribute)
84107 */
85108 SubGraph <?> makeSubGraph ();
86109
87110 /**
88111 * Create and return a new key {@link SubGraph} rooted at this node,
89112 * or return an existing such {@link SubGraph} if there is one.
113+ * <p>
114+ * Note that {@code graph.addAttributeNode(att).makeKeySubGraph()} is a
115+ * synonym for {@code graph.addMapKeySubgraph(att)}.
116+ *
117+ * @see Graph#addMapKeySubgraph(jakarta.persistence.metamodel.MapAttribute)
90118 */
91119 SubGraph <?> makeKeySubGraph ();
92120
@@ -97,8 +125,13 @@ public interface AttributeNode<J> extends GraphNode<J>, jakarta.persistence.Attr
97125 * <p>
98126 * If the given type is a proper subtype of the value type, the result
99127 * is a treated subgraph.
128+ * <p>
129+ * Note that {@code graph.addAttributeNode(att).makeSubGraph(cl)}
130+ * is a synonym for {@code graph.addTreatedSubgraph(att,cl)}.
100131 *
101132 * @param subtype The type or treated type of the value type
133+ *
134+ * @see Graph#addTreatedSubgraph(jakarta.persistence.metamodel.Attribute, Class)
102135 */
103136 <S > SubGraph <S > makeSubGraph (Class <S > subtype );
104137
@@ -109,8 +142,13 @@ public interface AttributeNode<J> extends GraphNode<J>, jakarta.persistence.Attr
109142 * <p>
110143 * If the given type is a proper subtype of the key type, the result
111144 * is a treated subgraph.
145+ * <p>
146+ * Note that {@code graph.addAttributeNode(att).makeKeySubGraph(cl)}
147+ * is a synonym for {@code graph.addTreatedMapKeySubgraph(att,cl)}.
112148 *
113149 * @param subtype The type or treated type of the key type
150+ *
151+ * @see Graph#addTreatedMapKeySubgraph(jakarta.persistence.metamodel.MapAttribute,Class)
114152 */
115153 <S > SubGraph <S > makeKeySubGraph (Class <S > subtype );
116154
@@ -123,6 +161,8 @@ public interface AttributeNode<J> extends GraphNode<J>, jakarta.persistence.Attr
123161 * is a treated subgraph.
124162 *
125163 * @param subtype The type or treated type of the value type
164+ *
165+ * @since 7.0
126166 */
127167 @ Incubating
128168 <S > SubGraph <S > makeSubGraph (ManagedType <S > subtype );
@@ -136,6 +176,8 @@ public interface AttributeNode<J> extends GraphNode<J>, jakarta.persistence.Attr
136176 * is a treated subgraph.
137177 *
138178 * @param subtype The type or treated type of the key type
179+ *
180+ * @since 7.0
139181 */
140182 @ Incubating
141183 <S > SubGraph <S > makeKeySubGraph (ManagedType <S > subtype );
0 commit comments