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

org.aksw.jenax.graphql.rdf.adapter.GraphQlExecOverRdf Maven / Gradle / Ivy

The newest version!
package org.aksw.jenax.graphql.rdf.adapter;

import java.util.Set;

import org.aksw.jenax.graphql.json.api.GraphQlDataProvider;
import org.aksw.jenax.graphql.json.api.GraphQlExec;
import org.aksw.jenax.graphql.rdf.api.RdfGraphQlDataProvider;
import org.aksw.jenax.graphql.rdf.api.RdfGraphQlExec;
import org.aksw.jenax.ron.RdfElementVisitor;
import org.aksw.jenax.ron.RdfElementVisitorRdfToJson;

import com.google.gson.JsonElement;

public class GraphQlExecOverRdf
    implements GraphQlExec
{
    protected RdfGraphQlExec delegate;
    protected RdfElementVisitor converter;

    public GraphQlExecOverRdf(RdfGraphQlExec delegate) {
        this(delegate, new RdfElementVisitorRdfToJson());
    }

    public GraphQlExecOverRdf(RdfGraphQlExec delegate, RdfElementVisitor converter) {
        super();
        this.delegate = delegate;
        this.converter = converter;
    }

    @Override
    public Set getDataProviderNames() {
        return delegate.getDataProviderNames();
    }

    @Override
    public GraphQlDataProvider getDataProvider(String name) {
        RdfGraphQlDataProvider base = delegate.getDataProvider(name);
        GraphQlDataProvider result = base == null ? null : new GraphQlDataProviderOverRdf(base, converter);
        return result;
    }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy