会话对象

有八个会话级别对象:

会话中任何给定对象将只有一个(基于唯一标识)副本。所有引用将指向单个副本。对于每个会话对象,可通过使用名称、数据库标识、URI 或搜索等方法来访存会话对象。还可通过调用从其他对象引用会话对象的 getter 方法来访存这些对象。例如,给定 ownerid 为 kjones 的 RAMAsset,对该对象调用 getOwner() 时,如果 kjones RAMUser 对象尚未在会话中,就会将它访存到会话 。

有两种方法可用来落实对会话对象所作的更改。RAMSession.putAssets(IProgressMonitor) API 会落实在本地对您的排队资产对象所作的全部更改。RAMSession.put(IRAMSessionObject, IProgressMonitor) 允许您落实对单个会话对象所作的更改。

RAMSession 有一些方法可用来创建任何会话对象的新实例。在调用 create 方法后,填充对象并落实对该对象所作的更改以在服务器上创建该对象。请参阅创建新资产, 创建新社区创建新的资产类型创建新的类别模式创建新资产属性注册用户

当从服务器中删除会话对象时,RAMSessionObject.setAction(RAMAction.DELETE) 方法会将该会话对象标记为待删除,RAMSession.put() 方法会将其删除。请参阅删除资产删除社区删除资产类型, 删除类别模式删除关系类型删除资产属性。不能从服务器中删除用户。

要从会话高速缓存中除去对象并废弃对它所做的所有更改,请使用 RAMSession.remove(IRAMSessionObject) API。

注: RAMSession 对象不是线程安全的,因此必须确保线程安全。 调用 RAMSession.release() 方法后,不应复用 RAMSession 对象。

反馈