Exemple de cas d'utilisation : ajout d'une exigence

Dans le prolongement des étapes précédentes détaillées dans cette section, cette rubrique présente un cas d'utilisation consistant à ajouter une exigence à Silk Central.

Avant de continuer, les conditions préalables suivantes doivent être remplies :

  • Vous avez effectué les étapes détaillées pour le service Web requirements.
  • Une classe POJO ou JUnit de travail possédant des méthodes de liaison et de connexion a été créée.
  • Vous avez pris connaissance des autres rubriques d'aide de l'API Silk Central.
  1. Générez un jeton de service Web dans la page Paramètres utilisateur.
    1. Cliquez sur le nom d'utilisateur dans le menu Silk Central. La page Paramètres utilisateur s'ouvre.
    2. Dans la section Jeton de service Web de la page, cliquez sur Générer un jeton.
  2. Créez un objet d'exigence comprenant les données souhaitées.
  3. Appelez la méthode updateRequirement à l'aide du jeton de service Web, de l'ID de projet et de l'objet d'exigence généré.
  4. Enregistrez l'ID d'exigence renvoyé par la méthode updateRequirement.
  5. Créez un tableau PropertyValue des propriétés d'exigence.
  6. Appelez la méthode updateProperties à l'aide du tableau créé précédemment.
L'outil wsimport créera les objets de service Web mentionnés ci-dessus :
  • Requirement
  • PropertyValue

Vous pouvez à présent utiliser les méthodes OOP des objets ci-dessus afin d'utiliser le service Web. Aucune construction d'enveloppe SOAP n'est requise. Voici ci-après des extraits du code requis pour effectuer ce cas d'utilisation.

/** project ID of Silk Central project */
private static final int PROJECT_ID = 0; 
 
/** propertyID for requirement risk */
public static final String PROPERTY_RISK = "Risk";
 
/** propertyID for requirement reviewed */
public static final String PROPERTY_REVIEWED = "Reviewed";
 
/** propertyID for requirement priority */
public static final String PROPERTY_PRIORITY = "Priority";
 
/** propertyID for requirement obsolete property */
public static final String PROPERTY_OBSOLETE = "Obsolete";
 
 
// Get the Requirements service
RequirementsService service = getRequirementsService();
 
// The web-service token that you have generated in the UI. Required to authenticate when using
// a web service.
String webServiceToken = "e39a0b5b-45db-42db-84b2-b85028d954d5";
 
// Construct Top Level Requirement
Requirement topLevelRequirement = new Requirement();
topLevelRequirement.setName("tmReqMgt TopLevelReq");
topLevelRequirement.setDescription("tmReqMgt TopLevel Desc");
 
PropertyValue propRisk = new PropertyValue();
propRisk.setPropertyId(PROPERTY_RISK);
propRisk.setValue("2");
PropertyValue propPriority = new PropertyValue();
propPriority.setPropertyId(PROPERTY_PRIORITY);
propPriority.setValue("3");
PropertyValue[] properties = new PropertyValue[] {propRisk, propPriority};
 
/*
* First add requirement skeleton, get its ID
* service is a binding stub, see above getRequirementsService()
*/
int requirementID = service.updateRequirement(webServiceToken, PROJECT_ID, topLevelRequirement, -1);
 
// Now loop through and set properties
for (PropertyValue propValue : properties) {
propValue.setRequirementId(requirementID);
service.updateProperty(webServiceToken, requirementID, propValue);
}
 
// Add Child Requirement
Requirement childRequirement = new Requirement();
childRequirement.setName("tmReqMgt ChildReq");
childRequirement.setDescription("tmReqMgt ChildLevel Desc");
childRequirement.setParentId(requirementID);
propRisk = new PropertyValue();
propRisk.setPropertyId(PROPERTY_RISK);
propRisk.setValue("1");
propPriority = new PropertyValue();
propPriority.setPropertyId(PROPERTY_PRIORITY);
propPriority.setValue("1");
properties = new PropertyValue[] {propRisk, propPriority};
 
int childReqID = service.updateRequirement(webServiceToken, PROJECT_ID, childRequirement, -1);
 
// Now loop through and set properties
for (PropertyValue propValue : properties) {
propValue.setRequirementId(requirementID);
service.updateProperty(webServiceToken, childReqID, propValue);
}
 
// Print Results
System.out.println("Login Successful with web-service token: " + webServiceToken);
System.out.println("Top Level Requirement ID: " + requirementID);
System.out.println("Child Requirement ID: " + childReqID);
Remarque : Cet exemple de code est également disponible dans la classe Client de démo du service Web com.microfocus.silkcentral.democlient.samples.AddingRequirement.