All Downloads are FREE. Search and download functionalities are using the official Maven repository.

graphql.nadel.engine.execution.QueryTransformationResult Maven / Gradle / Ivy

Go to download

Nadel is a Java library that combines multiple GrahpQL services together into one API.

The newest version!
package graphql.nadel.engine.execution;

import graphql.Internal;
import graphql.execution.MergedField;
import graphql.language.Document;
import graphql.language.FragmentDefinition;
import graphql.language.OperationDefinition;
import graphql.nadel.engine.execution.transformation.TransformationMetadata;

import java.util.List;
import java.util.Map;

@Internal
public class QueryTransformationResult {

    private final Document document;
    // will be provided to the ServiceExecution
    private final OperationDefinition operationDefinition;
    // will be provided to the ServiceExecution
    private final Map transformedFragments;
    // used to only pass down the references variables to ServiceExecution
    private final List referencedVariables;

    // used when the underlying raw result is converted into a tree
    private final List transformedMergedFields;

    private final Map variableValues;

    private final TransformationMetadata removedFieldMap;

    private final TransformationState transformations;

    public QueryTransformationResult(Document document,
                                     OperationDefinition operationDefinition,
                                     List transformedMergedFields,
                                     List referencedVariables,
                                     Map transformedFragments,
                                     Map variableValues,
                                     TransformationMetadata removedFieldMap,
                                     TransformationState transformations) {
        this.document = document;
        this.operationDefinition = operationDefinition;
        this.transformedMergedFields = transformedMergedFields;
        this.referencedVariables = referencedVariables;
        this.transformedFragments = transformedFragments;
        this.variableValues = variableValues;
        this.removedFieldMap = removedFieldMap;
        this.transformations = transformations;
    }

    public Document getDocument() {
        return document;
    }

    public OperationDefinition getOperationDefinition() {
        return operationDefinition;
    }

    public List getTransformedMergedFields() {
        return transformedMergedFields;
    }

    public List getReferencedVariables() {
        return referencedVariables;
    }

    public TransformationState getTransformations() {
        return transformations;
    }

    public Map getTransformedFragments() {
        return transformedFragments;
    }

    public Map getVariableValues() {
        return variableValues;
    }

    public TransformationMetadata getRemovedFieldMap() {
        return removedFieldMap;
    }

    public List getHintTypenames() {
        return transformations.getHintTypenames();
    }
}





© 2015 - 2024 Weber Informatics LLC | Privacy Policy