JMS规范:QueueRequestor和TopicRequestor不是接口

时间:2013-10-02 13:22:08

标签: junit jms easymock

有人能解释为什么在JMS规范(1.1和2.0)中javax.jms.QueueRequestorjavax.jms.TopicRequestor是一个类而不是接口吗?

JMS规范中的几乎所有类型(连接,会话,目的地,消息等)都是对我有意义的接口,因为规范只定义了一个通用接口,让JMS提供者实现实例化。 只有Exceptions才是简化实现的类(对我来说也很有意义)。

javax.jms.QueueRequestorjavax.jms.TopicRequestor不符合此约定。这使得在单元测试中模拟它变得更加复杂。

有谁知道原因?

1 个答案:

答案 0 :(得分:0)

好的,我想我现在已经知道了答案: 这两个类只是一个简单的默认实现,它使用其他必需的接口(TopicRequestor,例如使用TopicSession,Topic和TemporaryTopic)来覆盖基本的请求/回复场景,而不知道它们的具体实现。

因此,它们只是简化请求/回复场景(对于JMS客户端)的实现的缩写。因此,JMS提供程序不必实现这些模式的自己版本。

很抱歉过早发布此问题。