集合

多个 ClearQuest® CM API 方法返回资源集合。

资源集合可以作为 ResourceListResourceList.ResponseIterator 返回。

多个属性的值是对资源的引用列表。这些属性的值由 ResourceList 对象表示,它是一个具有大量其他方法的代理对象集合,用于对列表的成员执行特定操作。如果属性的值是 ResourceList,那么可以使用 NestedPropertyNames 对象从列表中的每个资源请求属性。将从每个资源请求相同的属性集。

ResourceList 提供了大量对列表成员执行特定操作的方法。ResourceList 可包含任何 Resource 子类的代理。集合中的所有代理可同属一个代理类或属于不同类,这要根据列表的生成器确定。新的 ResourceListProvider.resourceList() 方法创建。ResourceList 可以使用应将包含的资源代理类型进行参数化。

ResponseIterator 表示一系列来自服务器的代理信息,每次客户机经过 ResponseIterator 的项时显示一个代理程序的信息。在明确释放迭代器(使用 ResourceList.ResponseIterator().release())或器生命周期结束之前,ResponseIterator 将一直保持与服务器的通信信道为打开状态。为了达到最佳性能,客户机应该尽快检查迭代器中的项,并且在不再需要迭代器时尽快将其释放。

例如,要使用 CqProvider.doGetDbSetList() 方法查找可用的数据库集:
        try {
            StpProvider provider = getProvider();
            
            // Request a list of the CQ databases known to the provider
            ResourceList<CqDbSet> databases = 
                (provider).cqProvider().doGetDbSetList(DB_SET_PROPS);
            
            // List the returned information
            for (CqDbSet dbSet : databases) {
                System.out.println (dbSet.getDisplayName() 
                                    + ": " + dbSet.getLocalReplica());
            }
        } catch(Throwable ex) {
            ex.printStackTrace();
        } finally {
            System.exit(0);
        }

有关详细信息,请参阅 ClearQuest CM API 的 Javadoc 信息。


反馈