L'interface createRequirements permet de créer des exigences. La réponse HTTP de l'appel comprend la structure XML des exigences modifiées. Les identifiants des nouveaux nœuds sont disponibles dans la structure de l'exigence XML mise à jour.
Le tableau ci-dessous présente les paramètres de l'interface createRequirements.
URL de l'interface | Paramètre | Descriptions |
---|---|---|
http://<front-end URL>/servicesExchange?hid=createRequirements |
sid | Jeton de service Web ou identificateur de session pour l'authentification des utilisateurs. Vous pouvez générer le jeton de service Web dans la Page Paramètres de l'interface utilisateur de Silk Central. Pour accéder à cette page, passez le curseur de la souris sur le nom d'utilisateur dans le menu Silk Central et sélectionnez Paramètres utilisateur. Vous pouvez appeler la méthode logonUser de l'un des services Web disponibles pour récupérer l'identificateur de session. |
parentNodeID | ID du conteneur auquel la nouvelle exigence est ajoutée dans l'arborescence des exigences |
Exemple : http://<front-end URL>/servicesExchange?hid=createRequirements&parentNodeID=<id>&sid=<webServiceToken>
Le fichier de définition du schéma XML qui sert à valider les exigences peut être téléchargé au moyen de l'URL du serveur de présentation, http://<URL serveur de présentation>/silkroot/xsl/requirements.xsd, ou copié à partir du dossier d'installation du serveur de présentation, <dossier d'installation de Silk Central>/wwwroot/silkroot/xsl/requirements.xsd.
Le code suivant utilise Apache HttpClient pour créer des exigences.
import org.apache.commons.httpclient.*; // Apache HttpClient String webServiceToken = "e39a0b5b-45db-42db-84b2-b85028d954d5"; URL service = new URL("http", mWebServiceHelper.getHost(), mWebServiceHelper.getPort(), String.format("/servicesExchange?hid=%s&sid=%s&parentNodeID=%d", "createRequirements", webServiceToken, PARENT_NODE_ID)); HttpClient client = new HttpClient(); PostMethod filePost = new PostMethod(service.toExternalForm()); String xmlFile = loadRequirementsUtf8("requirements.xml"); StringPart xmlFileItem = new StringPart("requirements", xmlFile, "UTF-8"); xmlFileItem.setContentType("text/xml"); Part[] parts = {xmlFileItem}; filePost.setRequestEntity(new MultipartRequestEntity(parts, filePost.getParams())); client.getHttpConnectionManager().getParams().setConnectionTimeout(60000); int status = client.executeMethod(filePost); System.out.println(filePost.getStatusLine());
Il n'est possible de télécharger qu'une seule pièce jointe par demande. Pour télécharger Apache HttpComponents, visitez le site http://hc.apache.org/downloads.cgi. Reportez-vous à la documentation du composant pour connaître les bibliothèques requises.
Le code suivant affiche un exemple d'exigence pouvant être chargé dans Silk Central à l'aide des services createRequirements, updateRequirements et updateRequirementsByExtId.
<?xml version="1.0" encoding="UTF-8"?> <Requirement id="0" name="name" xmlns="http://www.borland.com/RequirementsSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://<front-end URL>/silkroot/xsl/requirements.xsd"> <ExternalId>myExtId1</ExternalId> <Description>Description</Description> <Priority value="Low" inherited="false"/> <Risk value="Critical" inherited="false"/> <Reviewed value="true" inherited="false"/> <Property inherited="false" name="Document" type="string">MyDocument1.doc</Property> <Requirement id="1" name="name" /> <Requirement id="2" name="name1"> <Requirement id="3" name="name" /> <Requirement id="4" name="name1"> <Requirement id="5" name="name" /> <Requirement id="6" name="name1"> <ExternalId>myExtId2</ExternalId> <Description>Another Description</Description> <Priority value="Medium" inherited="false"/> <Risk value="Critical" inherited="false"/> <Reviewed value="true" inherited="false"/> <Property inherited="false" name="Document" type="string">MyDocument2.doc</Property> </Requirement> </Requirement> </Requirement> </Requirement>