Package org.apache.mina.filter.firewall
Class BlacklistFilter
- java.lang.Object
-
- org.apache.mina.core.filterchain.IoFilterAdapter
-
- org.apache.mina.filter.firewall.BlacklistFilter
-
- All Implemented Interfaces:
IoFilter
public class BlacklistFilter extends IoFilterAdapter
AIoFilterwhich blocks connections from blacklisted remote address.- Author:
- Apache MINA Project
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface org.apache.mina.core.filterchain.IoFilter
IoFilter.NextFilter
-
-
Constructor Summary
Constructors Constructor Description BlacklistFilter()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidblock(InetAddress address)Blocks the specified endpoint.voidblock(Subnet subnet)Blocks the specified subnet.voidmessageReceived(IoFilter.NextFilter nextFilter, IoSession session, Object message)FiltersIoHandler.messageReceived(IoSession,Object)event.voidmessageSent(IoFilter.NextFilter nextFilter, IoSession session, WriteRequest writeRequest)FiltersIoHandler.messageSent(IoSession,Object)event.voidsessionClosed(IoFilter.NextFilter nextFilter, IoSession session)FiltersIoHandler.sessionClosed(IoSession)event.voidsessionCreated(IoFilter.NextFilter nextFilter, IoSession session)FiltersIoHandler.sessionCreated(IoSession)event.voidsessionIdle(IoFilter.NextFilter nextFilter, IoSession session, IdleStatus status)FiltersIoHandler.sessionIdle(IoSession,IdleStatus)event.voidsessionOpened(IoFilter.NextFilter nextFilter, IoSession session)FiltersIoHandler.sessionOpened(IoSession)event.voidsetBlacklist(Iterable<InetAddress> addresses)Sets the addresses to be blacklisted.voidsetBlacklist(InetAddress[] addresses)Sets the addresses to be blacklisted.voidsetSubnetBlacklist(Iterable<Subnet> subnets)Sets the subnets to be blacklisted.voidsetSubnetBlacklist(Subnet[] subnets)Sets the subnets to be blacklisted.voidunblock(InetAddress address)Unblocks the specified endpoint.voidunblock(Subnet subnet)Unblocks the specified subnet.-
Methods inherited from class org.apache.mina.core.filterchain.IoFilterAdapter
destroy, exceptionCaught, filterClose, filterWrite, init, inputClosed, onPostAdd, onPostRemove, onPreAdd, onPreRemove, toString
-
-
-
-
Method Detail
-
setBlacklist
public void setBlacklist(InetAddress[] addresses)
Sets the addresses to be blacklisted. NOTE: this call will remove any previously blacklisted addresses.- Parameters:
addresses- an array of addresses to be blacklisted.
-
setSubnetBlacklist
public void setSubnetBlacklist(Subnet[] subnets)
Sets the subnets to be blacklisted. NOTE: this call will remove any previously blacklisted subnets.- Parameters:
subnets- an array of subnets to be blacklisted.
-
setBlacklist
public void setBlacklist(Iterable<InetAddress> addresses)
Sets the addresses to be blacklisted. NOTE: this call will remove any previously blacklisted addresses.- Parameters:
addresses- a collection of InetAddress objects representing the addresses to be blacklisted.- Throws:
IllegalArgumentException- if the specified collections contains non-InetAddressobjects.
-
setSubnetBlacklist
public void setSubnetBlacklist(Iterable<Subnet> subnets)
Sets the subnets to be blacklisted. NOTE: this call will remove any previously blacklisted subnets.- Parameters:
subnets- an array of subnets to be blacklisted.
-
block
public void block(InetAddress address)
Blocks the specified endpoint.- Parameters:
address- The address to block
-
block
public void block(Subnet subnet)
Blocks the specified subnet.- Parameters:
subnet- The subnet to block
-
unblock
public void unblock(InetAddress address)
Unblocks the specified endpoint.- Parameters:
address- The address to unblock
-
unblock
public void unblock(Subnet subnet)
Unblocks the specified subnet.- Parameters:
subnet- The subnet to unblock
-
sessionCreated
public void sessionCreated(IoFilter.NextFilter nextFilter, IoSession session)
Description copied from class:IoFilterAdapterFiltersIoHandler.sessionCreated(IoSession)event.- Specified by:
sessionCreatedin interfaceIoFilter- Overrides:
sessionCreatedin classIoFilterAdapter- Parameters:
nextFilter- theIoFilter.NextFilterfor this filter. You can reuse this object until this filter is removed from the chain.session- TheIoSessionwhich has received this event
-
sessionOpened
public void sessionOpened(IoFilter.NextFilter nextFilter, IoSession session) throws Exception
Description copied from class:IoFilterAdapterFiltersIoHandler.sessionOpened(IoSession)event.- Specified by:
sessionOpenedin interfaceIoFilter- Overrides:
sessionOpenedin classIoFilterAdapter- Parameters:
nextFilter- theIoFilter.NextFilterfor this filter. You can reuse this object until this filter is removed from the chain.session- TheIoSessionwhich has received this event- Throws:
Exception- If an error occurred while processing the event
-
sessionClosed
public void sessionClosed(IoFilter.NextFilter nextFilter, IoSession session) throws Exception
Description copied from class:IoFilterAdapterFiltersIoHandler.sessionClosed(IoSession)event.- Specified by:
sessionClosedin interfaceIoFilter- Overrides:
sessionClosedin classIoFilterAdapter- Parameters:
nextFilter- theIoFilter.NextFilterfor this filter. You can reuse this object until this filter is removed from the chain.session- TheIoSessionwhich has received this event- Throws:
Exception- If an error occurred while processing the event
-
sessionIdle
public void sessionIdle(IoFilter.NextFilter nextFilter, IoSession session, IdleStatus status) throws Exception
Description copied from class:IoFilterAdapterFiltersIoHandler.sessionIdle(IoSession,IdleStatus)event.- Specified by:
sessionIdlein interfaceIoFilter- Overrides:
sessionIdlein classIoFilterAdapter- Parameters:
nextFilter- theIoFilter.NextFilterfor this filter. You can reuse this object until this filter is removed from the chain.session- TheIoSessionwhich has received this eventstatus- TheIdleStatustype- Throws:
Exception- If an error occurred while processing the event
-
messageReceived
public void messageReceived(IoFilter.NextFilter nextFilter, IoSession session, Object message)
Description copied from class:IoFilterAdapterFiltersIoHandler.messageReceived(IoSession,Object)event.- Specified by:
messageReceivedin interfaceIoFilter- Overrides:
messageReceivedin classIoFilterAdapter- Parameters:
nextFilter- theIoFilter.NextFilterfor this filter. You can reuse this object until this filter is removed from the chain.session- TheIoSessionwhich has received this eventmessage- The received message
-
messageSent
public void messageSent(IoFilter.NextFilter nextFilter, IoSession session, WriteRequest writeRequest) throws Exception
Description copied from class:IoFilterAdapterFiltersIoHandler.messageSent(IoSession,Object)event.- Specified by:
messageSentin interfaceIoFilter- Overrides:
messageSentin classIoFilterAdapter- Parameters:
nextFilter- theIoFilter.NextFilterfor this filter. You can reuse this object until this filter is removed from the chain.session- TheIoSessionwhich has received this eventwriteRequest- TheWriteRequestthat contains the sent message- Throws:
Exception- If an error occurred while processing the event
-
-