...
The OSLC resource type, and OSLC domain must be present in the metamodel (either the default metamodel or a custom metamodel).
Link storage
Depending on the metamodel and the domain(s) that you have chosen you may need to be able to store created links in your application. Generally links in OSLC are only stored in only one of the two applications - in the logically dependent resource. e.g. when a test case validates a requirement, the test case is dependent on the requirement and thus stores the link to the requirement.
If your authoring tool will be storing links then your IToolAdapter interface must implement the following method:
Code Block | ||
---|---|---|
| ||
public interface IToolAdapter {
// ...
void updateArtifactLinks(@NonNull String componentId,
@NonNull String localConfigurationId,
@NonNull String artifactConceptId,
@NonNull Set<LinkTao> links);
//...
} |
2) Define conceptual mapping between OSLC type and the types in your authoring tool
genOSLC provides a class model for important OSLC types see: Tool Adapter Objects. The classes in this and IToolAdapter Implementation. This model must mapped to classes concepts in your authoring tool.
Service Provider
...
An individual component may only belong to on only one Service Provider.
In some authoring tools there is always one-to-one relationship between a Service Provider and a Component. When this is the case the following should be set in the Application.YML. This will allow genOSLC to provide a cleaner user interface.
Code Block | ||
---|---|---|
| ||
smartfacts: genoslc: service-provider-component-singleton: true |
Artifact
Tn An Artifact is represents a genOSLC class representing a user created ALM resource e.g. requirement, test case, work item etc.
An artifact must have a identifier that remains stable independent of changes to the artifact. See conceptId and revisionId for more information.
ResourceShape
A ResourceShape represents a the scheme or type of a resource. Essentially it is a list of attributes that are expected on the artifact which it represents.
An ResourceShape must have a identifier that remains stable independent of changes to the artifact. See conceptId and revisionId for more information.
3) Deploy the example application and plugin in your infrastructure
An example genOSLC application is provided: genOSLC Example Application. Deploy this into your company’s infrastructure.
Implement/configure the example application so that it complies with your company’s security policy. It contains common example e.g. OIDC.
Configure the example application OAuth1.0a so that it communicates with Smartfacts or IBM ELM. See OAuth 1.0A for more details.
Confirm that you can create and display links, contribute local configurations to local configurations, display hover preview, etc.
4) Transform the example application to retrieve data from your authoring tool.
This involves transforming the example implementation of the IToolAdapter so that it retrieves data from your server.
5) Create Resource Preview and other delegated UI elements
The only required UI element for a genOSLC integration is a Resource Preview. These are expected to be displayed in an iframe in an external application. The selection and creation dialogs are optional.
Resource Preview
This is a small web application that shows a preview of one of your resources. It is most often displayed by an external application a user hovers over a link to one of your resources .
Selection Dialog
This allows an external application to select a resource in your application, with the purpose of creating a link to your application. This is not necessary for all integrations e.g. links are only created when in the user is in your application.
Creation Dialog
This allows an external application to create a new resource in your application (e.g. a change request). This is only rarely required.