Giter Club home page Giter Club logo

graphql-java-federation's People

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar

graphql-java-federation's Issues

Compound Keys are not supported

Service B:
type TypeB {
... // attributes of TypeB

}

type TypeA @key(fields: "id { uid }") @extends {
id: TypeAId ! @external
}

type TypeAId @extends {
uid: ID! @external
}

Service A:

type TypeA @key(fields: "id { uid }") {
id: TypeAId!
name: String
}

type TypeAId @key(fields: "uid"){
uid: ID!
externalIds: [TypeAIdExternalId] //other fields ..
}

with above schema in the , in a federated service -Service A. where the TypeA and TypeAId GraphQL type are defined when the Federated Entity Resolver tries to get an Object of TypeA with TypeAId , it is not able to resolve the ID types , since the ID types are only expected to be simple keys and a Key field of type id { uid } is not supported

In io.gqljf.federation.FederatedSchemaBuilder#getFederatedEntityId:
final String idValue = (String) representation.get(idFieldName); (Line 154)

The support needs to be added to lookup the Representation map for : id { uid } by lookup first by key "id" and then in a second level map by "uid"

Global Object Identification Specification - resolving Node interface

My GraphQL Service follows the Global Object Identification Specification. We provide an interface called Node. That interface must include exactly one field, called id that returns a non‐null ID.

How does the library take care of implementing services resolving the Node interface and every concrete type that implements Node?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.