@@ -166,15 +166,7 @@ private void mergeAllOf(Object value, String[] paths, URI currentFileURL) {
166166 Map <String , Object > originalAllOfRoot = refs .jsonContext .read (jsonPath );
167167
168168 AllOfObject allOfObject = new AllOfObject ();
169- merge (allOfObject , originalAllOfRoot );
170- for (int i = 0 ; i < allOf .size (); i ++) {
171- if (allOf .get (i ) instanceof Map ) {
172- Map <String , Object > item = (Map <String , Object >) allOf .get (i );
173- merge (allOfObject , item );
174- } else {
175- throw new RuntimeException ("Could not understand allOf: " + allOf .get (i ));
176- }
177- }
169+ mergeAllOf (allOfObject , originalAllOfRoot );
178170
179171 try {
180172 var isRoot = "$" .equals (jsonPath );
@@ -216,20 +208,20 @@ private void mergeAllOf(Object value, String[] paths, URI currentFileURL) {
216208 }
217209 }
218210
219- private void merge (AllOfObject allOfObject , List <Map <String , Object >> items ) {
211+ private void mergeAllOf (AllOfObject allOfObject , List <Map <String , Object >> items ) {
220212 for (Map <String , Object > innerItem : items ) {
221- merge (allOfObject , innerItem );
213+ mergeAllOf (allOfObject , innerItem );
222214 }
223215 }
224216
225- private void merge (AllOfObject allOfObject , Map <String , Object > item ) {
217+ private void mergeAllOf (AllOfObject allOfObject , Map <String , Object > item ) {
226218 if (item .keySet ().size () == 1 && item .containsKey ("allOf" )) {
227219 List <Map <String , Object >> items = (List ) item .get ("allOf" );
228- merge (allOfObject , items );
220+ mergeAllOf (allOfObject , items );
229221 } else {
230222 for (Map .Entry <String , Object > entry : item .entrySet ()) {
231223 if (entry .getKey ().equals ("allOf" )) {
232- merge (allOfObject , (List ) item .get ("allOf" ));
224+ mergeAllOf (allOfObject , (List ) item .get ("allOf" ));
233225 } else {
234226 allOfObject .allOf .put (entry .getKey (), entry .getValue ());
235227 }
0 commit comments