java - Jazz RTC Java API:如何按名称查找项目区域
问题描述
我正在为 IBM Rational Team Concert(IBM aka Jazz RTC)工作。
java/groovy 脚本接收项目区域名称并需要检索有关项目区域的信息,由IProjectArea
实例表示。
哪些是必需的 API 调用?显然,API 中没有这样的查询。
解决方案
API 不是为搜索项目区域而设计的。幸运的是,有一个IProcessClientService.findProcessArea(URI areaURI, Collection properties, IProgressMonitor monitor)
方法:
- 调用
ITeamRepository.getClientLibrary(IProcessClientService)
以获取IProcessClientService
实例。 - 打电话
IProcessClientService.findProcessArea(URI areaURI, Collection properties, IProgressMonitor monitor)
。areaURI
是项目区域名称,“编码为 URI”(无法解释原因,它在内部转换回字符串)。我必须对名称进行 URL 编码,但要确保将空格编码为编码标准,%20
而不是+
编码标准。- 我没有找到有关该
properties
集合的文档。适用于空值。 - 进度监视器,可能为空。
- 该方法已经返回了一个
IProcessArea
实例,而不是IProcessAreaInstance
像我最初通过与类似的 API 方法相比所期望的那样。因此,不需要“获取”。
IProjectArea findProjectAreaByName(String name) {
def processClient = repositoty.getClientLibrary(IProcessClientService) as IProcessClientService
def uri = URI.create(URLEncoder.encode(name, "UTF-8").replace('+','%20'))
return processClient.findProcessArea(uri, null, null) as IProjectArea
}
推荐阅读
- c# - ASP.NET - PartialView 继续使用布局
- flutter - 当我尝试将图像加载到容器中时出现错误 - Flutter
- javascript - 可以让事件处理函数返回一个函数吗?
- mysql - 对 SQL 中的两个单独列使用 Group By 来计算新列
- php - 如果产品类别等于“X”,则 Woocommerce 工作
- javascript - 从本地文件而不是从 vuejs 项目中的 url 路径动态显示图像
- java - 仅当 HashKey RangeKey 对在表中时,DynamoDB 映射器才更新项目
- javascript - 如何准确删除 div onclick
- visual-studio - Visual Studio 扩展包扩展版本控制如何工作?
- reactjs - 使用 react-three-fiber 在 gatsby 站点加载 gltf