作为本节前面详述步骤的后续步骤,本主题将完成将需求添加到 Silk Central 的使用案例。
在继续操作之前,必须满足以下前提条件:
您现在可以通过上述对象的 OOP 方法来使用 Web 服务。无需使用 SOAP 信封结构。以下是完成此使用案例所需代码的摘要。
/** 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);