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

  A `IoFilter` which 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 and Description
    `BlacklistFilter()`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `block(InetAddress address)` Blocks the specified endpoint.
    `void` | `block(Subnet subnet)` Blocks the specified subnet.
    `void` | `messageReceived(IoFilter.NextFilter nextFilter, IoSession session, Object message)` Filters `IoHandler.messageReceived(IoSession,Object)` event.
    `void` | `messageSent(IoFilter.NextFilter nextFilter, IoSession session, WriteRequest writeRequest)` Filters `IoHandler.messageSent(IoSession,Object)` event.
    `void` | `sessionClosed(IoFilter.NextFilter nextFilter, IoSession session)` Filters `IoHandler.sessionClosed(IoSession)` event.
    `void` | `sessionCreated(IoFilter.NextFilter nextFilter, IoSession session)` Filters `IoHandler.sessionCreated(IoSession)` event.
    `void` | `sessionIdle(IoFilter.NextFilter nextFilter, IoSession session, IdleStatus status)` Filters `IoHandler.sessionIdle(IoSession,IdleStatus)` event.
    `void` | `sessionOpened(IoFilter.NextFilter nextFilter, IoSession session)` Filters `IoHandler.sessionOpened(IoSession)` event.
    `void` | `setBlacklist(InetAddress[] addresses)` Sets the addresses to be blacklisted.
    `void` | `setBlacklist(Iterable<InetAddress> addresses)` Sets the addresses to be blacklisted.
    `void` | `setSubnetBlacklist(Iterable<Subnet> subnets)` Sets the subnets to be blacklisted.
    `void` | `setSubnetBlacklist(Subnet[] subnets)` Sets the subnets to be blacklisted.
    `void` | `unblock(InetAddress address)` Unblocks the specified endpoint.
    `void` | `unblock(Subnet subnet)` Unblocks the specified subnet.

    - ### Methods inherited from class org.apache.mina.core.filterchain.IoFilterAdapter

      `destroy, exceptionCaught, filterClose, filterWrite, init, onPostAdd, onPostRemove, onPreAdd, onPreRemove, toString`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

- - ### Constructor Detail

    - #### BlacklistFilter

          public BlacklistFilter()

  - ### 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-`InetAddress` objects.

    - #### 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.

    - #### block

          public void block(Subnet subnet)

      Blocks the specified subnet.

    - #### unblock

          public void unblock(InetAddress address)

      Unblocks the specified endpoint.

    - #### unblock

          public void unblock(Subnet subnet)

      Unblocks the specified subnet.

    - #### sessionCreated

          public void sessionCreated(IoFilter.NextFilter nextFilter,
                            IoSession session)

      Description copied from class: `IoFilterAdapter`
      Filters `IoHandler.sessionCreated(IoSession)` event.
      Specified by:
        `sessionCreated` in interface `IoFilter`
      Overrides:
        `sessionCreated` in class `IoFilterAdapter`

    - #### sessionOpened

          public void sessionOpened(IoFilter.NextFilter nextFilter,
                           IoSession session)
                             throws Exception

      Description copied from class: `IoFilterAdapter`
      Filters `IoHandler.sessionOpened(IoSession)` event.
      Specified by:
        `sessionOpened` in interface `IoFilter`
      Overrides:
        `sessionOpened` in class `IoFilterAdapter`
      Throws:
        `Exception`

    - #### sessionClosed

          public void sessionClosed(IoFilter.NextFilter nextFilter,
                           IoSession session)
                             throws Exception

      Description copied from class: `IoFilterAdapter`
      Filters `IoHandler.sessionClosed(IoSession)` event.
      Specified by:
        `sessionClosed` in interface `IoFilter`
      Overrides:
        `sessionClosed` in class `IoFilterAdapter`
      Throws:
        `Exception`

    - #### sessionIdle

          public void sessionIdle(IoFilter.NextFilter nextFilter,
                         IoSession session,
                         IdleStatus status)
                           throws Exception

      Description copied from class: `IoFilterAdapter`
      Filters `IoHandler.sessionIdle(IoSession,IdleStatus)` event.
      Specified by:
        `sessionIdle` in interface `IoFilter`
      Overrides:
        `sessionIdle` in class `IoFilterAdapter`
      Throws:
        `Exception`

    - #### messageReceived

          public void messageReceived(IoFilter.NextFilter nextFilter,
                             IoSession session,
                             Object message)

      Description copied from class: `IoFilterAdapter`
      Filters `IoHandler.messageReceived(IoSession,Object)` event.
      Specified by:
        `messageReceived` in interface `IoFilter`
      Overrides:
        `messageReceived` in class `IoFilterAdapter`

    - #### messageSent

          public void messageSent(IoFilter.NextFilter nextFilter,
                         IoSession session,
                         WriteRequest writeRequest)
                           throws Exception

      Description copied from class: `IoFilterAdapter`
      Filters `IoHandler.messageSent(IoSession,Object)` event.
      Specified by:
        `messageSent` in interface `IoFilter`
      Overrides:
        `messageSent` in class `IoFilterAdapter`
      Throws:
        `Exception`

Copyright © 2004-2012 Apache MINA Project. All Rights Reserved.