多种 Rational® CM API 方法返回了资源的集合。资源集合可以作为 ResourceList 或 ResourceList.ResponseIterator 返回。
多个属性的值是对资源的引用列表。这些属性的值由 ResourceList 对象表示,它是一个具有大量其他方法的代理对象集合,用于对列表的成员执行特定操作。如果属性的值是 ResourceList,那么可以使用 NestedPropertyNames 对象从列表中的每个资源请求属性。将从每个资源请求相同的属性集。
ResourceList 提供了大量对列表成员执行特定操作的方法。ResourceList 可包含任何 Resource 子类的代理。集合中的所有代理可同属一个代理类或属于不同类,这要根据列表的生成器确定。新的 ResourceList 由 Provider.resourceList() 方法创建。ResourceList 可以使用应将包含的资源代理类型进行参数化。
ResponseIterator 表示一系列来自服务器的代理信息,每次客户机经过 ResponseIterator 的项时显示一个代理程序的信息。在明确释放迭代器(使用 ResourceList.ResponseIterator().release())或器生命周期结束之前,ResponseIterator 将一直保持与服务器的通信信道为打开状态。为了达到最佳性能,客户机应该尽快检查迭代器中的项,并且在不再需要迭代器时尽快将其释放。
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); }
有关详细信息,请参阅 Rational CM API 的 Javadoc 信息。