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 ([email protected])
-
-
Field Summary
Fields Modifier and Type Field Description static String
PTP_CLIENTID
static String
PTP_SUFFIX
-
Constructor Summary
Constructors Constructor Description ClientIdFilterDispatchPolicy()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description boolean
dispatch(org.apache.activemq.broker.region.MessageReference node, org.apache.activemq.filter.MessageEvaluationContext msgContext, List<Subscription> consumers)
Decides how to dispatch a selected message to a collection of consumers.String
getPtpClientId()
String
getPtpSuffix()
void
setPtpClientId(String ptpClientId)
void
setPtpSuffix(String ptpSuffix)
-
-
-
Field Detail
-
PTP_CLIENTID
public static final String PTP_CLIENTID
- See Also:
- Constant Field Values
-
PTP_SUFFIX
public static final String PTP_SUFFIX
- See Also:
- Constant Field Values
-
-
Method Detail
-
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 interfaceDispatchPolicy
- Overrides:
dispatch
in classSimpleDispatchPolicy
- 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)
-
-