インターフェース MessageStore
- すべての既知の実装クラス:
AbstractKeyValueMessageStore
、ConfigurableMongoDbMessageStore
、HazelcastMessageStore
、JdbcMessageStore
、MongoDbMessageStore
、RedisMessageStore
、SimpleMessageStore
public interface MessageStore
メッセージを保存および取得するための戦略インターフェース。
- 導入:
- 2.0
- 作成者:
- Mark Fisher, Iwein Fuld, Dave Syer, Artem Bilan
メソッドのサマリー
修飾子と型メソッド説明<T> Message<T>
addMessage
(Message<T> message) 提供されたメッセージを MessageStore に入れます。Message<?>
getMessage
(UUIDSE id) long
ストア内のメッセージ数を示すオプションの属性。Message<?>
removeMessage
(UUIDSE id) 指定された ID のメッセージを MessageStore から削除し(存在する場合)、それを返します。
メソッドの詳細
getMessage
- パラメーター:
id
- メッセージ識別子。- 戻り値:
- 指定された ID のメッセージ。MessageStore にその ID のメッセージが存在しない場合は null。
getMessageMetadata
- パラメーター:
id
- メッセージ識別子。- 戻り値:
- 指定された ID の MessageMetadata、またはその ID のメッセージが MessageStore に存在しないか、メッセージにメタデータがない場合(以前のバージョンのレガシーメッセージ)は null。
- 導入:
- 5.0
addMessage
提供されたメッセージを MessageStore に入れます。ストアはメッセージを内部で変更する必要がある場合があり、その場合、戻り値は入力と異なる場合があります。戻り値の ID は、getMessage(UUID)
およびremoveMessage(UUID)
が正しく動作するようにインデックスとして使用されます。メッセージは不変であるため、同じメッセージを複数回入力しても何も起こりません。- 型パラメーター:
T
- ペイロード型。- パラメーター:
message
- メッセージ。- 戻り値:
- 保存されたメッセージ。
removeMessage
指定された ID を持つメッセージが MessageStore から削除されます (存在する場合)。その ID を持つメッセージがストアに存在しない場合は、null
が返されます。このメソッドがMessageGroupStore
に実装されている場合、このメッセージを保持するグループがない場合にのみ、メッセージはストアから削除されます。- パラメーター:
id
- メッセージ識別子。- 戻り値:
- メッセージ (ある場合)。
getMessageCount
ストア内のメッセージ数を示すオプションの属性。実装は例外をスローすることで応答を拒否する場合があります。- 戻り値:
- メッセージの数。
- 例外:
UnsupportedOperationExceptionSE
- 実装されていない場合