Hi
I am new to OSLC/lyo and the @Oslc… magic lyo is using. Bear with me, if I my mistake is obvious.
I use a recent DNG 7.0.2 and I try to use the ETMSample (changes certain locations from QM to RM) after fetching the rootservices it’s loading the catalog from ttps://dng.example.one:9443/rm/oslc_rm/catalog
<?xml version="1.0" encoding="UTF-8"?><oslc_disc:ServiceProviderCatalog
xmlns:rdf=“http://www.w3.org/1999/02/22-rdf-syntax-ns#”
xmlns:dcterms=“DCMI: DCMI Metadata Terms”
xmlns:oslc_disc=“http://open-services.net/xmlns/discovery/1.0/”
xmlns:jp=“http://jazz.net/xmlns/prod/jazz/process/1.0/”
rdf:about=“https://dng.example.one:9443/rm/oslc_rm/catalog”>
dcterms:titleRMCatalog</dcterms:title>
<oslc_disc:entry>
<oslc_disc:ServiceProvider>
dcterms:titleTest</dcterms:title>
<oslc_disc:details rdf:resource=“https://dng.example.one:9443/rm/process/project-areas/_HPdqQMCrEeycW9snq2oQSw”/>
<jp:consumerRegistry rdf:resource=“https://dng.example.one:9443/rm/process/project-areas/_HPdqQMCrEeycW9snq2oQSw/links”/>
<oslc_disc:services rdf:resource=“https://dng.example.one:9443/rm/oslc_rm/_HPdqQMCrEeycW9snq2oQSw/services.xml”/>
</oslc_disc:ServiceProvider>
</oslc_disc:entry>
</oslc_disc:ServiceProviderCatalog>
Which looks like this specification is followed:
https://archive.open-services.net/bin/view/Main/OslcServiceProviderCatalogV1.html
If I read the class ServiceProviderCatalog I could easily imagine that this specification is followed:
In line 443 of OslcClient happens the magic to convert this response to a ServiceProviderCatalog
ServiceProviderCatalog catalog = response.readEntity(ServiceProviderCatalog.class);
In this catalog object the number of ServiceProviders is 0 (catalog.getServiceProviders().length==0).
Obviously lyo is expecting a newer version of the standard than what DNG is providing.
Is there a chance to have a switch to distiguish between these two ServiceProviderCatalog versions?
Could one construct a 150% ServiceProviderCatalog to also digest the DNG Version?
Can I solve this as a user of the lyo API?
How would one model the oslc_disc:entry?
Would one use an intermediate class entry and then the ServiceProvider or can I kind of “grab-all” ServiceProvider?
Is there a chance to peek into the response to “know” which class to use to decode the response?
Thanks for any help and Kind Regards
Thorsten