[
https://issues.apache.org/jira/browse/SLING-10655?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Radu Cotescu updated SLING-10655:
---------------------------------
Description:
The [GraphQL Schema
Aggregator|https://github.com/apache/sling-org-apache-sling-graphql-schema-aggregator]
allows assembling and serving GraphQL Schemas to which multiple provider
bundles can contribute.
Currently, this still relies on the presence of the {{Sling-GraphQL-Schema}}
bundle header in the provider bundles, but this should be replaced by OSGi
capabilities and requirements.
The GraphQL Schema Aggregator already provides the following capability:
{code}
osgi.extender;osgi.extender="sling.graphql-schema-aggregator";version:Version="0.1"
{code}
where the version indicates which syntax version of the partial files is
supported.
Provider bundles should require this capability:
{code}
Require-Capability:
osgi.extender;filter:="(&(osgi.extender=sling.graphql-schema-aggregator)(version>=0.1)((version>=1.0)))"
{code}
so that they are wired to the Schema Aggregator and provide in turn a
capability indicating the partials they contribute. If they also require other
partials provided by other bundles, these should be translated as well into
other {{Require-Capability}} entries.
was:
The [GraphQL Schema
Aggregator|https://github.com/apache/sling-org-apache-sling-graphql-schema-aggregator]
allows assembling and serving GraphQL Schemas to which multiple provider
bundles can contribute.
Currently, this still relies on the presence of the {{Sling-GraphQL-Schema}}
bundle header in the provider bundles, but this should be replaced by OSGi
capabilities and requirements.
The GraphQL Schema Aggregator already provides the following capability:
{code}
osgi.extender;osgi.extender="sling.graphql-schema-aggregator";version:Version="0.1"
{code}
where the version indicates which syntax version of the partial files is
supported.
Provider bundles should in turn require this capability:
{code}
Require-Capability:
osgi.extender;filter:="(&(osgi.extender=sling.graphql-schema-aggregator)(version>=0.1)((version>=1.0)))"
{code}
and provide in turn a capability indicating the partials they contribute. If
they also require other partials provided by other bundles, these should be
translated as well into other {{Require-Capability}} entries.
> Provide a good developer experience for GraphQL Schemas assembled by the
> Schema Aggregator
> ------------------------------------------------------------------------------------------
>
> Key: SLING-10655
> URL: https://issues.apache.org/jira/browse/SLING-10655
> Project: Sling
> Issue Type: Task
> Components: GraphQL
> Reporter: Radu Cotescu
> Assignee: Radu Cotescu
> Priority: Major
> Fix For: GraphQL Schema Aggregator 0.0.2
>
>
> The [GraphQL Schema
> Aggregator|https://github.com/apache/sling-org-apache-sling-graphql-schema-aggregator]
> allows assembling and serving GraphQL Schemas to which multiple provider
> bundles can contribute.
> Currently, this still relies on the presence of the {{Sling-GraphQL-Schema}}
> bundle header in the provider bundles, but this should be replaced by OSGi
> capabilities and requirements.
> The GraphQL Schema Aggregator already provides the following capability:
> {code}
> osgi.extender;osgi.extender="sling.graphql-schema-aggregator";version:Version="0.1"
> {code}
> where the version indicates which syntax version of the partial files is
> supported.
> Provider bundles should require this capability:
> {code}
> Require-Capability:
> osgi.extender;filter:="(&(osgi.extender=sling.graphql-schema-aggregator)(version>=0.1)((version>=1.0)))"
> {code}
> so that they are wired to the Schema Aggregator and provide in turn a
> capability indicating the partials they contribute. If they also require
> other partials provided by other bundles, these should be translated as well
> into other {{Require-Capability}} entries.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)