Class DomainFilterInterceptor
java.lang.Object
org.apache.catalina.tribes.group.ChannelInterceptorBase
org.apache.catalina.tribes.group.interceptors.DomainFilterInterceptor
- All Implemented Interfaces:
ChannelInterceptor, DomainFilterInterceptorMBean, Heartbeat, MembershipListener
public class DomainFilterInterceptor
extends ChannelInterceptorBase
implements DomainFilterInterceptorMBean
Filters membership based on domain.
-
Nested Class Summary
Nested classes/interfaces inherited from interface ChannelInterceptor
ChannelInterceptor.InterceptorEvent -
Field Summary
FieldsModifier and TypeFieldDescriptionprotected byte[]The domain filter byte array.protected intThe interval for logging rejected messages.protected MembershipThe membership store for tracking members in the filtered domain.protected static final StringManagerString manager for this class.Fields inherited from class ChannelInterceptorBase
optionFlag -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionbyte[]Get the domain filter.getLocalMember(boolean incAlive) Intercepts theChannel.getLocalMember(boolean)methodintGet the log interval.Intercepts theChannel.getMember(Member)methodMember[]Intercepts theChannel.getMembers()methodbooleanIntercepts theChannel.hasMembers()methodvoidmemberAdded(Member member) A member was added to the groupvoidmemberDisappeared(Member member) A member was removed from the group
If the member left voluntarily, the Member.getCommand will contain the Member.SHUTDOWN_PAYLOAD datavoidThemessageReceivedis invoked when a message is received.voidsetDomain(byte[] domain) Set the domain filter as a byte array.voidSet the domain filter as a String.voidsetLogInterval(int logInterval) Set the log interval.protected voidInitialize the membership store if not already set.Methods inherited from class ChannelInterceptorBase
fireInterceptorEvent, getChannel, getNext, getOptionFlag, getPrevious, heartbeat, okToProcess, sendMessage, setChannel, setNext, setOptionFlag, setPrevious, start, stopMethods inherited from class Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface DomainFilterInterceptorMBean
getOptionFlag
-
Field Details
-
sm
String manager for this class. -
membership
The membership store for tracking members in the filtered domain. -
domain
protected byte[] domainThe domain filter byte array. -
logInterval
protected int logIntervalThe interval for logging rejected messages.
-
-
Constructor Details
-
DomainFilterInterceptor
public DomainFilterInterceptor()Construct a new DomainFilterInterceptor.
-
-
Method Details
-
messageReceived
Description copied from interface:ChannelInterceptorThemessageReceivedis invoked when a message is received.ChannelMessage.getAddress()is the sender, or the reply-to address if it has been overwritten.- Specified by:
messageReceivedin interfaceChannelInterceptor- Overrides:
messageReceivedin classChannelInterceptorBase- Parameters:
msg- ChannelMessage
-
memberAdded
Description copied from interface:MembershipListenerA member was added to the group- Specified by:
memberAddedin interfaceMembershipListener- Overrides:
memberAddedin classChannelInterceptorBase- Parameters:
member- Member - the member that was added
-
memberDisappeared
Description copied from interface:MembershipListenerA member was removed from the group
If the member left voluntarily, the Member.getCommand will contain the Member.SHUTDOWN_PAYLOAD data- Specified by:
memberDisappearedin interfaceMembershipListener- Overrides:
memberDisappearedin classChannelInterceptorBase- Parameters:
member- Member- See Also:
-
hasMembers
public boolean hasMembers()Description copied from interface:ChannelInterceptorIntercepts theChannel.hasMembers()method- Specified by:
hasMembersin interfaceChannelInterceptor- Overrides:
hasMembersin classChannelInterceptorBase- Returns:
- boolean - if the channel has members in its membership group
- See Also:
-
getMembers
Description copied from interface:ChannelInterceptorIntercepts theChannel.getMembers()method- Specified by:
getMembersin interfaceChannelInterceptor- Overrides:
getMembersin classChannelInterceptorBase- Returns:
- the members
- See Also:
-
getMember
Description copied from interface:ChannelInterceptorIntercepts theChannel.getMember(Member)method- Specified by:
getMemberin interfaceChannelInterceptor- Overrides:
getMemberin classChannelInterceptorBase- Parameters:
mbr- Member- Returns:
- Member - the actual member information, including stay alive
- See Also:
-
getLocalMember
Description copied from interface:ChannelInterceptorIntercepts theChannel.getLocalMember(boolean)method- Specified by:
getLocalMemberin interfaceChannelInterceptor- Overrides:
getLocalMemberin classChannelInterceptorBase- Parameters:
incAlive- boolean- Returns:
- the member that represents this node
- See Also:
-
setupMembership
protected void setupMembership()Initialize the membership store if not already set. -
getDomain
public byte[] getDomain()Description copied from interface:DomainFilterInterceptorMBeanGet the domain filter.- Specified by:
getDomainin interfaceDomainFilterInterceptorMBean- Returns:
- the domain byte array
-
setDomain
public void setDomain(byte[] domain) Set the domain filter as a byte array.- Parameters:
domain- The domain byte array
-
setDomain
Set the domain filter as a String.- Parameters:
domain- The domain string, either in "{...}" format or plain text
-
getLogInterval
public int getLogInterval()Description copied from interface:DomainFilterInterceptorMBeanGet the log interval.- Specified by:
getLogIntervalin interfaceDomainFilterInterceptorMBean- Returns:
- the log interval
-
setLogInterval
public void setLogInterval(int logInterval) Description copied from interface:DomainFilterInterceptorMBeanSet the log interval.- Specified by:
setLogIntervalin interfaceDomainFilterInterceptorMBean- Parameters:
logInterval- The new log interval
-