@@ -506,7 +506,7 @@ private void captureMergedField(ExecutableNormalizedField enf, MergedField merge
506506 }
507507
508508 private void buildEnfsRecursively (@ Nullable ExecutableNormalizedField executableNormalizedField ,
509- @ Nullable ImmutableList <FieldAndAstParent > fieldAndAstParents ,
509+ @ Nullable ImmutableList <CollectedField > fieldAndAstParents ,
510510 int curLevel ) {
511511 if (this .maxDepthSeen < curLevel ) {
512512 this .maxDepthSeen = curLevel ;
@@ -528,14 +528,14 @@ private void buildEnfsRecursively(@Nullable ExecutableNormalizedField executable
528528 return ;
529529 }
530530 collectedFields = new ArrayList <>();
531- for (FieldAndAstParent fieldAndAstParent : fieldAndAstParents ) {
531+ for (CollectedField fieldAndAstParent : fieldAndAstParents ) {
532532 if (fieldAndAstParent .field .getSelectionSet () == null ) {
533533 continue ;
534534 }
535535 // the AST parent comes from the previous collect from selection set call
536536 // and is the type to which the field belongs (the container type of the field) and output type
537537 // of the field needs to be determined based on the field name
538- GraphQLFieldDefinition fieldDefinition = Introspection .getFieldDef (graphQLSchema , fieldAndAstParent .astParentType , fieldAndAstParent .field .getName ());
538+ GraphQLFieldDefinition fieldDefinition = Introspection .getFieldDef (graphQLSchema , fieldAndAstParent .astTypeCondition , fieldAndAstParent .field .getName ());
539539 GraphQLUnmodifiedType selectionSetType = unwrapAll (fieldDefinition .getType ());
540540 this .collectFromSelectionSet (fieldAndAstParent .field .getSelectionSet (),
541541 collectedFields ,
@@ -548,11 +548,11 @@ private void buildEnfsRecursively(@Nullable ExecutableNormalizedField executable
548548
549549 Map <String , List <CollectedField >> fieldsByName = fieldsByResultKey (collectedFields );
550550 ImmutableList .Builder <ExecutableNormalizedField > resultNFs = ImmutableList .builder ();
551- ImmutableListMultimap .Builder <ExecutableNormalizedField , FieldAndAstParent > normalizedFieldToAstFields = ImmutableListMultimap .builder ();
551+ ImmutableListMultimap .Builder <ExecutableNormalizedField , CollectedField > normalizedFieldToAstFields = ImmutableListMultimap .builder ();
552552 createNFs (resultNFs , fieldsByName , normalizedFieldToAstFields , curLevel + 1 , executableNormalizedField );
553553
554554 ImmutableList <ExecutableNormalizedField > nextLevelChildren = resultNFs .build ();
555- ImmutableListMultimap <ExecutableNormalizedField , FieldAndAstParent > nextLevelNormalizedFieldToAstFields = normalizedFieldToAstFields .build ();
555+ ImmutableListMultimap <ExecutableNormalizedField , CollectedField > nextLevelNormalizedFieldToAstFields = normalizedFieldToAstFields .build ();
556556
557557 for (ExecutableNormalizedField childENF : nextLevelChildren ) {
558558 if (executableNormalizedField == null ) {
@@ -561,7 +561,7 @@ private void buildEnfsRecursively(@Nullable ExecutableNormalizedField executable
561561 } else {
562562 executableNormalizedField .addChild (childENF );
563563 }
564- ImmutableList <FieldAndAstParent > childFieldAndAstParents = nextLevelNormalizedFieldToAstFields .get (childENF );
564+ ImmutableList <CollectedField > childFieldAndAstParents = nextLevelNormalizedFieldToAstFields .get (childENF );
565565
566566 MergedField mergedField = newMergedField (childFieldAndAstParents );
567567 captureMergedField (childENF , mergedField );
@@ -582,13 +582,13 @@ private void checkMaxDepthExceeded(int depthSeen) {
582582 }
583583 }
584584
585- private static MergedField newMergedField (ImmutableList <FieldAndAstParent > fieldAndAstParents ) {
585+ private static MergedField newMergedField (ImmutableList <CollectedField > fieldAndAstParents ) {
586586 return MergedField .newMergedField (map (fieldAndAstParents , fieldAndAstParent -> fieldAndAstParent .field )).build ();
587587 }
588588
589589 private void updateFieldToNFMap (ExecutableNormalizedField executableNormalizedField ,
590- ImmutableList <FieldAndAstParent > mergedField ) {
591- for (FieldAndAstParent astField : mergedField ) {
590+ ImmutableList <CollectedField > mergedField ) {
591+ for (CollectedField astField : mergedField ) {
592592 fieldToNormalizedField .put (astField .field , executableNormalizedField );
593593 }
594594 }
@@ -612,7 +612,7 @@ private Map<String, List<CollectedField>> fieldsByResultKey(List<CollectedField>
612612
613613 private void createNFs (ImmutableList .Builder <ExecutableNormalizedField > nfListBuilder ,
614614 Map <String , List <CollectedField >> fieldsByName ,
615- ImmutableListMultimap .Builder <ExecutableNormalizedField , FieldAndAstParent > normalizedFieldToAstFields ,
615+ ImmutableListMultimap .Builder <ExecutableNormalizedField , CollectedField > normalizedFieldToAstFields ,
616616 int level ,
617617 ExecutableNormalizedField parent ) {
618618 for (String resultKey : fieldsByName .keySet ()) {
@@ -624,7 +624,7 @@ private void createNFs(ImmutableList.Builder<ExecutableNormalizedField> nfListBu
624624 continue ;
625625 }
626626 for (CollectedField collectedField : fieldGroup .fields ) {
627- normalizedFieldToAstFields .put (nf , new FieldAndAstParent ( collectedField . field , collectedField . astTypeCondition ) );
627+ normalizedFieldToAstFields .put (nf , collectedField );
628628 }
629629 nfListBuilder .add (nf );
630630
@@ -924,26 +924,6 @@ public CollectedField(Field field, Set<GraphQLObjectType> objectTypes, GraphQLCo
924924 }
925925 }
926926
927- public static class CollectNFResult {
928- private final Collection <ExecutableNormalizedField > children ;
929- private final ImmutableListMultimap <ExecutableNormalizedField , FieldAndAstParent > normalizedFieldToAstFields ;
930-
931- public CollectNFResult (Collection <ExecutableNormalizedField > children , ImmutableListMultimap <ExecutableNormalizedField , FieldAndAstParent > normalizedFieldToAstFields ) {
932- this .children = children ;
933- this .normalizedFieldToAstFields = normalizedFieldToAstFields ;
934- }
935- }
936-
937- private static class FieldAndAstParent {
938- final Field field ;
939- final GraphQLCompositeType astParentType ;
940-
941- private FieldAndAstParent (Field field , GraphQLCompositeType astParentType ) {
942- this .field = field ;
943- this .astParentType = astParentType ;
944- }
945- }
946-
947927 private static class CollectedFieldGroup {
948928 Set <GraphQLObjectType > objectTypes ;
949929 Set <CollectedField > fields ;
0 commit comments