インターフェース MessageGroupStore

すべてのスーパーインターフェース:
BasicMessageGroupStore
すべての既知の実装クラス:
AbstractConfigurableMongoDbMessageStoreAbstractKeyValueMessageStoreAbstractMessageGroupStoreConfigurableMongoDbMessageStoreHazelcastMessageStoreJdbcMessageStoreMongoDbChannelMessageStoreMongoDbMessageStoreRedisMessageStoreSimpleMessageStore

public interface MessageGroupStore extends BasicMessageGroupStore
グループ ID でリンクされたメッセージのグループに対する追加のストレージ操作を定義します。
導入:
2.0
作成者:
Dave Syer, Oleg Zhurakousky, Gary Russell, Artem Bilan
  • メソッドの詳細

    • getMessageCountForAllMessageGroups

      @ManagedAttribute int getMessageCountForAllMessageGroups()
      すべてのグループにわたるストア内のメッセージの数を示すオプションの属性。実装は、例外をスローすることによって応答を拒否する場合があります。
      戻り値:
      メッセージの数
      例外:
      UnsupportedOperationExceptionSE - 実装されていない場合
    • getMessageGroupCount

      @ManagedAttribute int getMessageGroupCount()
      メッセージグループの数を示すオプションの属性。実装は、例外をスローすることによって応答を拒否する場合があります。
      戻り値:
      メッセージグループの数
      例外:
      UnsupportedOperationExceptionSE - 実装されていない場合
    • removeMessagesFromGroup

      void removeMessagesFromGroup(ObjectSE key, CollectionSE<Message<?>> messages)
      グループからのメッセージの削除を永続化します。
      パラメーター:
      key - メッセージを含むグループの groupId。
      messages - 削除するメッセージ。
      導入:
      4.2
    • removeMessagesFromGroup

      void removeMessagesFromGroup(ObjectSE key, Message<?>... messages)
      グループからのメッセージの削除を永続化します。
      パラメーター:
      key - メッセージを含むグループの groupId。
      messages - 削除するメッセージ。
      導入:
      4.2
    • getMessageFromGroup

      @Nullable default Message<?> getMessageFromGroup(ObjectSE groupId, UUIDSE messageId)
      ID を使用してグループから Message を取得します。メッセージがリクエストされたグループに属していない場合は、null を返します。
      パラメーター:
      groupId - メッセージを含むグループの groupId。
      messageId - メッセージ ID。
      戻り値:
      リクエストされたグループに属している場合は、ID によるメッセージ。
      導入:
      6.1.5
    • removeMessageFromGroupById

      default boolean removeMessageFromGroupById(ObjectSE groupId, UUIDSE messageId)
      グループからメッセージを削除します。
      パラメーター:
      groupId - メッセージを含むグループの groupId。
      messageId - 削除するメッセージ ID。
      戻り値:
      メッセージが削除された場合は true。
      導入:
      6.1.5
    • registerMessageGroupExpiryCallback

      void registerMessageGroupExpiryCallback(MessageGroupStore.MessageGroupCallback callback)
      メッセージグループが expireMessageGroups(long) を介して期限切れになったときのコールバックを登録します。
      パラメーター:
      callback - メッセージグループがクリーンアップされたときに実行するコールバック。
    • expireMessageGroups

      @ManagedOperation int expireMessageGroups(long timeout)
      期限切れのグループ(タイムスタンプが現在の時刻から指定されたしきい値を差し引いたものより古い)をすべて抽出し、登録されている各コールバックを順番に呼び出します。例: タイムアウト 100 で呼び出して、100 ミリ秒以上前に作成され、まだ完了していないすべてのグループを期限切れにします。すべてのメッセージグループを期限切れにするには、タイムアウト 0(または安全のために負の値)を使用します。
      パラメーター:
      timeout - 使用するタイムアウトしきい値
      戻り値:
      期限切れのメッセージグループの数
      関連事項:
    • setLastReleasedSequenceNumberForGroup

      void setLastReleasedSequenceNumberForGroup(ObjectSE groupId, int sequenceNumber)
      最後にリリースされたメッセージのシーケンス番号を設定できます。ユースケースの並べ替えに使用
      パラメーター:
      groupId - グループ識別子。
      sequenceNumber - シーケンス番号。
    • setGroupCondition

      void setGroupCondition(ObjectSE groupId, StringSE condition)
      グループに条件文を追加します。後でグループの意思決定に使用できます。相関ハンドラーのリリース戦略では、グループ内のすべてのメッセージを繰り返す代わりに、この条件を調べることができます。
      パラメーター:
      groupId - グループ識別子。
      condition - グループに保存する条件。
      導入:
      5.5
    • iterator

      戻り値:
      現在累積されている MessageGroup の反復子。
    • completeGroup

      void completeGroup(ObjectSE groupId)
      これで MessageGroup が完成します。MessageGroup の補完は一般に、このグループに対してそれ以上の変異操作の実行を許可すべきではないことを意味します。たとえば、グループから新しいメッセージを追加 / 削除する試みは許可されるべきではありません。
      パラメーター:
      groupId - グループ識別子。
    • getGroupMetadata

      MessageGroupMetadata getGroupMetadata(ObjectSE groupId)
      メッセージをフェッチせずにグループメタデータを取得します。他のすべてのグループプロパティを提供する必要があります。最初のメッセージの ID を含めることができます。
      パラメーター:
      groupId - グループ ID。
      戻り値:
      メタデータ。
      導入:
      4.0
    • getOneMessageFromGroup

      Message<?> getOneMessageFromGroup(ObjectSE groupId)
      MessageGroup から 1 つの Message を返します。
      パラメーター:
      groupId - グループ識別子。
      戻り値:
      Message
      導入:
      4.0
    • addMessagesToGroup

      void addMessagesToGroup(ObjectSE groupId, Message<?>... messages)
      グループ ID に関連付けてメッセージを保存します。これは、メッセージをグループ化するために使用できます。
      パラメーター:
      groupId - メッセージを保存するグループ ID。
      messages - 追加するメッセージ。
      導入:
      4.3
    • getMessagesForGroup

      CollectionSE<Message<?>> getMessagesForGroup(ObjectSE groupId)
      指定されたグループ ID のメッセージを取得します。
      パラメーター:
      groupId - メッセージを取得するグループ ID。
      戻り値:
      グループのメッセージ。
      導入:
      4.3
    • streamMessagesForGroup

      default StreamSE<Message<?>> streamMessagesForGroup(ObjectSE groupId)
      指定されたグループに保存されているメッセージのストリームを返します。永続的な実装は、完全に処理されたら閉じる必要があるストリームを返します(たとえば、try-with-resources 句を使用)。デフォルトでは、getMessagesForGroup(Object) の結果をストリーミングします。
      パラメーター:
      groupId - メッセージを取得するためのグループ ID。
      戻り値:
      このグループのメッセージの StreamSE
      導入:
      5.5