Class ClientIdFilterDispatchPolicy

java.lang.Object
org.apache.activemq.broker.region.policy.SimpleDispatchPolicy
org.apache.activemq.broker.region.policy.ClientIdFilterDispatchPolicy
All Implemented Interfaces:
DispatchPolicy

public class ClientIdFilterDispatchPolicy extends SimpleDispatchPolicy
ClientIdFilterDispatchPolicy dispatches messages in a topic to a given client. Then the message with a "PTP_CLIENTID" property, can be received by a mqtt client with the same clientId.
Author:
kimmking (kimmking@163.com)
  • Field Details

  • Constructor Details

    • ClientIdFilterDispatchPolicy

      public ClientIdFilterDispatchPolicy()
  • Method Details

    • dispatch

      public boolean dispatch(org.apache.activemq.broker.region.MessageReference node, org.apache.activemq.filter.MessageEvaluationContext msgContext, List<Subscription> consumers) throws Exception
      Description copied from interface: DispatchPolicy
      Decides how to dispatch a selected message to a collection of consumers. A safe approach is to dispatch to every subscription that matches. The list will be safe to iterate over when this method is called
      Specified by:
      dispatch in interface DispatchPolicy
      Overrides:
      dispatch in class SimpleDispatchPolicy
      Returns:
      true if at least one consumer was dispatched or false if there are no active subscriptions that could be dispatched
      Throws:
      Exception
    • getPtpClientId

      public String getPtpClientId()
    • setPtpClientId

      public void setPtpClientId(String ptpClientId)
    • getPtpSuffix

      public String getPtpSuffix()
    • setPtpSuffix

      public void setPtpSuffix(String ptpSuffix)