Мы используем graphql-spqr для создания схемы graphql из нашего внутреннего API и модели Java.
Сегодня, чтобы получить продукты, например, мы аннотируем методы, которые выглядят следующим образом:
@GraphQLQuery
List<Product> allProducts() {...}
Мы хотим избежать создания новой конечной точки для получения дополнительных полей в Product.
Есть ли способ определить преобразователь для полей, которые не являются частью модели? (аннотация или нет)
В качестве примера предположим, что наша модель Java для продукта + две конечные точки:
class Product {
String id;
String name;
}
class Frame {
String id;
}
// and some kind of relationship between the two
class ProductToFrame {
String productId;
String frameId
}
List<Product> allProducts();
List<Frame> getFramesByProductId(String productId);
И мы хотим, чтобы наша схема graphql выглядела так:
type Product {
id: String
name: String
frames: [Frame]
}
type Frame {
id: String
}