【问题标题】:How to list Streams owned by a Project Area using Jazz RTC Java API如何使用 Jazz RTC Java API 列出项目区域拥有的流
【发布时间】:2021-05-22 19:05:40
【问题描述】:

我正在为 IBM Rational Team Concert(IBM aka Jazz RTC)工作。

如何列出特定项目区域拥有的所有流? 需要哪些 API 调用?

我在 IProjectArea 实例中找不到任何 getter,也找不到具有此类方法的服务或客户端实例。而且我不知道如何为此目的使用搜索条件。

【问题讨论】:

    标签: java groovy rational-team-concert


    【解决方案1】:

    可以使用IWorkspaceSearchCriteria 查询项目区域拥有的流。因为流实际上是“流”类型的工作区。 API 不太清楚如何指定所属项目区域。

    1. 从包含findWorkspaces 方法的ITeamRepository 中获取IWorkspaceManager
    2. 你不需要IProjectAreaHandle。只有项目区域名称。
    3. 创建一个IWorkspaceSearchCriteria 并将kind 设置为IWorkspaceSearchCriteria.STREAMS 并将exactOwnerName 设置为包含项目区域名称的字符串。
    4. 致电IWorkspaceManager.findWorkspaces(...) 以获取IWorkspaceHandles 的列表。第一个参数是搜索条件。 se第二个参数是最大结果数(我设置为IWorkspaceManager.MAX_QUERY_SIZE,也就是512。第三个参数是进度监视器,可能是null
    5. 如果您需要获取流名称、描述或其他属性,则需要调用IItemManager.fetchCompleteItems(...) 获取完整的IWorkspace 实例。

    这是 Groovy 中的一个示例:

    Lit<IComponentHandle> listComponents(String projectAreaName) {
      final manager = repositoty.getClientLibrary(IWorkspaceManager) as IWorkspaceManager;
      final criteria = IWorkspaceSearchCriteria.FACTORY.newInstance();
      criteria.setKind(IWorkspaceSearchCriteria.STREAMS);
      criteria.setExactOwnerName(projectAreaName)
      final itemManager = repositoty.itemManager()
      return itemManager.fetchCompleteItems(handles, IItemManager.DEFAULT, null) as List<IWorkspace>
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-08-18
      • 2015-11-20
      相关资源
      最近更新 更多