[ 
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)

Reply via email to