Integrating : Open Services for Lifecycle Collaboration (OSLC) : Linking System Architect and non-IBM products : Configuring System Architect as a consumer of non-IBM products
  
Configuring System Architect as a consumer of non-IBM products
As an OSLC-compliant application, System Architect can consume artifacts from other OSLC-compliant products of other companies.
The sections below contain information for consuming artifacts from products of other companies.
Authentication
The System Architect OSLC provider uses OAuth as the authentication method. The System Architect consumer locates the OAuth URLs in the providers Root service document and authenticates using OAuth.OAuth searches in the Root service document for the following URLs.
Request token
//oslc:OAuthConfiguration/oslc:oauthRequestTokenURI@rdf:resource
Authorization token:
//oslc:OAuthConfiguration/oslc:oauthAuthorization@rdf:resource
Access token
//oslc:OAuthConfiguration/oslc:oauthAccessTokenURI@rdf:resource
The System Architect consumer uses an OAuth callback URL that listens to itself (http://DNSHostname:8890/SAOSLCConsumer) on port 8890. This URL must be a valid and accessible URL; the consumer recognizes the callback by detecting a redirect to the URL. The port on the consumer can be configured through SAOSLCConsumerPortNumber in section SystemArchitect.
The scheme of the consumer callback can also be configured by setting SAOSLCConsumerEnableSSL in section SystemArchitect of the ini file. The default for this value is N; if it is set to Y then the callback URL will be https://<DNSHostname:PortNumber>/SAOSLCConsumer.
Utility SAPortServiceRegistration now supports option /E to enable SSL (https). The default when /E is not specified is add http to the URL reservation.
If the user wants to use HTTPS they will have to register a certificate manually on each System Architect desktop machine using command netsh:
netsh http add sslcert ipport=0.0.0.0:8890 certhash=<hash from certificate> certstorename=Root appid={dbf33ca9-d689-4155-848b-1d64e0148bd1}
The System Architect installer runs the port registration utility silently and reserves the following URL by default. To switch to SSL, the default entry must first be removed by running SAPortServiceRegistration with option /D. The run this utility again with option /E:
netsh http add urlacl url=http://<local hostname>:8890/SAOSLCConsumer/ sddl=D:(A;;GX;;;S-1-5-11)
OSLC compliance
The System Architect consumer uses the following OSLC services:
1 Delegated UI (the picker dialog box) to select a remote resource.
2 Query interface (if available) in the form:
Show Incoming Links is supported for the selected diagram/definition.
A call is first made to the Service URL to locate the Query URL:
//oslc:QueryCapability/oslc:queryBase@rdf:resource
After obtaining the Query URL from the Service URL, the URI listed below is appended to the Query URL to search for incoming links:
<Query URL>?oslc.where=*=<{ URL formed for Selected definition/diagram}>&oslc.select=*
3 Resource requests with the following accept headers:
application/rdf+xml: To the Root Service URL, Service Provider Catalog URL to locate Service under it.
application/x-jazz-compact-rendering,application/x-oslc-compact+xml: To get the details of Hover information.
application/x-oslc-cm-service-description+xml: To get the details of the service XML for OSLC CM
application/x-oslc-rm-service-description+xml,application/x-oslc-rm-service-description-1.0+xml:To get the details of the service XML for OSLC RM (application/x-oslc-rm-service-description-1.0+xml is for OSLC RMv1.0).
application/x-oslc-am-service-description+xml: To get the details of the service XML for OSLC AM.
application/x-oslc-rm-requirement-1.0+xml: To get the more details for the OSLC link created for RM 1.0.
The links that are created are stored in a single property called OSLC Link in the System Architect encyclopedia repository for the definition or diagram.