获取资源代理

Provider 类构建代理以响应客户机请求。然后客户机可以调用代理上的方法以处理所表示的资源。客户机可以通过请求 Provider 在某特定位置构建并返回资源的代理以从该位置获取资源的代理。例如,以下每个示例都将在位置变量所指定的位置创建资源的代理。
Resource my_resource = provider.resource(location);
 
CcActivity my_activity = ccProvider.ccActivity(location);

代理工厂方法提供了一种方法来获取实现其某个接口的代理。每个特定于域的提供程序都会定义为其域中的资源创建代理的方法。每个工厂方法的命名规范是方法名称具有与代理类相同的拼写,但是工厂方法的第一个字母是小写的,而代理类的第一个字母是大写的。例如,CqProvider.cqRecord() 返回 CqRecord 实例。

还有一个 Provider.buildProxy 方法,该方法是为指定位置的资源创建给定类型的新代理的备用方法,另外还有一个 StpProvider.buildProxy(Class, String) 方法,通过该方法可以方便地从表示代理位置的字符串直接获取代理,而无需通过 StpLocation。

代理未设计为与服务器上资源有关的信息的长期高速缓存。其目的是先反序列化执行服务器操作所需的数据,然后对其实例化,并提供容器以在其中将操作结果返回到客户机。在客户机/服务器应用程序中,将数据保留在客户机上将引入数据不与服务器同步的风险。鉴于该原因,Rational® CM API 始终为每个 do 方法操作返回新的代理。

请参阅位置语法以获取更多信息。


反馈